aboutsummaryrefslogtreecommitdiff
path: root/fs/xfs/xfs_rtalloc.c
diff options
context:
space:
mode:
authorCarlos Maiolino <cem@kernel.org>2024-11-12 11:02:25 +0100
committerCarlos Maiolino <cem@kernel.org>2024-11-12 11:02:25 +0100
commit8ca118e17a61598fbb0183307593986efecbede3 (patch)
tree2d0ccd4bb380874e4fbd6e2b0b8c3b1c6b5cdf0a /fs/xfs/xfs_rtalloc.c
parent93c0f79edf1ce1197146f4d1b47fe66002443a04 (diff)
parentedc038f7f3860911d4fc2574e63cedfe56603f1b (diff)
downloadlinux-8ca118e17a61598fbb0183307593986efecbede3.tar.gz
linux-8ca118e17a61598fbb0183307593986efecbede3.tar.bz2
linux-8ca118e17a61598fbb0183307593986efecbede3.zip
Merge tag 'realtime-quotas-6.13_2024-11-05' of https://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux into staging-merge
xfs: enable quota for realtime volumes [v5.5 08/10] At some point, I realized that I've refactored enough of the quota code in XFS that I should evaluate whether or not quota actually works on realtime volumes. It turns out that it nearly works: the only broken pieces are chown and delayed allocation, and reporting of project quotas in the statvfs output for projinherit+rtinherit directories. Fix these things and we can have realtime quotas again after 20 years. With a bit of luck, this should all go splendidly. Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Diffstat (limited to 'fs/xfs/xfs_rtalloc.c')
-rw-r--r--fs/xfs/xfs_rtalloc.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/xfs/xfs_rtalloc.c b/fs/xfs/xfs_rtalloc.c
index 7ecea7623a15..0cb534d71119 100644
--- a/fs/xfs/xfs_rtalloc.c
+++ b/fs/xfs/xfs_rtalloc.c
@@ -1265,7 +1265,9 @@ xfs_growfs_rt(
/* Unsupported realtime features. */
error = -EOPNOTSUPP;
- if (xfs_has_rmapbt(mp) || xfs_has_reflink(mp) || xfs_has_quota(mp))
+ if (xfs_has_quota(mp) && !xfs_has_rtgroups(mp))
+ goto out_unlock;
+ if (xfs_has_rmapbt(mp) || xfs_has_reflink(mp))
goto out_unlock;
error = xfs_sb_validate_fsb_count(&mp->m_sb, in->newblocks);