[Xcb] [Bug 45776] all X programs hanging in libxcb on GNU/kFreeBSD

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Feb 8 11:50:10 PST 2012


https://bugs.freedesktop.org/show_bug.cgi?id=45776

--- Comment #4 from Josh Triplett <josh at freedesktop.org> 2012-02-08 11:50:10 PST ---
I looked up the description of MSG_WAITALL in the recv manpage:

MSG_WAITALL (since Linux 2.2)
       This  flag  requests that the operation block until the full
       request is satisfied.  However, the call may still return less
       data than requested if a signal is caught, an error or disconnect
       occurs, or the next data to be received is of a different type
       than that returned.

This seems entirely wrong for these calls to recv.  Passing MSG_WAITALL
suggests that we don't want the OS to return until it has filled the entire
input buffer, whereas we clearly want the OS to return as soon as it has an X
response for us.  That would certainly explain the hangs.

By all means, remove the MSG_WAITALL flag.

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the Xcb mailing list