Endianness issues with systemd <-> dbus communication

Fridrich Strba fstrba at suse.de
Mon Mar 10 05:55:06 PDT 2014


Hello, good people,

I am just wondering whether we have some endianness issues when systemd
is communicating with dbus-daemon. We have timeouts when waiting for
returns on s390x.

We detected that the very first handshake of every message from the
dbus-daemon does not show the correct header type which would be of the
type SD_BUS_MESSAGE_METHOD_RETURN aka 1 or type
SD_BUS_MESSAGE_METHOD_ERROR aka 2.

We compared the strace on LE systems with that one on s390x and we
discovered that there is a difference:

LE:
msg_iov(1)=[{"l\2\1\1\v\0\0\0\1\0\0\0=\0\0\0\6\1s\0\6\0\0\0", 24}]
s390x:
msg_iov(1)=[{"B\4\1\1\0\0\0\n\0\0\0\2\0\0\0\215\1\1o\0\0\0\0\25", 24}]

On big endian as on s390x the type is 4 which is SD_BUS_MESSAGE_SIGNAL.

Any idea to help to debug?

Cheers

Fridrich


More information about the dbus mailing list