Package: udev Version: 167-1 Severity: important File: /sbin/udevd udevd doesn't properly close all inherited open file handles when it's restarted, causing unattended-upgrades to fail, subsequently causing anacron to hang "forever"
Please see bug #379645 for context, but do note that leaving open file handles is a real bug in udevd. Situation after unattended-ugrades upgraded udevd to 167-1. anacron is hanging waiting for the stderr and stdout pipes opened by run-parts to be closed: root 2140 0.0 0.6 12332 840 ? Ss 07:30 0:00 /usr/sbin/anacron -s root 2142 0.0 0.4 4004 552 ? S 07:35 0:00 \_ /bin/sh -c nice run-parts --report /etc/cron.daily root 2143 0.0 0.4 3904 552 ? SN 07:35 0:00 \_ run-parts --report /etc/cron.daily root 2147 0.0 0.0 0 0 ? ZN 07:35 0:00 \_ [apt] <defunct> root 3395 0.0 0.4 21068 560 ? S<s 07:48 0:00 udevd --daemon root 3495 0.0 0.9 49476 1124 ? SNs 07:48 0:00 /usr/sbin/sshd The log shows that two daemons were among the upgraded, udevd and sshd (also shown in the partial ps output above): frtest3:~# cat /var/log/unattended-upgrades/unattended-upgrades.log 2011-04-02 07:52:06,607 INFO Initial blacklisted packages: 2011-04-02 07:52:06,609 INFO Starting unattended upgrades script 2011-04-02 07:52:06,609 INFO Allowed origins are: ['o=Debian,a=unstable', 'origin=Debian,label=Debian-Security,archive=stable'] 2011-04-02 07:52:11,118 INFO Packages that are upgraded: cpp gcc libgeoip1 libssl0.9.8 tzdata 2011-04-02 07:52:11,120 INFO Writing dpkg log to '/var/log/unattended-upgrades/unattended-upgrades-dpkg_2011-04-02_07:52:11.120101.log' 2011-04-02 07:52:24,610 INFO All upgrades installed 2011-04-03 07:39:55,924 INFO Initial blacklisted packages: 2011-04-03 07:39:55,946 INFO Starting unattended upgrades script 2011-04-03 07:39:55,946 INFO Allowed origins are: ['o=Debian,a=unstable', 'origin=Debian,label=Debian-Security,archive=stable'] 2011-04-03 07:40:14,560 INFO Packages that are upgraded: apt apt-utils dpkg ethtool openssl x11-common 2011-04-03 07:40:14,562 INFO Writing dpkg log to '/var/log/unattended-upgrades/unattended-upgrades-dpkg_2011-04-03_07:40:14.561908.log' 2011-04-03 07:40:45,825 INFO All upgrades installed 2011-04-06 07:46:48,907 INFO Initial blacklisted packages: 2011-04-06 07:46:48,917 INFO Starting unattended upgrades script 2011-04-06 07:46:48,918 INFO Allowed origins are: ['o=Debian,a=unstable', 'origin=Debian,label=Debian-Security,archive=stable'] 2011-04-06 07:47:06,148 INFO Packages that are upgraded: apt apt-utils base-files dpkg libltdl7 libudev0 m4 openssh-client openssh-server popularity-contest python-apt python-apt-common ssh udev 2011-04-06 07:47:06,149 INFO Writing dpkg log to '/var/log/unattended-upgrades/unattended-upgrades-dpkg_2011-04-06_07:47:06.149576.log' 2011-04-06 07:49:01,937 INFO All upgrades installed Looking at the sshd open files shows no unexpected handles: frtest3:~# lsof -p 3495 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 3495 root cwd DIR 8,1 4096 2 / sshd 3495 root rtd DIR 8,1 4096 2 / sshd 3495 root txt REG 8,1 516928 57532 /usr/sbin/sshd sshd 3495 root mem REG 8,1 47616 82932 /lib/libnss_files-2.11.2.so sshd 3495 root mem REG 8,1 43552 82161 /lib/libnss_nis-2.11.2.so sshd 3495 root mem REG 8,1 31616 83524 /lib/libnss_compat-2.11.2.so sshd 3495 root mem REG 8,1 131260 82972 /lib/libpthread-2.11.2.so sshd 3495 root mem REG 8,1 80712 82117 /lib/libresolv-2.11.2.so sshd 3495 root mem REG 8,1 8528 81876 /lib/libkeyutils.so.1.3 sshd 3495 root mem REG 8,1 32016 58126 /usr/lib/libkrb5support.so.0.1 sshd 3495 root mem REG 8,1 167184 56946 /usr/lib/libk5crypto.so.3.1 sshd 3495 root mem REG 8,1 14696 82938 /lib/libdl-2.11.2.so sshd 3495 root mem REG 8,1 89064 83629 /lib/libnsl-2.11.2.so sshd 3495 root mem REG 8,1 1437064 82968 /lib/libc-2.11.2.so sshd 3495 root mem REG 8,1 12336 81317 /lib/libcom_err.so.2.1 sshd 3495 root mem REG 8,1 836392 58009 /usr/lib/libkrb5.so.3.3 sshd 3495 root mem REG 8,1 246008 57375 /usr/lib/libgssapi_krb5.so.2.2 sshd 3495 root mem REG 8,1 35104 83633 /lib/libcrypt-2.11.2.so sshd 3495 root mem REG 8,1 93936 59079 /usr/lib/libz.so.1.2.3.4 sshd 3495 root mem REG 8,1 10648 82226 /lib/libutil-2.11.2.so sshd 3495 root mem REG 8,1 1853320 57046 /usr/lib/libcrypto.so.1.0.0 sshd 3495 root mem REG 8,1 121976 81206 /lib/libselinux.so.1 sshd 3495 root mem REG 8,1 49712 81842 /lib/libpam.so.0.82.3 sshd 3495 root mem REG 8,1 36360 97738 /lib/libwrap.so.0.7.6 sshd 3495 root mem REG 8,1 128744 83634 /lib/ld-2.11.2.so sshd 3495 root 0u CHR 1,3 0t0 872 /dev/null sshd 3495 root 1u CHR 1,3 0t0 872 /dev/null sshd 3495 root 2u CHR 1,3 0t0 872 /dev/null sshd 3495 root 3u IPv4 8807 0t0 TCP *:ssh (LISTEN) sshd 3495 root 4u IPv6 8809 0t0 TCP *:ssh (LISTEN) udevd however, have several files open which are obviously inherited from the unattended-upgrades/apt process which started it: frtest3:~# lsof -p 3395 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME udevd 3395 root cwd DIR 8,1 4096 2 / udevd 3395 root rtd DIR 8,1 4096 2 / udevd 3395 root txt REG 8,1 145472 48698 /sbin/udevd udevd 3395 root mem REG 8,1 47616 82932 /lib/libnss_files-2.11.2.so udevd 3395 root mem REG 8,1 43552 82161 /lib/libnss_nis-2.11.2.so udevd 3395 root mem REG 8,1 89064 83629 /lib/libnsl-2.11.2.so udevd 3395 root mem REG 8,1 31616 83524 /lib/libnss_compat-2.11.2.so udevd 3395 root mem REG 8,1 131260 82972 /lib/libpthread-2.11.2.so udevd 3395 root mem REG 8,1 14696 82938 /lib/libdl-2.11.2.so udevd 3395 root mem REG 8,1 1437064 82968 /lib/libc-2.11.2.so udevd 3395 root mem REG 8,1 31744 82981 /lib/librt-2.11.2.so udevd 3395 root mem REG 8,1 121976 81206 /lib/libselinux.so.1 udevd 3395 root mem REG 8,1 128744 83634 /lib/ld-2.11.2.so udevd 3395 root 0u CHR 1,3 0t0 872 /dev/null udevd 3395 root 1u CHR 1,3 0t0 872 /dev/null udevd 3395 root 2u CHR 1,3 0t0 872 /dev/null udevd 3395 root 4u unix 0xffff880004974680 0t0 8675 socket udevd 3395 root 5u sock 0,7 0t0 8676 can't identify protocol udevd 3395 root 6r 0000 0,9 0 870 anon_inode udevd 3395 root 7u 0000 0,9 0 870 anon_inode udevd 3395 root 8u unix 0xffff880004974000 0t0 8677 socket udevd 3395 root 9u unix 0xffff8800049749c0 0t0 8678 socket udevd 3395 root 10u REG 8,1 8 40579 /run/udev/queue.bin udevd 3395 root 41r REG 8,1 447439 75528 /var/lib/dpkg/status (deleted) udevd 3395 root 43r REG 8,1 447439 75528 /var/lib/dpkg/status (deleted) udevd 3395 root 44u CHR 1,3 0t0 872 /dev/null udevd 3395 root 45u REG 8,1 12802 97514 /var/log/unattended-upgrades/unattended-upgrades-dpkg_2011-04-06_07:47:06.149576.log udevd 3395 root 46w FIFO 0,8 0t0 7008 pipe udevd 3395 root 47w FIFO 0,8 0t0 7009 pipe udevd 3395 root 49w REG 8,1 1157 73110 /var/log/apt/history.log Among these are the two pipes which run-parts is waiting for: frtest3:~# lsof -p 2143 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME run-parts 2143 root cwd DIR 8,1 4096 2 / run-parts 2143 root rtd DIR 8,1 4096 2 / run-parts 2143 root txt REG 8,1 15592 81341 /bin/run-parts run-parts 2143 root mem REG 8,1 1437064 82968 /lib/libc-2.11.2.so run-parts 2143 root mem REG 8,1 128744 83634 /lib/ld-2.11.2.so run-parts 2143 root 0r CHR 1,3 0t0 872 /dev/null run-parts 2143 root 1u REG 0,17 522 7005 /tmp/fileZ6Ndbr (deleted) run-parts 2143 root 2u REG 0,17 522 7005 /tmp/fileZ6Ndbr (deleted) run-parts 2143 root 3r DIR 8,1 4096 2 / run-parts 2143 root 4r FIFO 0,8 0t0 7008 pipe run-parts 2143 root 6r FIFO 0,8 0t0 7009 pipe Please fix ASAP. Leaving inherited file handles open is unwise at best, and may be considered a security problem by some. Thanks, Bjørn -- System Information: Debian Release: wheezy/sid APT prefers oldstable APT policy: (500, 'oldstable'), (500, 'unstable'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 2.6.38-2-amd64 (SMP w/1 CPU core) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages udev depends on: ii debconf [debconf-2.0] 1.5.38 Debian configuration management sy ii libc6 2.11.2-13 Embedded GNU C Library: Shared lib ii libselinux1 2.0.98-1 SELinux runtime shared libraries ii libudev0 167-1 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-8 Linux PCI Utilities ii usbutils 1:001-1 Linux USB utilities udev suggests no packages. -- debconf information: udev/new_kernel_needed: false udev/title/upgrade: udev/reboot_needed: udev/sysfs_deprecated_incompatibility: -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

