[Xcb] How to Debug a missing xcb reply message?

Uli Schlachter psychon at znc.in
Wed Mar 16 17:55:05 UTC 2016


Am 12.03.2016 um 13:13 schrieb Bertrand Wind:
> We have a UI application hanging on an xcb_wait_for_reply message with a
> backtrace:
> 
> the backtrace starts like this:
> /home/views/qt/lib/liblfpCore.so.1(_Z13dumpBacktraceP10sigcontexti+0x30)[0x7faec6c0da10]
> [0x623c00]
> /lib64/libpthread.so.0(pthread_cond_wait+0xbd)[0x31e200c02d]
> /usr/lib64/libxcb.so.1[0x363ba0a749]
> /usr/lib64/libxcb.so.1[0x363ba0b9ff]
> /usr/lib64/libxcb.so.1(xcb_wait_for_reply+0x62)[0x363ba0bb02]
> /usr/lib64/libX11.so.6(_XReply+0x107)[0x31e1040c57]
> /usr/lib64/libGL.so.1(+0x44f53)[0x7faec30d5f53]
> /usr/lib64/libGL.so.1(+0x4270f)[0x7faec30d370f]
> /usr/lib64/dri/i965_dri.so(+0x324510)[0x7faeaf293510]
> /usr/lib64/dri/i965_dri.so(+0x3248cd)[0x7faeaf2938cd]
> /usr/lib64/dri/i965_dri.so(+0x318ff7)[0x7faeaf287ff7
> 
> What's the best way to debug xcb transactions?

What's an xcb transaction?

> How to find from which
> thread the reply should be issued? Any debug flag to activate to track
> these transactions?

XCB is a library for talking to an X server. A thread stuck in
xcb_wait_for_reply() means that the server did not reply. So the answer is "the
other end of the X11 connection" is the "thread" which should reply.

Uli
-- 
"Are you preparing for another war, Plutarch?" I ask.
"Oh, not now. Now we're in that sweet period where everyone agrees that our
recent horrors should never be repeated," he says. "But collective thinking is
usually short-lived. We're fickle, stupid beings with poor memories and a great
gift for self-destruction.


More information about the Xcb mailing list