[PATCH blktests v2] dm/002: avoid device access by udev at dmsetup remove

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The test case dm/002 rarely fails with the message below:

dm/002 => nvme0n1 (dm-dust general functionality test)       [failed]
    runtime  0.204s  ...  0.174s
    --- tests/dm/002.out        2024-06-14 14:37:40.480794693 +0900
    +++ /home/shin/Blktests/blktests/results/nvme0n1/dm/002.out.bad     2024-06-14 21:38:18.588976499 +0900
    @@ -7,4 +7,6 @@
     countbadblocks: 0 badblock(s) found
     countbadblocks: 3 badblock(s) found
     countbadblocks: 0 badblock(s) found
    +device-mapper: remove ioctl on dust1  failed: Device or resource busy
    +Command failed.
     Test complete
modprobe: FATAL: Module dm_dust is in use.

This failure happens when udev opens the dm device at "dmsetup remove"
command. To avoid the failure, call "udevadm settle" before the "dmsetup
remove" command.

Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@xxxxxxx>
---
This patch addresses a failure found during the debug work for another
dm/002 failure [1]. Per discussion on v1 patch [2], do "udevadm settle"
instead of retrying "dmsetup remove".

[1] https://lore.kernel.org/linux-block/42ecobcsduvlqh77iavjj2p3ewdh7u4opdz4xruauz4u5ddljz@yr7ye4fq72tr/
[2] https://lore.kernel.org/linux-block/o5wik4yvo2teffpjlwycbaek6znrtde5kml3hkof5r2w5rxttj@bhokt2ksdcbj/

 tests/dm/002 | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tests/dm/002 b/tests/dm/002
index fae3986..afa174a 100755
--- a/tests/dm/002
+++ b/tests/dm/002
@@ -37,6 +37,7 @@ test_device() {
 	sync
 	dmsetup message dust1 0 countbadblocks
 	sync
+	udevadm settle
 	dmsetup remove dust1
 
 	echo "Test complete"
-- 
2.45.2





[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux