Re: udev: Why non-blocking poll() with blocking recvmsg()?
Martin Pitt <[email protected]>
| Newsgroups | org.kernel.vger.linux-hotplug |
|---|---|
| Message-ID | <[email protected]> |
Hello Tetsuo, Tetsuo Handa [2013-08-19 20:39 +0900]: > I'm experiencing a boot failure problem with wait-for-root utility in Ubuntu 12.04. Note that this is an Ubuntu specific program. > Although wait-for-root uses blocking socket, udev_monitor_receive_device() sometimes > immediately returns NULL. It *assumed* a blocking socket, but didn't make sure that it actually was. Originally libudev used blocking sockets, but at some point [1] this was switched to non-blocking by default, and wait-for-root needed to be adjusted to that. Please see https://launchpad.net/bugs/1154813, it's fixed in newer Ubuntu releases. [1] http://git.kernel.org/cgit/linux/hotplug/udev.git/commit/?idd83b8 Martin -- Martin Pitt | http://www.piware.de Ubuntu Developer (www.ubuntu.com) | Debian Developer (www.debian.org)