Files
apfstests/tests/xfs/220
T
Darrick J. Wong 89985c90ea misc: force the exact quota options coded into the test
Several tests require setting exactly the quota mount options that are
encoded in the test.  Unfortunately, quota mount options set by the user
in MOUNT_OPTIONS can turn on other quota types, which causes the golden
outputs to be off for various reasons (quota report output, behavior
changes, etc.)

So use _qmount_option to delete all the quota mount options in these
tests so that the test itself can run with exactly the config for which
it was written.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Eryu Guan <guaneryu@gmail.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
2018-11-05 00:42:49 +08:00

71 lines
1.4 KiB
Bash
Executable File

#! /bin/bash
# SPDX-License-Identifier: GPL-2.0
# Copyright (c) 2009 Christoph Hellwig. All Rights Reserved.
#
# FS QA Test No. 220
#
# Test quota off handling.
#
# Based on bug reports from Utako Kusaka <u-kusaka@wm.jp.nec.com> and
# Ryota Yamauchi <r-yamauchi@vf.jp.nec.com>.
#
seq=`basename $0`
seqres=$RESULT_DIR/$seq
echo "QA output created by $seq"
here=`pwd`
tmp=/tmp/$$
status=1 # failure is the default!
_cleanup()
{
cd /
_scratch_unmount >/dev/null 2>&1
}
trap "_cleanup; exit \$status" 0 1 2 3 15
# get standard environment, filters and checks
. ./common/rc
. ./common/filter
. ./common/quota
# real QA test starts here
_supported_fs xfs
_supported_os Linux
_require_scratch
_require_quota
# Only mount with the specific quota options mentioned below
_qmount_option "defaults"
echo "Silence is golden."
# create scratch filesystem
_scratch_mkfs_xfs >/dev/null 2>&1
# mount with quotas enabled
_scratch_mount -o uquota
# turn off quota
xfs_quota -x -c off $SCRATCH_DEV
# and unmount (this used to crash)
_scratch_unmount
# create scratch filesystem
_scratch_mkfs_xfs >/dev/null 2>&1
# mount with quotas enabled
_scratch_mount -o uquota
# turn off quota and remove space allocated to the quota files
# (this used to give wrong ENOSYS returns in 2.6.31)
xfs_quota -x -c off -c remove $SCRATCH_DEV
# and unmount again
_scratch_unmount
status=0
exit $status