aboutsummaryrefslogtreecommitdiffstats
path: root/fs/reiserfs/super.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@infradead.org>2010-05-19 07:16:42 -0400
committerJan Kara <jack@suse.cz>2010-05-24 08:09:12 -0400
commite0ccfd959cd8907bcb66cc2042e0f4fd7fcbff2b (patch)
treea62a84034243e75e07bb063526e10ea0b837062f /fs/reiserfs/super.c
parent0f0dd62fddcbd0f6830ed8ef3d3426ccc46b9250 (diff)
quota: move unmount handling into the filesystem
Currently the VFS calls into the quotactl interface for unmounting filesystems. This means filesystems with their own quota handling can't easily distinguish between user-space originating quotaoff and an unount. Instead move the responsibily of the unmount handling into the filesystem to be consistent with all other dquot handling. Note that we do call dquot_disable a lot later now, e.g. after a sync_filesystem. But this is fine as the quota code does all its writes via blockdev's mapping and that is synced even later. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/reiserfs/super.c')
-rw-r--r--fs/reiserfs/super.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/reiserfs/super.c b/fs/reiserfs/super.c
index 5dad5a2707bc..08879af0af0d 100644
--- a/fs/reiserfs/super.c
+++ b/fs/reiserfs/super.c
@@ -466,6 +466,8 @@ static void reiserfs_put_super(struct super_block *s)
466 struct reiserfs_transaction_handle th; 466 struct reiserfs_transaction_handle th;
467 th.t_trans_id = 0; 467 th.t_trans_id = 0;
468 468
469 dquot_disable(s, -1, DQUOT_USAGE_ENABLED | DQUOT_LIMITS_ENABLED);
470
469 reiserfs_write_lock(s); 471 reiserfs_write_lock(s);
470 472
471 if (s->s_dirt) 473 if (s->s_dirt)