Package: udev
Version: 168-2
Severity: normal
Tags: patch

Hi,

the init script has an incomplete check in its start action:

  if [ -e "$udev_root/.udev/" ]; then


As a result, when /run is used, TMPFS_MOUNTED is not set and the code
path for systems not using devtmpfs or initramfs is run.
i.e. we umount /dev/pts and try to mount a tmpfs for /dev, instead of
running udevadm info --cleanup-db

Patch attached.

Michael

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (200, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 2.6.38-2-486
Locale: LANG=de_DE.utf8, LC_CTYPE=de_DE.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages udev depends on:
ii  debconf [debconf-2.0]        1.5.39      Debian configuration management sy
ii  libc6                        2.13-4      Embedded GNU C Library: Shared lib
ii  libselinux1                  2.0.98-1+b1 SELinux runtime shared libraries
ii  libudev0                     168-2       libudev shared library
ii  libusb-0.1-4                 2:0.1.12-17 userspace USB programming library
ii  lsb-base                     3.2-27      Linux Standard Base 3.2 init scrip
ii  util-linux                   2.17.2-9.1  Miscellaneous system utilities

Versions of packages udev recommends:
ii  pciutils                      1:3.1.7-9  Linux PCI Utilities
ii  usbutils                      1:001-1    Linux USB utilities

udev suggests no packages.

-- Configuration Files:
/etc/init.d/udev changed [not included]

-- debconf information excluded
diff --git a/debian/udev.init b/debian/udev.init
index 08da8af..6173493 100644
--- a/debian/udev.init
+++ b/debian/udev.init
@@ -239,7 +239,7 @@ fi # udev_root != /dev
 
 case "$1" in
     start)
-    if [ -e "$udev_root/.udev/" ]; then
+    if [ -d "$udev_root/.udev/" ] || [ -d /run/udev/ ] ; then
 	if mountpoint -q $udev_root/; then
 	    TMPFS_MOUNTED=1
 	else

Reply via email to