diff options
author | Luca Boccassi <bluca@debian.org> | 2024-06-04 17:00:03 +0200 |
---|---|---|
committer | Luca Boccassi <bluca@debian.org> | 2024-06-28 15:37:58 +0200 |
commit | a1a40297dbfa5bcd926d1a19320deb73c033c6f5 (patch) | |
tree | 5170b3d7b0c134d68ea823604fc5b18028ab0b80 /test/.gitignore | |
parent | man/varlinkctl: add `list-methods` command to synopsis and fix typo (diff) | |
download | systemd-a1a40297dbfa5bcd926d1a19320deb73c033c6f5.tar.xz systemd-a1a40297dbfa5bcd926d1a19320deb73c033c6f5.zip |
core: deduplicate identical dm-verity ExtensionImages=
It turns out OverlayFS doesn't handle gracefully when the same source is
specified multiple times in lowerdir= and it fails with ELOOP:
Failed to mount overlay (type overlay) on /run/systemd/mount-rootfs/opt (MS_RDONLY "lowerdir=/run/systemd/unit-extensions/1/opt:/run/systemd/unit-extensions/0/opt:/run/systemd/mount-rootfs/opt"): Too many levels of symbolic links
This happens even if we mount each image in a different internal mount
path, as OverlayFS will resolve it and look for the backing device, which
will be the same device mapper entity, and return a hard error.
This error does not appear if dm-verity is not used, so it is very
confusing for users, and unnecessary.
When mounting ExtensionImages, check if an image is dm-veritied,
and drop duplicates if the root hashes match, to avoid this user-unfriendly
hard error.
Diffstat (limited to 'test/.gitignore')
0 files changed, 0 insertions, 0 deletions