Bug#944860: udevadm trigger fails in chroot
Michael Biebl
biebl at debian.org
Sun Nov 17 04:01:48 GMT 2019
Control: retitle -1 udevadm trigger fails in containers with ro /sys
Am 17.11.19 um 02:43 schrieb Michael Biebl:
> Am 17.11.19 um 01:57 schrieb Jonah BrĂ¼chert:
>> After slightly looking into the debos source code it seems also possible
>> that it uses a systemd-spawn container in some cases
>> (https://github.com/go-debos/debos/blob/2764eed783b1b0ffb5d09f796338f09a4e2594b6/commands.go#L15)
>
> Can you please verify, what exactly you are using:
> A container (systemd-nspawn,...), chroot or something else.
> If it's a chroot, it would be good to know how the chroot is setup,
> (e.g. which file systems are mounted into the chroot etc).
Assuming you do actually use systemd-nspawn, I think I found the commit
which changed the behaviour of udevadm:
> commit 97afc0351a96e0daa83964df33937967c75c644f (refs/bisect/bad)
> Author: Zbigniew J<C4><99>drzejewski-Szmek <zbyszek at in.waw.pl>
> Date: Wed Jun 5 09:54:54 2019 +0200
>
> udevadm trigger: log errors and return first failure
>
> When udevadm trigger is called, the list of devices to trigger is always
> generated through enumeration, and devices can come and go, so we should not
> treat -ENOENT as a failure. But other types of failure should be logged.
> It seems they were logged until baa30fbc2c04b23209d0b8fb3c86cd15ef9ea81a.
>
> Also, return the first error. (I'm not sure if there are other failure modes
> which we want to ignore. If they are, they'll need to be whitelisted like
> -ENOENT.).
https://github.com/systemd/systemd/commit/97afc0351a96e0daa83964df33937967c75c644f
Whereas with v242 it would log only with debug level priority and return
0, with v243 it now logs with error level priority and returns 1.
I assume this change was deliberate.
This is unfortunate as we have quite a few packages calling "udevadm
trigger" in postinst [1].
So, I think "udevadm trigger" actually behaves properly in a chroot as
it becomes a nop there. In a container with a ro /sys it now fails.
I just checked and LXC containers are affected as well.
Retitling the bug report accordingly.
[1] https://codesearch.debian.net/search?q=udevadm+trigger&literal=0
--
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/pkg-systemd-maintainers/attachments/20191117/324a18a8/attachment.sig>
More information about the Pkg-systemd-maintainers
mailing list