From: Yu Watanabe Date: Wed, 19 Jan 2022 06:48:20 +0000 (+0900) Subject: test: wait for newly created btrfs triggered X-Git-Tag: v251-rc1~501 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=39f83dd7606730f65eb9831703a8ea3667682a85;p=thirdparty%2Fsystemd.git test: wait for newly created btrfs triggered Fixes the second issue in #21819. --- diff --git a/test/units/testsuite-64.sh b/test/units/testsuite-64.sh index f75382d90a6..9ee3699ea80 100755 --- a/test/units/testsuite-64.sh +++ b/test/units/testsuite-64.sh @@ -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"