diff mbox

generic/38[3-6]: require project quota to be enabled on SCRATCH_DEV

Message ID 1478976065-2060-1-git-send-email-eguan@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Eryu Guan Nov. 12, 2016, 6:41 p.m. UTC
generic/38[3-6] are made generic from xfs tests to test project
quota on other filesystems, e.g. ext4. But we should make sure
project quota is enabled in between of _scratch_enable_pquota and
_qmount. Otherwise mount will fail if there's no project quota
support on SCRATCH_DEV, e.g. ext2 and ext3.

Signed-off-by: Eryu Guan <eguan@redhat.com>
---
 tests/generic/383 | 1 +
 tests/generic/384 | 2 +-
 tests/generic/385 | 2 +-
 tests/generic/386 | 2 +-
 4 files changed, 4 insertions(+), 3 deletions(-)

Comments

Dave Chinner Nov. 13, 2016, 11:15 p.m. UTC | #1
On Sun, Nov 13, 2016 at 02:41:05AM +0800, Eryu Guan wrote:
> generic/38[3-6] are made generic from xfs tests to test project
> quota on other filesystems, e.g. ext4. But we should make sure
> project quota is enabled in between of _scratch_enable_pquota and
> _qmount. Otherwise mount will fail if there's no project quota
> support on SCRATCH_DEV, e.g. ext2 and ext3.
> 
> Signed-off-by: Eryu Guan <eguan@redhat.com>

looks fine.

Reviewed-by: Dave Chinner <dchinner@redhat.com>
Eric Sandeen Dec. 13, 2016, 11:41 p.m. UTC | #2
On 11/12/16 12:41 PM, Eryu Guan wrote:
> generic/38[3-6] are made generic from xfs tests to test project
> quota on other filesystems, e.g. ext4. But we should make sure
> project quota is enabled in between of _scratch_enable_pquota and
> _qmount. Otherwise mount will fail if there's no project quota
> support on SCRATCH_DEV, e.g. ext2 and ext3.
> 
> Signed-off-by: Eryu Guan <eguan@redhat.com>
> ---
>  tests/generic/383 | 1 +
>  tests/generic/384 | 2 +-
>  tests/generic/385 | 2 +-
>  tests/generic/386 | 2 +-
>  4 files changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/tests/generic/383 b/tests/generic/383
> index be5b19b..93836ea 100755
> --- a/tests/generic/383
> +++ b/tests/generic/383
> @@ -54,6 +54,7 @@ _require_xfs_quota_foreign
>  
>  _scratch_mkfs >/dev/null 2>&1
>  _scratch_enable_pquota
> +_require_prjquota $SCRATCH_DEV
>  
>  do_project_test()
>  {
> diff --git a/tests/generic/384 b/tests/generic/384
> index 452d26e..4784e47 100755
> --- a/tests/generic/384
> +++ b/tests/generic/384
> @@ -73,10 +73,10 @@ chmod a+rwx $seqres.full	# arbitrary users will write here
>  _require_scratch
>  _scratch_mkfs >/dev/null 2>&1
>  _scratch_enable_pquota
> +_require_prjquota $SCRATCH_DEV
>  
>  _qmount_option "prjquota"
>  _qmount
> -_require_prjquota $SCRATCH_DEV

This commit seems to break things, on ext4 as well as on xfs.
(Bill ran into this)

how can _require_projquota, which uses src/feature to call a quotactl,
operate before the filesystem is mounted:

# ./check  generic/384
FSTYP         -- xfs (non-debug)
PLATFORM      -- Linux/x86_64 bp-05 4.9.0-rc1+
MKFS_OPTIONS  -- -f -bsize=4096 /dev/sdb2
MOUNT_OPTIONS -- -o context=system_u:object_r:nfs_t:s0 /dev/sdb2 /mnt/scratch

generic/384	 [not run] Installed kernel does not support project quotas


did this work for you?

-Eric

--
To unsubscribe from this list: send the line "unsubscribe fstests" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/tests/generic/383 b/tests/generic/383
index be5b19b..93836ea 100755
--- a/tests/generic/383
+++ b/tests/generic/383
@@ -54,6 +54,7 @@  _require_xfs_quota_foreign
 
 _scratch_mkfs >/dev/null 2>&1
 _scratch_enable_pquota
+_require_prjquota $SCRATCH_DEV
 
 do_project_test()
 {
diff --git a/tests/generic/384 b/tests/generic/384
index 452d26e..4784e47 100755
--- a/tests/generic/384
+++ b/tests/generic/384
@@ -73,10 +73,10 @@  chmod a+rwx $seqres.full	# arbitrary users will write here
 _require_scratch
 _scratch_mkfs >/dev/null 2>&1
 _scratch_enable_pquota
+_require_prjquota $SCRATCH_DEV
 
 _qmount_option "prjquota"
 _qmount
-_require_prjquota $SCRATCH_DEV
 
 report_quota()
 {
diff --git a/tests/generic/385 b/tests/generic/385
index f07ae5d..b7c5bd3 100755
--- a/tests/generic/385
+++ b/tests/generic/385
@@ -71,9 +71,9 @@  quota_cmd="$XFS_QUOTA_PROG -D $tmp.projects -P $tmp.projid"
 
 _scratch_mkfs >/dev/null 2>&1
 _scratch_enable_pquota
+_require_prjquota $SCRATCH_DEV
 _qmount_option "prjquota"
 _qmount
-_require_prjquota $SCRATCH_DEV
 
 #
 # Create the project root
diff --git a/tests/generic/386 b/tests/generic/386
index 3aede60..0ceb14d 100755
--- a/tests/generic/386
+++ b/tests/generic/386
@@ -127,10 +127,10 @@  echo $proj_num:$proj_dir > "$my_projects"
 
 _scratch_mkfs					>> "$seqres.full" 2>&1
 _scratch_enable_pquota
+_require_prjquota $SCRATCH_DEV
 
 _qmount_option "prjquota"
 _qmount
-_require_prjquota $SCRATCH_DEV
 
 mkdir -p "${proj_dir}"