Kernel: (drm-intel-next) fe4402931e43e81a4129eba41d05cf8907603af5
Bug detailed description:
The regression happens on all platforms. Bisect shows 361128389e5cb0101cbd091ff8de77cf34608f6c is the first bad commit.
Merge: 65ceaad d9225b9
Author: Keith Packard <email@example.com>
Date: Tue Jan 18 15:18:08 2011 -0800
Merge remote branch 'jcristau/for-keith'
On Fri, Jan 21, 2011 at 00:25:54 -0800, firstname.lastname@example.org wrote:
> Bug detailed description:
> The regression happens on all platforms. Bisect shows
> 361128389e5cb0101cbd091ff8de77cf34608f6c is the first bad commit.
> commit 361128389e5cb0101cbd091ff8de77cf34608f6c
> Merge: 65ceaad d9225b9
> Author: Keith Packard <email@example.com>
> Date: Tue Jan 18 15:18:08 2011 -0800
> Merge remote branch 'jcristau/for-keith'
Does this mean d9225b9602c85603ae616a7381c784f5cf5e811c is ok, and
361128389e5cb0101cbd091ff8de77cf34608f6c (the merge commit) isn't? That
X Error of failed request: BadLength (poly request too large or internal Xlib length error)
Major opcode of failed request: 153 (GLX)
Minor opcode of failed request: 32 (X_GLXDestroyWindow)
Serial number of failed request: 38
Current serial number in output stream: 39
That looks like a mesa bug. src/glx/glx_pbuffer.c::DestroyDrawable (called by glXDestroyWindow) has GetReqExtra(GLXDestroyPbuffer, 4, req);, which sets the request length to 3 instead of 2, for some reason. The extra 4 bytes don't seem needed by either glXDestroyPixmap or glXDestroyWindow. Both requests should be 8 bytes, not 12.
Created attachment 42332 [details] [review]
This fixes it for me.
Created attachment 42338 [details] [review]
fix request length check for CreateGLXPbufferSGIX
I found a couple more similar bugs in mesa, and one in my xserver patch.
Created attachment 42339 [details] [review]
work around wrong request lengths from mesa
Works fine with fixed patch in xserver. BTW, without the fixed patch, it also works fine after updating mesa to 02d7d9ec363c7955105497c518296630cf2b638a.
It now works well with newest code on master.
Kernel: (drm-intel-next) 1a3665c81df32b23c38d4ba8a74761551d5673b1