DBus on "other" platforms
René J.V. Bertin
rjvbertin at gmail.com
Thu May 12 20:49:12 UTC 2016
On Thursday May 12 2016 21:31:43 Simon McVittie wrote:
> > /creds: Failed to start message bus: Socket name too long
> Looks like there's some other problem with AF_UNIX on OS X that nobody
> has reported so far :-(
> Is there an OS X equivalent of strace that you can try running it under?
> I'd be interested to see what that too-long name actually is.
We have dtrace and dtruss, I can try to see if that teaches me anything of interest. It might be easier though to find where the error is printed, and add the socket name to the message?
> It doesn't, but the problem is that if something with the same
> observable behaviour as /dev/null gets registered for polling by the
> main loop, poll() immediately returns (with the "invalid" flag set for
> that file descriptor), so it's very easy to get a busy-loop.
Ah, that's the problem. Well, that shouldn't happen, proper code should check for error conditions, no? ;)
I'm not sure though I understand how "something" could have the same observable behaviour as /dev/null or another device special file, and yet be a socket, pipe or kqueue descriptor (presuming those are used on OS X)?
> On the other hand, I added code for
> https://bugs.freedesktop.org/show_bug.cgi?id=23194 and
> https://bugs.freedesktop.org/show_bug.cgi?id=32992 (both in 2011) which
> should avoid busy-looping.
It's a pity that it's such a PITA to restart the session dbus (and my login sessions are so topheavy that I hate to log off and back in).
More information about the dbus