[Xcb] X server bug on BIG-REQUESTS?

Ian Osgood iano at quirkster.com
Sat Jun 10 09:55:46 PDT 2006


On Jun 9, 2006, at 9:54 PM, Jamey Sharp wrote:
>
> On my system, my test app reports the following:
>
> 	maximum request length in 4-byte units: 4194303
> 	creating a 1024x1024 pixmap (1048576 pixels, 4194304 bytes)
> 	create.sequence = 3; put.sequence = 0
> 	XCBFlush failed.
> 	XCBPollForEvent: I/O error occured, but no handler provided.
> 	Aborted
>
> At this point I believe we've identified an X server bug, and I think
> the error is in the ReadRequestFromClient function in os/io.c, but  
> this
> function is incomprehensible to me. I think the symptom is that this
> function is incorrectly returning -1 (causing a call to  
> CloseDownClient
> in Dispatch) when we send it this large request. It's worth noting the
> comment that says, "Watch out: needed sometimes counts bytes and
> sometimes counts CARD32's," which sounds like exactly the kind of
> confusion we're seeing.

For what its worth, this also happens on the XFree86 4.4.0 server
shipped with Mac OS X.  Either this bug has been around a
long time, or it isn't really a server bug.

(More data: 1023x1024 and 1022x1025 works, but 1023x1025 fails, even  
though
that size is 4194300 bytes, less than 4194303 max length.)

Ian



More information about the Xcb mailing list