udev: remove seqnum API and all assumptions about seqnums

System Internals / systemd - Kay Sievers [vrfy.org] - 13 April 2014 19:12 UTC

The way the kernel namespaces have been implemented breaks assumptions udev made regarding uevent sequence numbers. Creating devices in a namespace "steals" uevents and its sequence numbers from the host. It confuses the "udevadmin settle" logic, which might block until util a timeout is reached, even when no uevent is pending.

Remove any assumptions about sequence numbers and deprecate libudev's API exposing these numbers; none of that can reliably be used anymore when namespaces are involved.

9ea28c5 udev: remove seqnum API and all assumptions about seqnums
Makefile.am | 6 +-
man/udevadm.xml | 22 --
src/libudev/libudev-monitor.c | 17 +-
src/libudev/libudev-queue-private.c | 406 -----------------------------------
src/libudev/libudev-queue.c | 302 ++------------------------
src/libudev/libudev.h | 10 +-
src/shared/udev-util.h | 2 -
src/test/test-libudev.c | 24 ---
src/udev/udev-ctrl.c | 2 +-
src/udev/udevadm-settle.c | 131 ++---------
src/udev/udevd.c | 59 +++--
11 files changed, 84 insertions(+), 897 deletions(-)

Upstream: github.com


  • Share