diff options
author | Christoph Hellwig <hch@infradead.org> | 2010-02-16 03:44:53 -0500 |
---|---|---|
committer | Jan Kara <jack@suse.cz> | 2010-03-05 00:20:24 +0100 |
commit | a56fca23f67282467c08e75c40081da2345dfdbf (patch) | |
tree | 73d50c7b2be8c1435fbaa915fa4bf882824a51a7 /fs/quota/quota.c | |
parent | 5fb324ad24febe57a8a2e62903dcb7bad546ea71 (diff) | |
download | op-kernel-dev-a56fca23f67282467c08e75c40081da2345dfdbf.zip op-kernel-dev-a56fca23f67282467c08e75c40081da2345dfdbf.tar.gz |
quota: remove invalid optimization from quota_sync_all
Checking the "VFS" quota enabled and dirty bits from generic code means
this code will never get called for other implementations, e.g. XFS and
GFS2. Grabbing the reference on the superblock really isn't much overhead
for a global Q_SYNC call, so just drop this optimization.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/quota/quota.c')
-rw-r--r-- | fs/quota/quota.c | 15 |
1 files changed, 0 insertions, 15 deletions
diff --git a/fs/quota/quota.c b/fs/quota/quota.c index 0593b22..a43bb2c 100644 --- a/fs/quota/quota.c +++ b/fs/quota/quota.c @@ -51,7 +51,6 @@ static int check_quotactl_permission(struct super_block *sb, int type, int cmd, static int quota_sync_all(int type) { struct super_block *sb; - int cnt; int ret; if (type >= MAXQUOTAS) @@ -66,20 +65,6 @@ restart: if (!sb->s_qcop || !sb->s_qcop->quota_sync) continue; - /* This test just improves performance so it needn't be - * reliable... */ - for (cnt = 0; cnt < MAXQUOTAS; cnt++) { - if (type != -1 && type != cnt) - continue; - if (!sb_has_quota_active(sb, cnt)) - continue; - if (!info_dirty(&sb_dqopt(sb)->info[cnt]) && - list_empty(&sb_dqopt(sb)->info[cnt].dqi_dirty_list)) - continue; - break; - } - if (cnt == MAXQUOTAS) - continue; sb->s_count++; spin_unlock(&sb_lock); down_read(&sb->s_umount); |