Created attachment 528259 [details] Xorg.0.log from the failure Description of problem: I can repeatably "hang" the X server by displaying some of the fancier GL screensavers (glmatrix in particular) for a few minutes. The mouse still moves and I can still switch VTs so it's not completely dead, but Ctrl-Alt-Backspace appears to cause a segfault. Sometimes the display manager manages to restart the server when this happens, but once I was locked out completely, unable to switch back to a console and with no recourse save the reset button. The log always shows: [ 41375.799] (EE) intel(0): [DRI2] DRI2SwapComplete: bad drawable and then a bit later: [ 42600.557] (WW) intel(0): flip queue failed: Device or resource busy [ 42600.558] (WW) intel(0): Page flip failed: Device or resource busy ajax and I chatted a bit on IRC about this and he believes he found a refcounting issue. Judging from other problem reports around the Internet, this also does not seem to be hardware/driver related as I see a few identical reports on Radeon cards. Version-Release number of selected component (if applicable): xorg-x11-server-Xorg-1.10.4-1.fc15.x86_64 xorg-x11-drv-intel-2.15.0-5.fc15.x86_64 Steps to reproduce: Open up the KDE screensaver chooser, choose glmatrix and click test. I found that I could make it happen pretty quickly if I switched around between a few of the more intensive ones. I do not know if this happens outside of KDE. I will attach the X log. Note that I switched VTs a couple of times before hitting Ctrl-Alt-Backspace which caused the segfault.
Backtrace: [ 71184.764] 0: /usr/bin/X (xorg_backtrace+0x2f) [0x45e84f] [ 71185.665] 1: /usr/bin/X (0x400000+0x62ed6) [0x462ed6] [ 71185.665] 2: /lib64/libpthread.so.0 (0x7fc919764000+0xeef0) [0x7fc919772ef0] [ 71185.665] 3: /lib64/libc.so.6 (0x7fc91847e000+0x772c4) [0x7fc9184f52c4] [ 71185.665] 4: /lib64/libc.so.6 (0x7fc91847e000+0x78274) [0x7fc9184f6274] [ 71185.665] 5: /lib64/libc.so.6 (__libc_malloc+0x70) [0x7fc9184f8b00] [ 71185.665] 6: /usr/bin/X (RegionRectAlloc+0x60) [0x448d10] [ 71185.665] 7: /usr/bin/X (RegionAppend+0x103) [0x449293] [ 71185.665] 8: /usr/bin/X (miValidateTree+0xe1) [0x513121] [ 71185.665] 9: /usr/bin/X (UnmapWindow+0x20a) [0x45567a] [ 71185.665] 10: /usr/bin/X (DeleteWindow+0x2d) [0x4556ed] [ 71185.666] 11: /usr/bin/X (FreeClientResources+0xd5) [0x44c825] [ 71185.666] 12: /usr/bin/X (CloseDownClient+0x5e) [0x42e26e] [ 71185.666] 13: /usr/bin/X (0x400000+0x2ed1f) [0x42ed1f] [ 71185.666] 14: /usr/bin/X (0x400000+0x22e1a) [0x422e1a] [ 71185.666] 15: /lib64/libc.so.6 (__libc_start_main+0xed) [0x7fc91849f39d] [ 71185.666] 16: /usr/bin/X (0x400000+0x23101) [0x423101] [ 71185.666] Segmentation fault at address 0x18 [ 71185.666] Fatal server error: [ 71185.666] Caught signal 11 (Segmentation fault). Server aborting -------------------- --------------------------------- In function RegionRectAlloc: (from frame 6: /usr/bin/X (RegionRectAlloc+0x60) [0x448d10]) 341: n++; 342: pRgn->data = xallocData(n); 343: if (!pRgn->data) 344: return RegionBreak (pRgn); 345: pRgn->data->numRects = 1; 346: *RegionBoxptr(pRgn) = pRgn->extents; 347: } 348: else if (!pRgn->data->size) 349: { 350: pRgn->data = xallocData(n); 351: >>>>>>> if (!pRgn->data) 352: return RegionBreak (pRgn); 353: pRgn->data->numRects = 0; 354: } 355: else 356: { 357: if (n == 1) 358: { 359: n = pRgn->data->numRects; 360: if (n > 500) /* XXX pick numbers out of a hat */ 361: n = 250; Frame 7: /usr/bin/X (RegionAppend+0x103) [0x449293] /usr/src/debug/xorg-server-1.10.4/dix/region.c:1000 RegionAppend Frame 8: /usr/bin/X (miValidateTree+0xe1) [0x513121] /usr/src/debug/xorg-server-1.10.4/mi/mivaltree.c:687 miValidateTree Frame 9: /usr/bin/X (UnmapWindow+0x20a) [0x45567a] /usr/src/debug/xorg-server-1.10.4/dix/window.c:2873 UnmapWindow Frame 10: /usr/bin/X (DeleteWindow+0x2d) [0x4556ed] /usr/src/debug/xorg-server-1.10.4/dix/window.c:856 CrushTree Frame 11: /usr/bin/X (FreeClientResources+0xd5) [0x44c825] /usr/src/debug/xorg-server-1.10.4/dix/resource.c:855 FreeClientResources Frame 12: /usr/bin/X (CloseDownClient+0x5e) [0x42e26e] /usr/src/debug/xorg-server-1.10.4/dix/dispatch.c:3465 CloseDownClient Frame 13: /usr/bin/X (0x400000+0x2ed1f) [0x42ed1f] /usr/src/debug/xorg-server-1.10.4/dix/dispatch.c:3480 KillAllClients Frame 14: /usr/bin/X (0x400000+0x22e1a) [0x422e1a] /usr/src/debug/xorg-server-1.10.4/dix/main.c:296 main
I haven't been able to reproduce this since moving to F16 and turning my fancy screensaver back on, so I suppose I'll just close this out.