Re: [PATCH 1/2] btrfs/131: test for umount of read-only fs when quota rescan is paused
From: Jeff Mahoney <hidden>
Date: 2016-08-19 19:34:14
Also in:
fstests
On 8/17/16 4:45 AM, Eryu Guan wrote:
On Tue, Aug 16, 2016 at 02:30:21PM -0400, Jeff Mahoney wrote:quoted
+_require_btrfs +BTRFS_DEBUG_TREE_PROG="`set_prog_path btrfs-debug-tree`" +_require_command "$BTRFS_DEBUG_TREE_PROG" btrfs-debug-tree +TIMEOUT_PROG="`set_prog_path timeout`" +_require_command "$TIMEOUT_PROG" timeoutThe "set_prog_path" calls belong to common/config, we only need "_require_command" calls in test.
Ok, then we should probably fix up the existing cases that do this in tests/ since this and the cp /lib/modules thing were copied from other test cases in the repo.
quoted
+ +rm -f $seqres.full +_scratch_mkfs >>$seqres.full 2>&1 + +_scratch_mount +cp -aR /lib/modules/$(uname -r) $SCRATCH_MNTConsider populating the filesystem using _populate_fs or fsstress?
Same.
quoted
+ +# A qgroup rescan on an empty or small file system completes nearly +# immediately. We need to ensure that it runs long enough that it will +# be paused on umount. Snapshots slow down the rescan so we should see +# the race without a lot of data. This is an arbitrary number that +# works on a ramdisk so it should be sufficient for any storage. +for n in $(seq 1 100); do + _run_btrfs_util_prog subvolume snapshot $SCRATCH_MNT $SCRATCH_MNT/$nUse tab for indention.
Ok.
quoted
+done +_run_btrfs_util_prog quota enable $SCRATCH_MNT +_scratch_unmount + +echo "read-write umount completed" + +# Confirm that the rescan is paused +if ! $BTRFS_DEBUG_TREE_PROG $SCRATCH_DEV | \ + egrep -q 'flags ON|SCANNING|INCONSISTENT scan'; then + echo "qgroup rescan not paused." +fi +_scratch_mount -r + +# If the bug exists, this will hang. If we can kill it, that's another bug. +$TIMEOUT_PROG 10 umount $SCRATCH_MNT +if test $? -eq 124 ; then + echo "umount hung but was killed"I see this log with 4.8-rc1 kernel, is that expected?
Yes, the patch was posted this week and hasn't landed yet. Thanks, -Jeff -- Jeff Mahoney SUSE Labs
Attachments
- signature.asc [application/pgp-signature] 881 bytes