Created attachment 87768 [details] Xorg.0.log logfile and GDB session tarball The X server segfaults when certain X apps are invoked (eg. the Gimp, Firefox, Thunderbird which all use Gtk). With simple X apps (eg. xterm, xcalc) there is no problem. H/W + S/W details: Distro: Slackware current. Kernel: 3.9.9 Graphics adapter: SuperMicro X5DPA onboard graphics. Results from lspci, # lspci -s 01:04.0 -vv 01:04.0 VGA compatible controller: Advanced Micro Devices [AMD] nee ATI Rage XL (rev 27) (prog-if 00 [VGA controller]) Subsystem: Advanced Micro Devices [AMD] nee ATI Rage XL Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 64 (2000ns min), Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 11 Region 0: Memory at fd000000 (32-bit, non-prefetchable) [size=16M] Region 1: I/O ports at b000 [size=256] Region 2: Memory at fe6ff000 (32-bit, non-prefetchable) [size=4K] Expansion ROM at fe6c0000 [disabled] [size=128K] Capabilities: [5c] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME- Xorg S/W configuration: # /usr/bin/X -version X.Org X Server 1.14.3 Release Date: 2013-09-12 X Protocol Version 11, Revision 0 Build Operating System: Slackware 14.1 Slackware Linux Project Current Operating System: Linux mklab 3.9.9-smp #1 SMP Fri Jul 5 20:07:07 CDT 2013 i686 Kernel command line: auto BOOT_IMAGE=lin-smp-3.9.9 ro root=fd00 Build Date: 15 October 2013 03:19:29AM Current version of pixman: 0.30.2 Before reporting problems, check http://wiki.x.org to make sure that you have the latest version. I have rebuilt the X server from source using the Distro's build scripts but with CFLAGS=-g -O0. I have no /etc/X11/xorg.conf or /etc/X11/xorg.conf.d files. Xorg is invoked by kdm using '/usr/bin/X -br -novtswitch -quiet :0 vt7 -nolisten tcp -auth /var/run/xauth/A:0-2EbFha'. Following is the last part of the Xorg.0.log file. The complete file is included as an attachment. [399059.006] (EE) [399059.006] (EE) Backtrace: [399059.006] (EE) 0: /usr/bin/X (xorg_backtrace+0x47) [0x822813b] [399059.006] (EE) 1: /usr/bin/X (0x8048000+0x1e4f95) [0x822cf95] [399059.006] (EE) 2: linux-gate.so.1 (__kernel_rt_sigreturn+0x0) [0xffffe40c] [399059.006] (EE) 3: /usr/lib/xorg/modules/drivers/mach64_drv.so (0xb6fff000+0x2cd97) [0xb702bd97] [399059.006] (EE) 4: /usr/lib/xorg/modules/drivers/mach64_drv.so (0xb6fff000+0x2ce7c) [0xb702be7c] [399059.006] (EE) 5: /usr/lib/xorg/modules/libexa.so (0xb6647000+0x104e1) [0xb66574e1] [399059.006] (EE) 6: /usr/lib/xorg/modules/libexa.so (0xb6647000+0x10c50) [0xb6657c50] [399059.006] (EE) 7: /usr/lib/xorg/modules/libexa.so (0xb6647000+0xdd14) [0xb6654d14] [399059.006] (EE) 8: /usr/lib/xorg/modules/libexa.so (0xb6647000+0xe640) [0xb6655640] [399059.006] (EE) 9: /usr/bin/X (0x8048000+0x1483c8) [0x81903c8] [399059.006] (EE) 10: /usr/bin/X (CompositeGlyphs+0xaa) [0x817cbb1] [399059.007] (EE) 11: /usr/bin/X (0x8048000+0x13f25b) [0x818725b] [399059.007] (EE) 12: /usr/bin/X (0x8048000+0x140c5c) [0x8188c5c] [399059.007] (EE) 13: /usr/bin/X (0x8048000+0x2afd6) [0x8072fd6] [399059.007] (EE) 14: /usr/bin/X (0x8048000+0x1d23a) [0x806523a] [399059.007] (EE) 15: /lib/libc.so.6 (__libc_start_main+0xf3) [0xb713f7a3] [399059.007] (EE) 16: /usr/bin/X (0x8048000+0x1cb61) [0x8064b61] [399059.007] (EE) [399059.007] (EE) Segmentation fault at address 0xc [399059.007] (EE) Fatal server error: [399059.007] (EE) Caught signal 11 (Segmentation fault). Server aborting [399059.007] (EE) [399059.007] (EE) Please consult the The X.Org Foundation support at http://wiki.x.org for help. [399059.007] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information. [399059.007] (EE) [399059.023] (EE) Server terminated with error (1). Closing log file. Gdb debugging session: Attaching gdb to the running /usr/bin/X process and starting the Gimp to trigger the segfault reveals more information. Please see the attached file. Please let me know if any other information is needed. Thanks for your help. Tom Crane.
I have discovered that enabling the xorg.conf option "ExaNoComposite" as noted at https://wiki.archlinux.org/index.php/mach64 provides a workaround and avoids the segfault triggered previously by X apps such as the Gimp. Tom Crane
Some further investigation with gdb: The problems at xf86-video-mach64-6.9.4/src/atimach64render.c, Mach64CheckTexture(PicturePtr pPict) { int w = pPict->pDrawable->width; occurs when pPict->pDrawable == NULL, the final pointer dereference pPict->pDrawable->width then causes the segfault. I found the patch at http://lists.x.org/archives/xorg-devel/2013-June/036430.html is a workaround and allows the xorg.conf ExaNoComposite option to be turned off and my brief initial tests gave much improved accelerated graphics performance and no more segfaults. Could I request the patch be incorporated into the next release? Thanks Tom Crane.
That patch has already been pushed to git master for the next release: http://cgit.freedesktop.org/xorg/driver/xf86-video-mach64/commit/?id=2c83b465b336a012f2d2716940bf483358388000
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xorg/driver/xf86-video-mach64/issues/1.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.