2 # SPDX-License-Identifier: LGPL-2.1-or-later
8 function check_validity
() {
11 for f
in /run
/udev
/watch
/*; do
12 ID_OR_HANDLE
="$(readlink "$f")"
13 test -L "/run/udev/watch/${ID_OR_HANDLE}"
14 test "$(readlink "/run
/udev
/watch
/${ID_OR_HANDLE}")" = "$(basename "$f")"
21 for ((i
=0;i
<2;i
++)); do
22 systemctl restart systemd-udevd.service
23 udevadm control
--ping
27 for ((j
=0;j
<2;j
++)); do
28 udevadm trigger
-w --action add
--subsystem-match=block
32 for ((j
=0;j
<2;j
++)); do
33 udevadm trigger
-w --action change
--subsystem-match=block
39 mkdir
-p /run
/udev
/rules.d
/
41 cat >/run
/udev
/rules.d
/00-debug.rules
<<EOF
42 SUBSYSTEM=="block", KERNEL=="sda*", OPTIONS="log_level=debug"
45 cat >/run
/udev
/rules.d
/50-testsuite.rules
<<EOF
46 ACTION=="add", SUBSYSTEM=="block", KERNEL=="sda", OPTIONS:="watch"
51 MAJOR
=$
(udevadm info
/dev
/sda |
grep -e '^E: MAJOR=' |
sed -e 's/^E: MAJOR=//')
52 MINOR
=$
(udevadm info
/dev
/sda |
grep -e '^E: MINOR=' |
sed -e 's/^E: MINOR=//')
53 test -L "/run/udev/watch/b${MAJOR}:${MINOR}"
55 cat >/run
/udev
/rules.d
/50-testsuite.rules
<<EOF
56 ACTION=="change", SUBSYSTEM=="block", KERNEL=="sda", OPTIONS:="nowatch"
61 MAJOR
=$
(udevadm info
/dev
/sda |
grep -e '^E: MAJOR=' |
sed -e 's/^E: MAJOR=//')
62 MINOR
=$
(udevadm info
/dev
/sda |
grep -e '^E: MINOR=' |
sed -e 's/^E: MINOR=//')
63 test ! -e "/run/udev/watch/b${MAJOR}:${MINOR}"
65 rm /run
/udev
/rules.d
/00-debug.rules
66 rm /run
/udev
/rules.d
/50-testsuite.rules
68 udevadm control
--reload