On Thu, Mar 07, 2024 at 06:20:24PM +0530, Anand Jain wrote: > When a flakey device is configured, we have access to both the physical > device and the DM flaky device. Ensure that when the flakey device is > configured, the physical device mount fails. > > Signed-off-by: Anand Jain <anand.jain@xxxxxxxxxx> > --- > tests/btrfs/318 | 45 +++++++++++++++++++++++++++++++++++++++++++++ > tests/btrfs/318.out | 3 +++ > 2 files changed, 48 insertions(+) > create mode 100755 tests/btrfs/318 > create mode 100644 tests/btrfs/318.out > > diff --git a/tests/btrfs/318 b/tests/btrfs/318 > new file mode 100755 > index 000000000000..015950fbd93c > --- /dev/null > +++ b/tests/btrfs/318 > @@ -0,0 +1,45 @@ > +#! /bin/bash > +# SPDX-License-Identifier: GPL-2.0 > +# Copyright (c) 2024 Oracle. All Rights Reserved. > +# > +# FS QA Test 318 > +# > +# Create multiple device nodes with the same device try mount > +# > +. ./common/preamble > +_begin_fstest auto volume tempfsid > + > +# Override the default cleanup function. > +_cleanup() > +{ > + umount $extra_mnt &> /dev/null > + rm -rf $extra_mnt &> /dev/null > + _unmount_flakey > + _cleanup_flakey > + cd / > + rm -r -f $tmp.* > +} > + > +# Import common functions. > +. ./common/filter > +. ./common/dmflakey > + > +# real QA test starts here > +_supported_fs btrfs BTW, what cause it have to be a btrfs specific test case? I didn't any btrfs specific operations below, can you explain the reason? Thanks, Zorro > +_require_scratch > +_require_dm_target flakey > + > +_scratch_mkfs >> $seqres.full > +_init_flakey > + > +_mount_flakey > +extra_mnt=$TEST_DIR/extra_mnt > +rm -rf $extra_mnt > +mkdir -p $extra_mnt > +_mount $SCRATCH_DEV $extra_mnt 2>&1 | _filter_testdir_and_scratch > + > +_flakey_drop_and_remount > + > +# success, all done > +status=0 > +exit > diff --git a/tests/btrfs/318.out b/tests/btrfs/318.out > new file mode 100644 > index 000000000000..5cdbea8c4b2a > --- /dev/null > +++ b/tests/btrfs/318.out > @@ -0,0 +1,3 @@ > +QA output created by 318 > +mount: TEST_DIR/extra_mnt: wrong fs type, bad option, bad superblock on SCRATCH_DEV, missing codepage or helper program, or other error. > + dmesg(1) may have more information after failed mount system call. > -- > 2.39.3 > >