DBus error: message changed byte order...
David Jonathan
djonathan at cox.net
Tue Jan 13 14:57:10 PST 2009
I have cross-compiled dbus-1.2.4.4permissive for ARM,
and the configure and compile look correct for little-endian.
Installed on my PXA270 running 2.6.24.4, dbus-daemon
appears to start OK, albeit with the warning about inotify:
dbus-daemon --system --nofork
Cannot initialize inotify
When I try "dbus-monitor --system --monitor" it aborts with:
process 2557: dbus message changed byte order since append iterator was created
I added debug to dbus/dbus-message.c: _dbus_message_iter_check()
and see that while iter->message->byte_order is 0x6c ('l') as expected,
iter->u.writer.byte_order is 0, which results in the abort.
I captured the VERBOSE output when starting dbus-monitor,
see below.
I tried compiling dbus with -rdynamic to enable the backtrace,
but dbus-daemon won't start because, according to strace,
attempts to get memory keep failing. More details on that
if anyone's interested...
-David
root at 0838-99000048:/tmp# dbus-monitor --system --monitor
dbus-monitor: calling dbus_error_init()
dbus-monitor: calling dbus_bus_get()
2557: Filling in system bus address...
2557: used default system bus "unix:path=/usr/local/var/run/dbus/system_bus_socket"
2557: Filling in session bus address...
2557: "autolaunch:"
2557: Filling in activation bus address...
2557: "none set"
2557: opening shared connection to: unix:path=/usr/local/var/run/dbus/system_bus_socket
2557: checking for existing connection
2557: creating shared_connections hash table
2557: successfully created shared_connections
2557: connecting to unix socket /usr/local/var/run/dbus/system_bus_socket abstract=0
2557: socket fd 3 opened
2557: Successfully connected to unix socket /usr/local/var/run/dbus/system_bus_socket
2557: client: going from state NeedSendAuth to state WaitingForData
2557: Initialized transport on address unix:path=/usr/local/var/run/dbus/system_bus_socket
2557: LOCK: _dbus_connection_new_for_transport
2557: UNLOCK: protected_change_watch
2557: LOCK: protected_change_watch
2557: UNLOCK: protected_change_watch
2557: LOCK: protected_change_watch
2557: check_read_watch: fd = 3
2557: setting read watch enabled = 0
2557: UNLOCK: protected_change_watch
2557: LOCK: protected_change_watch
2557: check_write_watch(): needed = 1 on connection 0x12768 watch 0x12398 fd = 3 outgoing messages exist 0
2557: UNLOCK: protected_change_watch
2557: LOCK: protected_change_watch
2557: UNLOCK: _dbus_connection_new_for_transport
2557: LOCK: _dbus_connection_open_internal
2557: UNLOCK: _dbus_connection_open_internal
2557: Allocated slot 0 on allocator 0x400633e8 total 1 slots allocated 1 used
2557: LOCK: dbus_connection_get_data
2557: UNLOCK: dbus_connection_get_data
2557: LOCK: dbus_connection_set_data
2557: UNLOCK: dbus_connection_set_data
2557: LOCK: dbus_connection_send_with_reply
2557: Allocated slot 0 on allocator 0x40063430 total 1 slots allocated 1 used
DEBUG: message_iter_check(): writer.byte_order: 0x0 message->byte_order: 0x6c
process 2557: dbus message changed byte order since append iterator was created
D-Bus not built with -rdynamic so unable to print a backtrace
Aborted
More information about the dbus
mailing list