A few reports of Xserver segfaults when using a XDMCP session to Fedora 12 (Constantine) and Ubuntu 9.10 (Karmic) http://cygwin.com/ml/cygwin-xfree/2009-11/msg00152.html http://cygwin.com/ml/cygwin-xfree/2009-11/msg00000.html This seems to be due to a bad interaction between the damage tracking for the Composite extension and damage tracking for the shadow framebuffer. Where I have been able to reproduce the problem, disabling the composite extension with '-extension Composite' works around it. It's not clear why this hasn't bitten us before: nothing obviously relevant has changed in Xserver 1.7, but maybe we were just lucky, or it may be that Gnome in recent linux distros makes more extensive use of composite which tickles the bug.
Possibly relevant upstream report: http://lists.freedesktop.org/archives/xorg/2005-September/010150.html
A simple way to demonstrate this problem: - start xserver - start xcompmgr - start xterm - exit xterm
Created attachment 4405 [details] Patch to disable composite extension by default This looks like a fairly complex problem to solve, so perhaps as an interim measure disable compsite by default to stop XDMCP users tripping over this issue. We did discuss this back at http://sourceforge.net/mailarchive/forum.php?thread_name=4908A723.10405%40users.sourceforge.net&forum_name=cygwin-ports-general Updated patch attached
Might this be related? http://bugs.freedesktop.org/show_bug.cgi?id=25136
Confirmed. Composite was working fine before, so this is clearly a change in the server. I suspect Keith's 6 patches in master (d3e054a..a72c65e) may fix this, but they haven't been backported to 1.7 yet. In the meantime, as this appears to be completely broken, I'll just disable the Composite extension entirely in configure.
Unfortunately the backported fb patch posted to xorg-devel today doesn't help. :-( FWIW, here's a backtrace of the crash: 0x004cfaf0 in damageRegionAppend (pDrawable=0x1919560, pRegion=0x28cb48, clip=1, subWindowMode=1) at miext/damage/damage.c:290 290 if (pDamage->pDrawable->type == DRAWABLE_WINDOW && (gdb) bt #0 0x004cfaf0 in damageRegionAppend (pDrawable=0x1919560, pRegion=0x28cb48, clip=1, subWindowMode=1) at miext/damage/damage.c:290 #1 0x004cfd81 in damageDamageBox (pDrawable=0x1919560, pBox=<value optimized out>, subWindowMode=<value optimized out>) at miext/damage/damage.c:425 #2 0x004d0334 in damageComposite (op=1 '\001', pSrc=0x1dfefb8, pMask=0x0, pDst=0x1dfe970, xSrc=0, ySrc=0, xMask=0, yMask=0, xDst=0, yDst=0, width=1394, height=992) at miext/damage/damage.c:640 #3 0x00466fc1 in ProcRenderComposite (client=0x1db6830) at render/render.c:723 #4 0x004f05d6 in Dispatch () at dix/dispatch.c:445 #5 0x004e56aa in main (argc=1, argv=0x18b9ba0, envp=0xffffffff) at dix/main.c:285
Created attachment 4580 [details] Don't enable ROOTLESS_WORKAROUND, it breaks Composite
Nice work. Whether that opens up to http://bugs.freedesktop.org/show_bug.cgi? id=1168 will have to be seen, but this would only affect WindowsWM, so I'm not overly concerned. Patch in queue for 1.7.4.
WFM and at least one other person on the list. Patch committed and cherry-picked; closing.