Commit d86c390ffbf5746df9a3cc2c5f7b75d27704580f

Authored by Jan Kara
Committed by Linus Torvalds
1 parent 9223214e8d

[PATCH] reiserfs+acl+quota deadlock fix

When i_acl_default is set to some error we do not hold the lock (hence we
are not allowed to drop it and reacquire later).

Signed-off-by: Jan Kara <jack@suse.cz>
Cc: Jeff Mahoney <jeffm@suse.com>
Cc: Chris Mason <mason@suse.com>
Cc: <reiserfs-dev@namesys.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

Showing 1 changed file with 1 additions and 1 deletions Side-by-side Diff

... ... @@ -1985,7 +1985,7 @@
1985 1985 * iput doesn't deadlock in reiserfs_delete_xattrs. The locking
1986 1986 * code really needs to be reworked, but this will take care of it
1987 1987 * for now. -jeffm */
1988   - if (REISERFS_I(dir)->i_acl_default) {
  1988 + if (REISERFS_I(dir)->i_acl_default && !IS_ERR(REISERFS_I(dir)->i_acl_default)) {
1989 1989 reiserfs_write_unlock_xattrs(dir->i_sb);
1990 1990 iput(inode);
1991 1991 reiserfs_write_lock_xattrs(dir->i_sb);