Clients seeing EPIPE, dbus-daemon 1.8.16, how to debug?

Thiago Macieira thiago at kde.org
Tue Jun 2 17:12:00 PDT 2015


On Tuesday 02 June 2015 19:48:23 Chris Morgan wrote:
> Is there anything that the comes to mind that the clients might not be
> handling in those particular cases? We looked into the gdbus code and
> didn't see any retries etc but if it is a protocol issue I'm wondering
> if its related to the high load and something not being handled in a
> corner case of the protocol.

The protocol does not support retries. This is all done on top of a reliable-
delivery streaming connection (Unix SOCK_STREAM sockets), so there's no need 
to retry.

There's *nothing* the daemon can do to cause an EPIPE, besides disconnecting 
the socket.

So there are two possibilities only: either EPIPE was caused by the socket 
being disconnected or it was caused by the kernel. If it was caused by the 
kernel, it's important to know what exactly the payload of the sendmsg call 
was.

Did the payload include file descriptors? I don't see how that could cause 
EPIPE, but...

In fact, I don't see anything else that could cause EPIPE in the kernel source 
code.
-- 
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 mailing list