[Bug 818177] Re: boot failures because 'udevadm exit' times out while udevd waits for an already-dead thread

Steve Langasek steve.langasek at canonical.com
Sat Oct 8 07:01:42 UTC 2011


The root error is that in worker_new(), at lines 353 ff., the worker
threads process signals and udev event handling requests in the same
loop.  If it happens that both the signal and the event are received
close enough together to be returned in the same epoll_wait(), and the
udev_monitor handle is listed *first* in the epoll_event list, the
worker will receive the event message (which increases the refcount on
the udevd master side), then process the signal, and immediately exit
without handling the event.

This should be handled by processing fd_signal first, and only if
SIGTERM was not received, process fd_monitor.  This ensures that we
always exit ASAP after receiving the signal, instead of going off and
processing another event that could take an indeterminate amount of
time.

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to udev in Ubuntu.
https://bugs.launchpad.net/bugs/818177

Title:
  boot failures because 'udevadm exit' times out while udevd waits for
  an already-dead thread

Status in Release Notes for Ubuntu:
  Triaged
Status in “linux” package in Ubuntu:
  Invalid
Status in “udev” package in Ubuntu:
  Triaged
Status in “linux” source package in Oneiric:
  Invalid
Status in “udev” source package in Oneiric:
  Triaged
Status in “linux” source package in Precise:
  Invalid
Status in “udev” source package in Precise:
  Triaged

Bug description:
  After running a do-release-upgrade -d on a natty server, I'm unable to
  boot the machine properly.

  It looks like it doesn't see the local disks anymore.

  I think this looks quite a lot like the debbug linked from here:
  https://bugs.launchpad.net/ubuntu/oneiric/+source/linux/+bug/746751

  ProblemType: Bug
  DistroRelease: Ubuntu 11.10
  Package: linux-image-3.0.0-7-server 3.0.0-7.8
  ProcVersionSignature: Ubuntu 3.0.0-7.8-server 3.0.0
  Uname: Linux 3.0.0-7-server x86_64
  AlsaDevices:
   total 0
   crw-rw---- 1 root audio 116,  1 2011-07-29 13:34 seq
   crw-rw---- 1 root audio 116, 33 2011-07-29 13:34 timer
  AplayDevices: Error: [Errno 2] No such file or directory
  Architecture: amd64
  ArecordDevices: Error: [Errno 2] No such file or directory
  AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/seq', '/dev/snd/timer'] failed with exit code 1:
  CRDA: Error: [Errno 2] No such file or directory
  Date: Fri Jul 29 13:40:10 2011
  HibernationDevice: RESUME=UUID=844d17fa-ff69-4250-844b-33b930236c56
  IwConfig:
   lo        no wireless extensions.
   
   eth0      no wireless extensions.
   
   eth1      no wireless extensions.
  MachineType: HP ProLiant DL380 G5
  PciMultimedia:
   
  ProcEnviron:
   LANGUAGE=en_US:
   PATH=(custom, user)
   LANG=en_US
   SHELL=/bin/bash
  ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-3.0.0-7-server root=/dev/mapper/User Name-root ro INIT_VERBOSE=yes
  RelatedPackageVersions:
   linux-restricted-modules-3.0.0-7-server N/A
   linux-backports-modules-3.0.0-7-server  N/A
   linux-firmware                          1.56
  RfKill: Error: [Errno 2] No such file or directory
  SourcePackage: linux
  UpgradeStatus: Upgraded to oneiric on 2011-07-29 (0 days ago)
  dmi.bios.date: 06/28/2007
  dmi.bios.vendor: HP
  dmi.bios.version: P56
  dmi.chassis.type: 23
  dmi.chassis.vendor: HP
  dmi.modalias: dmi:bvnHP:bvrP56:bd06/28/2007:svnHP:pnProLiantDL380G5:pvr:cvnHP:ct23:cvr:
  dmi.product.name: ProLiant DL380 G5
  dmi.sys.vendor: HP

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-release-notes/+bug/818177/+subscriptions




More information about the foundations-bugs mailing list