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 +_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