diff options
author | Donald Douwsma <donaldd@sgi.com> | 2007-05-07 23:49:09 -0400 |
---|---|---|
committer | Tim Shimmin <tes@sgi.com> | 2007-05-07 23:49:09 -0400 |
commit | 646d5bdab38c88f4b9088d4e517986a3f3b0edb9 (patch) | |
tree | a04479394ed446f94ffc7e712205d8c76f686a57 /fs/xfs/quota | |
parent | e7a23a9b37c395a153a541d4c50e166eef6abe49 (diff) |
[XFS] Invalidate quotacheck when mounting without a quota type.
When quotas are mounted or remounted without a particular quota type the
quota accounting for that type becomes invalid. Previously we were
ignoring this leading to accounting errors.
SGI-PV: 961964
SGI-Modid: xfs-linux-melb:xfs-kern:28225a
Signed-off-by: Donald Douwsma <donaldd@sgi.com>
Signed-off-by: Utako Kusaka <utako@tnes.nec.co.jp>
Signed-off-by: Vlad Apostolov <vapo@sgi.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>
Diffstat (limited to 'fs/xfs/quota')
-rw-r--r-- | fs/xfs/quota/xfs_qm.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/fs/xfs/quota/xfs_qm.c b/fs/xfs/quota/xfs_qm.c index 762af2d1b50f..3e4a8ad8a34c 100644 --- a/fs/xfs/quota/xfs_qm.c +++ b/fs/xfs/quota/xfs_qm.c | |||
@@ -388,6 +388,17 @@ xfs_qm_mount_quotas( | |||
388 | return XFS_ERROR(error); | 388 | return XFS_ERROR(error); |
389 | } | 389 | } |
390 | } | 390 | } |
391 | /* | ||
392 | * If one type of quotas is off, then it will lose its | ||
393 | * quotachecked status, since we won't be doing accounting for | ||
394 | * that type anymore. | ||
395 | */ | ||
396 | if (!XFS_IS_UQUOTA_ON(mp)) { | ||
397 | mp->m_qflags &= ~XFS_UQUOTA_CHKD; | ||
398 | } | ||
399 | if (!(XFS_IS_GQUOTA_ON(mp) || XFS_IS_PQUOTA_ON(mp))) { | ||
400 | mp->m_qflags &= ~XFS_OQUOTA_CHKD; | ||
401 | } | ||
391 | 402 | ||
392 | write_changes: | 403 | write_changes: |
393 | /* | 404 | /* |