As the program demonstrates, the biggest problem is missed SIGCHLDs.

I'm actually quite surprised by how fast the program demonstrates the
problem, I was actually expecting you to need to run it for a minute or
two before a hang happens.  For me, it hangs within mere hundreds of
iterations.

The worst result of this hang would be that udev did not get woken up
because of an important SIGCHLD such as one of the tests it runs on the
root filesystem.  This is actually the most likely scenario since the
root filesystem device is often one of the very last that udev
processes, and there would be no further children dying after to wake it
up harder.

The failure would then be that udev would timeout the handler for the
root filesystem device, likely causing /dev/sda1 to not be created.

Given the speed at which this can be replicated with the test program,
and the tendancy for the root filesystem to be the last device, I'd
guess you're looking at such a failure in the order of every thousand
boots.

(Or if you booted a thousand netbooks, one of them would likely fail to
boot and drop to a "root filesystem not found" prompt)

-- 
ARM architecture lacks support for pselect() and ppoll()
https://bugs.launchpad.net/bugs/319729
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to