ext4: do not try to grab the s_umount semaphore in ext4_quota_off
authorDmitry Monakhov <dmonakhov@openvz.org>
Mon, 8 Nov 2010 18:47:33 +0000 (13:47 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Mon, 8 Nov 2010 18:47:33 +0000 (13:47 -0500)
It's not needed to sync the filesystem, and it fixes a lock_dep complaint.

Signed-off-by: Dmitry Monakhov <dmonakhov@gmail.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Reviewed-by: Jan Kara <jack@suse.cz>
fs/ext4/super.c

index 45653af889532e9e49e4236392ad78049b66439b..ee91e29ddf95fe6be78ddaa917b1fb418ef9e9bb 100644 (file)
@@ -4570,12 +4570,10 @@ static int ext4_quota_on(struct super_block *sb, int type, int format_id,
 
 static int ext4_quota_off(struct super_block *sb, int type)
 {
-       /* Force all delayed allocation blocks to be allocated */
-       if (test_opt(sb, DELALLOC)) {
-               down_read(&sb->s_umount);
+       /* Force all delayed allocation blocks to be allocated.
+        * Caller already holds s_umount sem */
+       if (test_opt(sb, DELALLOC))
                sync_filesystem(sb);
-               up_read(&sb->s_umount);
-       }
 
        return dquot_quota_off(sb, type);
 }