[Xcb] [Bug 29599] hang in xcb_request_check() due to expecting a reply on void request
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Tue Aug 24 12:59:51 PDT 2010
https://bugs.freedesktop.org/show_bug.cgi?id=29599
--- Comment #8 from Havoc Pennington <hp at pobox.com> 2010-08-24 12:59:51 PDT ---
Looking at a sample hang again, and I happen to have XCB full of debug
logging...
during the hang,
request_expected = 8493, request_read = 8492, request_completed = 8491
3 0x00a42752 in xcb_wait_for_reply (c=0x9d0a198, request=8492, e=0xbfb6419c)
at xcb_in.c:512
i.e. wait_for_reply is blocking on 8492
some of my debug logging was:
PAINT: GOT X REPLY 8486
PAINT: EXPECTING X REPLY SEQ 8488
PAINT: 0 bytes buffered out
PAINT: GOT X REPLY 8488
PAINT: xcb_writev request 8489
PAINT: first of 1 requests opcode 148 minor_opcode 1
PAINT: 0 bytes buffered out
PAINT: xcb_writev request 8490
PAINT: first of 1 requests opcode 148 minor_opcode 142
PAINT: 20464 bytes buffered out
PAINT: EXPECTING X REPLY SEQ 8491
PAINT: EXPECTING X REPLY SEQ 8492
PAINT: 216 bytes buffered out
PAINT: GOT X REPLY 8491
ignore "PAINT" that is just what I'm debugging. "bytes buffered out" is number
of bytes in the outgoing kernel buffer on the socket, ioctl(SIOCOUTQ). GOT X
REPLY is in read_packet. EXPECTING X REPLY is _xcb_in_expect_reply.
I'll add some logging to flush and at the start of request_check and see if I
can reproduce again. (My test case is "run huge app and do stuff for a while"
so it's a little tricky.)
--
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the Xcb
mailing list