Clients seeing EPIPE, dbus-daemon 1.8.16, how to debug?
thiago at kde.org
Tue Jun 2 13:37:39 PDT 2015
On Monday 01 June 2015 21:21:16 Chris Morgan wrote:
> I'm using dbus-daemon on a systemd distro built under yocto on an arm
> system, a BBB (1GHz Arm), 512MB ram, emmc.
> At startup we've got two clients, one c# using dbus-sharp, and another
> nodejs using node-dbus (https://github.com/sidorares/node-dbus) that
> are both seeing EPIPE from the dbus client socket as reported via
For real pipes, EPIPE indicates that you're writing while there's no pipe
reader. For sockets, that happens only when a connected socket's peer has shut
down reception. In other words, the socket has disconnected.
dbus-daemon only disconnects you if you send invalid stuff. So I advise you to
check those two bindings for protocol correctness.
> I'm guessing that the high cpu and io load at startup may be the cause
> of the issue. Those clients are relatively heavy to startup, one being
> mono, the other node. This particular issue isn't seen on the desktop
> under F21 or Arch with the same software.
No, that can't be it. If the socket never connected, you'd get ENOTCONN, not
> Is there some way to debug the reason behind the EPIPE from the
> dbus-daemon side? I tried compiling with the --enable-verbose-tracing
> and enabling DBUS_VERBOSE=1 but that produces a ton of output that
> seems unrelated to the EPIPE issue.
The message failed to parse. Use strace on your application and capture the
all the messages sent after the last time the bus sent anything to you. One of
those messages is invalid.
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
Software Architect - Intel Open Source Technology Center
PGP/GPG: 0x6EF45358; fingerprint:
E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358
More information about the dbus