]> www.infradead.org Git - users/hch/xfstests-dev.git/commitdiff
btrfs/314: fix the failure when SELinux is enabled
authorDaniel Vacek <neelx@suse.com>
Mon, 24 Feb 2025 11:10:14 +0000 (12:10 +0100)
committerZorro Lang <zlang@kernel.org>
Thu, 6 Mar 2025 10:12:36 +0000 (18:12 +0800)
When SELinux is enabled this test fails unable to receive a file with
security label attribute:

    --- tests/btrfs/314.out
    +++ results//btrfs/314.out.bad
    @@ -17,5 +17,6 @@
     At subvol TEST_DIR/314/tempfsid_mnt/snap1
     Receive SCRATCH_MNT
     At subvol snap1
    +ERROR: lsetxattr foo security.selinux=unconfined_u:object_r:unlabeled_t:s0 failed: Operation not supported
     Send: 42d69d1a6d333a7ebdf64792a555e392  TEST_DIR/314/tempfsid_mnt/foo
    -Recv: 42d69d1a6d333a7ebdf64792a555e392  SCRATCH_MNT/snap1/foo
    +Recv: d41d8cd98f00b204e9800998ecf8427e  SCRATCH_MNT/snap1/foo
    ...

Setting the security label file attribute fails due to the default mount
option implied by fstests:

MOUNT_OPTIONS -- -o context=system_u:object_r:root_t:s0 /dev/sdb /mnt/scratch

See commit 3839d299 ("xfstests: mount xfs with a context when selinux is on")

fstests by default mount test and scratch devices with forced SELinux
context to get rid of the additional file attributes when SELinux is
enabled. When a test mounts additional devices from the pool, it may need
to honor this option to keep on par. Otherwise failures may be expected.

Moreover this test is perfectly fine labeling the files so let's just
disable the forced context for this one.

Signed-off-by: Daniel Vacek <neelx@suse.com>
Reviewed-by: Zorro Lang <zlang@redhat.com>
Reviewed-by: Anand Jain <anand.jain@oracle.com>
Signed-off-by: Zorro Lang <zlang@kernel.org>
tests/btrfs/314

index 76dccc41fe126509a91f21c7343ca85f4afaa861..d931da8f0293baa400a2cf3ef174bc676d7cff81 100755 (executable)
@@ -38,7 +38,7 @@ send_receive_tempfsid()
        # Use first 2 devices from the SCRATCH_DEV_POOL
        mkfs_clone ${SCRATCH_DEV} ${SCRATCH_DEV_NAME[1]}
        _scratch_mount
-       _mount ${SCRATCH_DEV_NAME[1]} ${tempfsid_mnt}
+       _mount $(_common_dev_mount_options) ${SCRATCH_DEV_NAME[1]} ${tempfsid_mnt}
 
        $XFS_IO_PROG -fc 'pwrite -S 0x61 0 9000' ${src}/foo | _filter_xfs_io
        _btrfs subvolume snapshot -r ${src} ${src}/snap1