mirror of
https://github.com/systemd/systemd-stable.git
synced 2024-12-22 13:33:56 +03:00
rules: Handle MMC boot partitions by-path correctly (#6026)
Many eMMC devices have separate boot partitions that aren't part of the normal partition table that show up as /dev/mmcblk[0-9]boot[0-9]. These partitions are generally small (128KB to 16MB) and typically hold a boot loader, boot loader data or a recovery image. Match these and create -boot%n by-path symlinks. Prior to this change by-path symlinks for the main device would be incorrectly linked to one of the boot partitions. For instance before: /dev/disk/by-path/platform-219c000.usdhc linked to /dev/mmcblk1boot1 Now: /dev/disk/by-path/platform-219c000.usdhc links to /dev/mmcblk1 /dev/disk/by-path/platform-219c000.usdhc-boot0 links to /dev/mmcblk1boot0 /dev/disk/by-path/platform-219c000.usdhc-boot1 links to /dev/mmcblk1boot1 On systems that support multiple SD/MMC devices it can be essential to have by-path links to these devices since device names vary depending on which other devices are connected.
This commit is contained in:
parent
2340bfbfcc
commit
4e3f07029a
@ -64,7 +64,8 @@ KERNEL=="msblk[0-9]p[0-9]|mspblk[0-9]p[0-9]", ENV{ID_NAME}=="?*", ENV{ID_SERIAL}
|
||||
|
||||
# by-path
|
||||
ENV{DEVTYPE}=="disk", DEVPATH!="*/virtual/*", IMPORT{builtin}="path_id"
|
||||
ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}"
|
||||
KERNEL=="mmcblk[0-9]boot[0-9]", ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}-boot%n"
|
||||
KERNEL!="mmcblk[0-9]boot[0-9]", ENV{DEVTYPE}=="disk", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}"
|
||||
ENV{DEVTYPE}=="partition", ENV{ID_PATH}=="?*", SYMLINK+="disk/by-path/$env{ID_PATH}-part%n"
|
||||
|
||||
# legacy virtio-pci by-path links (deprecated)
|
||||
|
Loading…
Reference in New Issue
Block a user