test: wait for newly created btrfs triggered

Fixes the second issue in #21819.
This commit is contained in:
Yu Watanabe
2022-01-19 15:48:20 +09:00
committed by Frantisek Sumsal
parent 01f5177ffd
commit 39f83dd760

View File

@@ -390,6 +390,10 @@ testcase_btrfs_basic() {
uuid="deadbeef-dead-dead-beef-000000000000"
label="btrfs_root"
mkfs.btrfs -L "$label" -U "$uuid" "${devices[0]}"
# We need to do some active waiting anyway, as it may take kernel a bit
# to trigger the newly created btrfs
helper_wait_for_dev "/dev/disk/by-uuid/$uuid"
helper_wait_for_dev "/dev/disk/by-label/$label"
udevadm settle
btrfs filesystem show
test -e "/dev/disk/by-uuid/$uuid"
@@ -409,6 +413,8 @@ name="diskpart4", size=85M
EOF
udevadm settle
mkfs.btrfs -d single -m raid1 -L "$label" -U "$uuid" /dev/disk/by-partlabel/diskpart{1..4}
helper_wait_for_dev "/dev/disk/by-uuid/$uuid"
helper_wait_for_dev "/dev/disk/by-label/$label"
udevadm settle
btrfs filesystem show
test -e "/dev/disk/by-uuid/$uuid"
@@ -420,6 +426,8 @@ EOF
uuid="deadbeef-dead-dead-beef-000000000002"
label="btrfs_mdisk"
mkfs.btrfs -M -d raid10 -m raid10 -L "$label" -U "$uuid" "${devices[@]}"
helper_wait_for_dev "/dev/disk/by-uuid/$uuid"
helper_wait_for_dev "/dev/disk/by-label/$label"
udevadm settle
btrfs filesystem show
test -e "/dev/disk/by-uuid/$uuid"
@@ -457,6 +465,8 @@ EOF
ls -l /dev/mapper/encbtrfs{0..3}
# Create a multi-device btrfs filesystem on the LUKS devices
mkfs.btrfs -M -d raid1 -m raid1 -L "$label" -U "$uuid" /dev/mapper/encbtrfs{0..3}
helper_wait_for_dev "/dev/disk/by-uuid/$uuid"
helper_wait_for_dev "/dev/disk/by-label/$label"
udevadm settle
btrfs filesystem show
test -e "/dev/disk/by-uuid/$uuid"
@@ -483,6 +493,8 @@ EOF
# Start the corresponding mount unit and check if the btrfs device was reconstructed
# correctly
systemctl start "${mpoint##*/}.mount"
helper_wait_for_dev "/dev/disk/by-uuid/$uuid"
helper_wait_for_dev "/dev/disk/by-label/$label"
btrfs filesystem show
test -e "/dev/disk/by-uuid/$uuid"
test -e "/dev/disk/by-label/$label"