mirror of
https://github.com/systemd/systemd-stable.git
synced 2025-03-06 12:58:22 +03:00
test: wait for loop device to be removed
Follow-up for bca762ce1abafd24016eba7310fdd38c758419f8. Fixes #24450. (cherry picked from commit 1a0e065e9f154f46fd68cd45f46310bc7df7a51c)
This commit is contained in:
parent
f5c2be99bc
commit
9243b88b55
@ -187,6 +187,7 @@ if [ "${HAVE_OPENSSL}" -eq 1 ]; then
|
||||
sfdisk --part-label "${image}.gpt" 3 "Signature Partition"
|
||||
fi
|
||||
loop="$(losetup --show -P -f "${image}.gpt")"
|
||||
# kernel sometimes(?) does not emit add uevent for partitions, let's wait for the whole block device.
|
||||
udevadm wait --timeout 60 --settle "${loop:?}"
|
||||
dd if="${image}.raw" of="${loop}p1"
|
||||
dd if="${image}.verity" of="${loop}p2"
|
||||
@ -194,6 +195,11 @@ if [ "${HAVE_OPENSSL}" -eq 1 ]; then
|
||||
dd if="${image}.verity-sig" of="${loop}p3"
|
||||
fi
|
||||
losetup -d "${loop}"
|
||||
# Interestingly, kernel does not emit remove uevent for the whole block device, but does for partitions.
|
||||
udevadm wait --timeout 60 --settle --removed "${loop}p1" "${loop}p2"
|
||||
if [ "${HAVE_OPENSSL}" -eq 1 ]; then
|
||||
udevadm wait --timeout 60 --settle --removed "${loop}p3"
|
||||
fi
|
||||
|
||||
# Derive partition UUIDs from root hash, in UUID syntax
|
||||
ROOT_UUID="$(systemd-id128 -u show "$(head -c 32 "${image}.roothash")" -u | tail -n 1 | cut -b 6-)"
|
||||
|
Loading…
x
Reference in New Issue
Block a user