]> git.karo-electronics.de Git - karo-tx-linux.git/commit
reiserfs: don't acquire lock recursively in reiserfs_acl_chmod
authorFrederic Weisbecker <fweisbec@gmail.com>
Thu, 2 Dec 2010 22:31:16 +0000 (14:31 -0800)
committerAndi Kleen <ak@linux.intel.com>
Tue, 14 Dec 2010 22:40:04 +0000 (23:40 +0100)
commite2d60d3b1a2aa3614fd385d81e90175cce0a3cbe
tree1923efdf00b118b7968a0dcbba4c52fa4e2c4b29
parent0dbd161b08707ffddfdc2cd64ab762fef72311c9
reiserfs: don't acquire lock recursively in reiserfs_acl_chmod

commit 238af8751f64a75f8b638193353b1c31ea32e738 upstream.

reiserfs_acl_chmod() can be called by reiserfs_set_attr() and then take
the reiserfs lock a second time.  Thereafter it may call journal_begin()
that definitely requires the lock not to be nested in order to release
it before taking the journal mutex because the reiserfs lock depends on
the journal mutex already.

So, aviod nesting the lock in reiserfs_acl_chmod().

Reported-by: Pawel Zawora <pzawora@gmail.com>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Tested-by: Pawel Zawora <pzawora@gmail.com>
Cc: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
fs/reiserfs/xattr_acl.c