diff options
Diffstat (limited to 'meta/recipes-core/systemd/systemd/0012-rules-watch-metadata-changes-in-ide-devices.patch')
-rw-r--r-- | meta/recipes-core/systemd/systemd/0012-rules-watch-metadata-changes-in-ide-devices.patch | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/meta/recipes-core/systemd/systemd/0012-rules-watch-metadata-changes-in-ide-devices.patch b/meta/recipes-core/systemd/systemd/0012-rules-watch-metadata-changes-in-ide-devices.patch new file mode 100644 index 0000000000..720786371c --- /dev/null +++ b/meta/recipes-core/systemd/systemd/0012-rules-watch-metadata-changes-in-ide-devices.patch | |||
@@ -0,0 +1,43 @@ | |||
1 | From 406a4c8692316e8c7e14c78f9a802689be304a95 Mon Sep 17 00:00:00 2001 | ||
2 | From: Hongxu Jia <hongxu.jia@windriver.com> | ||
3 | Date: Fri, 17 Nov 2017 09:46:00 +0800 | ||
4 | Subject: [PATCH 12/31] rules: watch metadata changes in ide devices | ||
5 | |||
6 | Formatting IDE storage does not trigger "change" uevents. As a result | ||
7 | clients using udev API don't get any updates afterwards and get outdated | ||
8 | information about the device. | ||
9 | ... | ||
10 | root@qemux86-64:~# mkfs.ext4 -F /dev/hda1 | ||
11 | Creating filesystem with 262144 4k blocks and 65536 inodes | ||
12 | Filesystem UUID: 98791eb2-2bf3-47ad-b4d8-4cf7e914eee2 | ||
13 | |||
14 | root@qemux86-64:~# ls /dev/disk/by-uuid/98791eb2-2bf3-47ad-b4d8-4cf7e914eee2 | ||
15 | ls: cannot access '/dev/disk/by-uuid/98791eb2-2bf3-47ad-b4d8-4cf7e914eee2': No such file or directory | ||
16 | ... | ||
17 | Include hd* in a match for watch option assignment. | ||
18 | |||
19 | Upstream-Status: Denied | ||
20 | |||
21 | qemu by default emulates IDE and the linux-yocto kernel(s) use | ||
22 | CONFIG_IDE instead of the more modern libsata, so disks appear as | ||
23 | /dev/hd*. A similar patch rejected by upstream because CONFIG_IDE | ||
24 | is deprecated. | ||
25 | |||
26 | Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> | ||
27 | --- | ||
28 | rules/60-block.rules | 2 +- | ||
29 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
30 | |||
31 | diff --git a/rules/60-block.rules b/rules/60-block.rules | ||
32 | index 343fc06f8..b5237dac4 100644 | ||
33 | --- a/rules/60-block.rules | ||
34 | +++ b/rules/60-block.rules | ||
35 | @@ -8,4 +8,4 @@ ACTION=="add", SUBSYSTEM=="module", KERNEL=="block", ATTR{parameters/events_dfl_ | ||
36 | ACTION=="change", SUBSYSTEM=="scsi", ENV{DEVTYPE}=="scsi_device", TEST=="block", ATTR{block/*/uevent}="change" | ||
37 | |||
38 | # watch metadata changes, caused by tools closing the device node which was opened for writing | ||
39 | -ACTION!="remove", SUBSYSTEM=="block", KERNEL=="loop*|nvme*|sd*|vd*|xvd*|pmem*|mmcblk*", OPTIONS+="watch" | ||
40 | +ACTION!="remove", SUBSYSTEM=="block", KERNEL=="loop*|nvme*|sd*|vd*|xvd*|pmem*|mmcblk*|hd*", OPTIONS+="watch" | ||
41 | -- | ||
42 | 2.13.0 | ||
43 | |||