diff mbox series

common/quota: filter out option projquota in _qmount_option for ocfs2

Message ID 20250106140124.91928-1-glass.su@suse.com (mailing list archive)
State New
Headers show
Series common/quota: filter out option projquota in _qmount_option for ocfs2 | expand

Commit Message

Glass Su Jan. 6, 2025, 2:01 p.m. UTC
ocfs2 doesn't support projquota but does support usrquota an grpquota.
For now, two tests generic/594 and generic/603 are for testing
usrquota,grpquota and projquota. The mount option 'projquota' causes
failure of ocfs2 mount.

To make things simple, just skip the tests for ocfs2.
However, we can't just put '_require_prjquota $SCRATCH_DEV' before
_qmount because f2fs and xfs need runtime after mount of SCRATCH_DEV.

For ocfs2, filter out option 'projquota' in _qmount_option() to make
_qmount successful. Then in _require_prjquota(), ocfs2 will fallthrough
as a no kernel projquota support fs type.

Signed-off-by: Su Yue <glass.su@suse.com>
---
 common/quota | 3 +++
 1 file changed, 3 insertions(+)

Comments

David Disseldorp Jan. 6, 2025, 5:47 p.m. UTC | #1
On Mon,  6 Jan 2025 22:01:24 +0800, Su Yue wrote:

> ocfs2 doesn't support projquota but does support usrquota an grpquota.
> For now, two tests generic/594 and generic/603 are for testing
> usrquota,grpquota and projquota. The mount option 'projquota' causes
> failure of ocfs2 mount.
> 
> To make things simple, just skip the tests for ocfs2.
> However, we can't just put '_require_prjquota $SCRATCH_DEV' before
> _qmount because f2fs and xfs need runtime after mount of SCRATCH_DEV.

All _require_prjquota callers provide a $SCRATCH_DEV parameter, so
changing the order and mkfsing / mounting to check support for f2fs and
xfs should be an option. Still, this approach looks reasonable too:

Reviewed-by: David Disseldorp <ddiss@suse.de>
diff mbox series

Patch

diff --git a/common/quota b/common/quota
index 8135b7c044bf..8688116c6547 100644
--- a/common/quota
+++ b/common/quota
@@ -325,6 +325,9 @@  _qmount_option()
 		OPTS=`echo $OPTS \
 		| sed	-e 's/\bpquota/quota/g'	\
 			-e 's/prjquota/quota/g'`
+	# ocfs2 doesn't support "-o projquota"
+	elif [[ "$FSTYP" == ocfs2 ]]; then
+		OPTS=`echo $OPTS | sed -e 's/prjquota//g'`
 	fi
 	# Ensure we have the given quota option - duplicates are fine
 	if [ -n "$OPTS" ]; then