| #! /bin/bash |
| # SPDX-License-Identifier: GPL-2.0 |
| # Copyright (C) 2014 Fujitsu. All rights reserved. |
| # |
| # FSQA Test No. btrfs/057 |
| # |
| # Quota rescan stress test, we run fsstress and quota rescan concurrently |
| # |
| seq=`basename $0` |
| seqres=$RESULT_DIR/$seq |
| echo "QA output created by $seq" |
| |
| here=`pwd` |
| tmp=/tmp/$$ |
| status=1 |
| |
| _cleanup() |
| { |
| cd / |
| rm -f $tmp.* |
| } |
| trap "_cleanup; exit \$status" 0 1 2 3 15 |
| |
| # get standard environment, filters and checks |
| . ./common/rc |
| . ./common/filter |
| |
| # real QA test starts here |
| _supported_fs btrfs |
| _require_scratch |
| |
| rm -f $seqres.full |
| |
| run_check _scratch_mkfs "-b 1g" |
| |
| _scratch_mount |
| |
| # -w ensures that the only ops are ones which cause write I/O |
| run_check $FSSTRESS_PROG -d $SCRATCH_MNT -w -p 5 -n 1000 \ |
| $FSSTRESS_AVOID >&/dev/null |
| |
| _run_btrfs_util_prog subvolume snapshot $SCRATCH_MNT \ |
| $SCRATCH_MNT/snap1 |
| |
| run_check $FSSTRESS_PROG -d $SCRATCH_MNT/snap1 -w -p 5 -n 1000 \ |
| $FSSTRESS_AVOID >&/dev/null |
| |
| _run_btrfs_util_prog quota enable $SCRATCH_MNT |
| _run_btrfs_util_prog quota rescan -w $SCRATCH_MNT |
| |
| echo "Silence is golden" |
| # btrfs check will detect any qgroup number mismatch. |
| |
| status=0 |
| exit |