glib main-loop based apps (such as bluez' bluetoothd) rely on being able to set the NONBLOCK flag when creating ann eventfd. The current release of uclibc does not pass the flags to the kernel call, which causes weird lockups in bluez (and I'm sure other glib applications). There is a fix in their git, and I was hoping it could get included in the current list of gentoo patches. If you google "uclibc eventfd2" you can see the ML discussions around it, for the patch see: http://git.uclibc.org/uClibc/commit/?id=e118373cbb58ba5ffa5fb6670957678d5b87cdb9 I've tested it against 0.9.33.2-r4 and the patch applies fine and fixes the glib issue. Reproducible: Always
I emailed mike about this already. I apply the patch in my /experimental stages, but I would like to get those stages 100% non-hacky so adding this patch is one step closer to cleaning things up. BTW its needed for more than just bluez. See my analysis at https://bugzilla.gnome.org/show_bug.cgi?id=691168
Excellent, thank you. Yup, I went down the same debugging road as you it seems. I wish I had found more on google before getting mired down, but it was good debugging practice anyway. I wish they would just release 0.9.33.3 already. diddly
should be fixed in 0.9.33.2-r7 http://sources.gentoo.org/gentoo/src/patchsets/uclibc/0.9.33.2/11_all_eventfd.patch?rev=1.1