X Core Dumps

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

X Core Dumps

Ray Lai
Hi,

I've been having X core dump on me when I resume from sleep on my
X40.  It's not completely reproducible, but I managed to get a core
dump: http://cyth.net/~ray/tmp/Xorg.core.gz.  Please let me know
if there is anything else I can do to help.

-Ray-

MALLOC_OPTIONS:
ray@x[~] ls -l /etc/malloc.conf
lrwxr-xr-x  1 root  wheel  5 Jan  5 22:24 /etc/malloc.conf -> AFGJP

xorg.conf:
Section "ServerLayout"
        Identifier     "X.org Configured"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
        RgbPath      "/usr/X11R6/lib/X11/rgb"
        ModulePath   "/usr/X11R6/lib/modules"
        FontPath     "/usr/X11R6/lib/X11/fonts/misc/"
        FontPath     "/usr/X11R6/lib/X11/fonts/TTF/"
        FontPath     "/usr/X11R6/lib/X11/fonts/Type1/"
        FontPath     "/usr/X11R6/lib/X11/fonts/CID/"
        FontPath     "/usr/X11R6/lib/X11/fonts/75dpi/"
        FontPath     "/usr/X11R6/lib/X11/fonts/100dpi/"
EndSection

Section "Module"
        Load  "dbe"
        Load  "extmod"
        Load  "glx"
        Load  "record"
        Load  "xtrap"
        Load  "freetype"
        Load  "type1"
EndSection

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "kbd"
EndSection

Section "InputDevice"
        Identifier  "Mouse0"
        Driver      "mouse"
        Option      "Protocol" "wsmouse"
        Option      "Device" "/dev/wsmouse"
        Option      "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
EndSection

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"
        ### [arg]: arg optional
        #Option     "NoAccel"                   # [<bool>]
        #Option     "SWcursor"                  # [<bool>]
        #Option     "ColorKey"                  # <i>
        #Option     "CacheLines"                # <i>
        #Option     "Dac6Bit"                   # [<bool>]
        #Option     "DRI"                       # [<bool>]
        #Option     "NoDDC"                     # [<bool>]
        #Option     "ShowCache"                 # [<bool>]
        #Option     "XvMCSurfaces"              # <i>
        #Option     "PageFlip"                  # [<bool>]
        Identifier  "Card0"
        Driver      "i810"
        VendorName  "Intel Corporation"
        BoardName   "82852/855GM Integrated Graphics Device"
        BusID       "PCI:0:2:0"
EndSection

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        SubSection "Display"
                Viewport   0 0
                Depth     1
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     4
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     8
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     15
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     16
        EndSubSection
        SubSection "Display"
                Viewport   0 0
                Depth     24
        EndSubSection
EndSection

Section "ServerFlags"
        Option  "NoTrapSignals" "true"
EndSection

dmesg:
OpenBSD 3.9-current (GENERIC) #672: Mon Apr  3 16:15:29 MDT 2006
    [hidden email]:/usr/src/sys/arch/i386/compile/GENERIC
cpu0: Intel(R) Pentium(R) M processor 1.50GHz ("GenuineIntel" 686-class) 1.50 GHz
cpu0: FPU,V86,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,TM,SBF,EST,TM2
cpu0: Enhanced SpeedStep 1500 MHz (1116 mV): speeds: 1500, 1400, 1300, 1200, 1100, 1000, 900, 800, 600 MHz
real mem  = 1600548864 (1563036K)
avail mem = 1452965888 (1418912K)
using 4278 buffers containing 80130048 bytes (78252K) of memory
mainbus0 (root)
bios0 at mainbus0: AT/286+(30) BIOS, date 06/15/05, BIOS32 rev. 0 @ 0xfd740
apm0 at bios0: Power Management spec V1.2
apm0: battery life expectancy 100%
apm0: AC on, battery charge high
apm0: flags 30102 dobusy 0 doidle 1
pcibios0 at bios0: rev 2.1 @ 0xfd6d0/0x930
pcibios0: PCI IRQ Routing Table rev 1.0 @ 0xfdeb0/256 (14 entries)
pcibios0: PCI Interrupt Router at 000:31:0 ("Intel 82371FB ISA" rev 0x00)
pcibios0: PCI bus #2 is the last bus
bios0: ROM list: 0xc0000/0xc800! 0xcc800/0x1000 0xcd800/0x1000 0xdc000/0x4000! 0xe0000/0x10000
cpu0 at mainbus0
pci0 at mainbus0 bus 0: configuration mode 1 (no bios)
pchb0 at pci0 dev 0 function 0 "Intel 82852GM Hub-PCI" rev 0x02
"Intel 82852GM Memory" rev 0x02 at pci0 dev 0 function 1 not configured
"Intel 82852GM Configuration" rev 0x02 at pci0 dev 0 function 3 not configured
vga1 at pci0 dev 2 function 0 "Intel 82852GM AGP" rev 0x02: aperture at 0xe0000000, size 0x8000000
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
"Intel 82852GM AGP" rev 0x02 at pci0 dev 2 function 1 not configured
uhci0 at pci0 dev 29 function 0 "Intel 82801DB USB" rev 0x01: irq 11
usb0 at uhci0: USB revision 1.0
uhub0 at usb0
uhub0: Intel UHCI root hub, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhci1 at pci0 dev 29 function 1 "Intel 82801DB USB" rev 0x01: irq 11
usb1 at uhci1: USB revision 1.0
uhub1 at usb1
uhub1: Intel UHCI root hub, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
uhci2 at pci0 dev 29 function 2 "Intel 82801DB USB" rev 0x01: irq 11
usb2 at uhci2: USB revision 1.0
uhub2 at usb2
uhub2: Intel UHCI root hub, rev 1.00/1.00, addr 1
uhub2: 2 ports with 2 removable, self powered
ehci0 at pci0 dev 29 function 7 "Intel 82801DB USB" rev 0x01: irq 11
usb3 at ehci0: USB revision 2.0
uhub3 at usb3
uhub3: Intel EHCI root hub, rev 2.00/1.00, addr 1
uhub3: 6 ports with 6 removable, self powered
ppb0 at pci0 dev 30 function 0 "Intel 82801BAM Hub-to-PCI" rev 0x81
pci1 at ppb0 bus 1
cbb0 at pci1 dev 0 function 0 "Ricoh 5C476 CardBus" rev 0x8d: irq 11
"Ricoh 5C822 SD/MMC" rev 0x13 at pci1 dev 0 function 1 not configured
em0 at pci1 dev 1 function 0 "Intel PRO/1000MT Mobile (82541GI)" rev 0x00: irq 11, address 00:0a:e4:34:0c:ed
wi0 at pci1 dev 2 function 0 "Intersil PRISM2.5" rev 0x01: irq 11
wi0: PRISM2.5 ISL3874A(Mini-PCI) (0x8013), Firmware 1.0.7 (primary), 1.3.6 (station), address 00:e0:00:61:8a:6d
cardslot0 at cbb0 slot 0 flags 0
cardbus0 at cardslot0: bus 2 device 0 cacheline 0x0, lattimer 0xb0
pcmcia0 at cardslot0
ichpcib0 at pci0 dev 31 function 0 "Intel 82801DBM LPC" rev 0x01
pciide0 at pci0 dev 31 function 1 "Intel 82801DBM IDE" rev 0x01: DMA, channel 0 configured to compatibility, channel 1 configured to compatibility
wd0 at pciide0 channel 0 drive 0: <HITACHI_DK13FA-40B>
wd0: 16-sector PIO, LBA, 38154MB, 78140160 sectors
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 5
pciide0: channel 1 disabled (no drives)
ichiic0 at pci0 dev 31 function 3 "Intel 82801DB SMBus" rev 0x01: irq 11
iic0 at ichiic0
auich0 at pci0 dev 31 function 5 "Intel 82801DB AC97" rev 0x01: irq 11, ICH4 AC97
ac97: codec id 0x41445374 (Analog Devices AD1981B)
ac97: codec features headphone, 20 bit DAC, No 3D Stereo
audio0 at auich0
"Intel 82801DB Modem" rev 0x01 at pci0 dev 31 function 6 not configured
isa0 at ichpcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
spkr0 at pcppi0
aps0 at isa0 port 0x1600/31
npx0 at isa0 port 0xf0/16: using exception 16
biomask effd netmask effd ttymask ffff
pctr: 686-class user-level performance counters enabled
mtrr: Pentium Pro MTRR support
dkcsum: wd0 matches BIOS drive 0x80
root on wd0a
rootdev=0x0 rrootdev=0x300 rawdev=0x302
auich0: measured ac97 link rate at 47996 Hz, will use 48000 Hz
wi0: wi_start: xmit failed

Reply | Threaded
Open this post in threaded view
|

Re: X Core Dumps

Matthieu Herrb
Ray Lai wrote:
> Hi,
>
> I've been having X core dump on me when I resume from sleep on my
> X40.  It's not completely reproducible, but I managed to get a core
> dump: http://cyth.net/~ray/tmp/Xorg.core.gz.  Please let me know
> if there is anything else I can do to help.
>

Please try to extract a stack trace yourself out of gdb. I don't have
your X server binary...

Usually X crashes on resume on the X40 because the graphics engines
locks up. The X server detects it and tries to exit cleanly, but
sometimes fails.

This has been identified by Alan Houriane, the main developper of the
i810 driver by a race problem between the APM BIOS that tells the OS
that the machine just woke up and the video BIOS which has not
completely restored the graphics chip set. He mentionned ACPI as a
possible way to "fix" that, but I think OpenBSD is far from having ACPI
suspend/resume support.

Reply | Threaded
Open this post in threaded view
|

Re: X Core Dumps

Theo de Raadt
> This has been identified by Alan Houriane, the main developper of the
> i810 driver by a race problem between the APM BIOS that tells the OS
> that the machine just woke up and the video BIOS which has not
> completely restored the graphics chip set. He mentionned ACPI as a
> possible way to "fix" that, but I think OpenBSD is far from having ACPI
> suspend/resume support.

Which just means he doesn't understand that on an IBM laptop APM is
implimented by doing exacly what the ACPI code does... by calling it.

If he doesn't want to work around mistakes in the hardware, it still
means he's coping out of doing the right thing.

Reply | Threaded
Open this post in threaded view
|

Re: X Core Dumps

Ray Lai
In reply to this post by Matthieu Herrb
On Mon, Apr 10, 2006 at 09:21:13PM +0200, Matthieu Herrb wrote:

> Ray Lai wrote:
> >Hi,
> >
> >I've been having X core dump on me when I resume from sleep on my
> >X40.  It's not completely reproducible, but I managed to get a core
> >dump: http://cyth.net/~ray/tmp/Xorg.core.gz.  Please let me know
> >if there is anything else I can do to help.
> >
>
> Please try to extract a stack trace yourself out of gdb. I don't have
> your X server binary...

Sorry, forgot to include that:

ray@x[~] gdb Xorg Xorg.core
GNU gdb 6.3
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-unknown-openbsd3.9"...
Core was generated by `Xorg'.
Program terminated with signal 6, Aborted.
Reading symbols from /usr/lib/libz.so.4.1...done.
Loaded symbols for /usr/lib/libz.so.4.1
Reading symbols from /usr/lib/libm.so.2.2...done.
Loaded symbols for /usr/lib/libm.so.2.2
Reading symbols from /usr/lib/libusbhid.so.3.0...done.
Loaded symbols for /usr/lib/libusbhid.so.3.0
Reading symbols from /usr/X11R6/lib/libXau.so.9.0...done.
Loaded symbols for /usr/X11R6/lib/libXau.so.9.0
Reading symbols from /usr/X11R6/lib/libXdmcp.so.9.0...done.
Loaded symbols for /usr/X11R6/lib/libXdmcp.so.9.0
Reading symbols from /usr/lib/libc.so.39.0...done.
Loaded symbols for /usr/lib/libc.so.39.0
Reading symbols from /usr/libexec/ld.so...done.
Loaded symbols for /usr/libexec/ld.so
Reading symbols from /usr/X11R6/lib/modules/fonts/libbitmap.so...done.
Loaded symbols for /usr/X11R6/lib/modules/fonts/libbitmap.so
Reading symbols from /usr/X11R6/lib/modules/libpcidata.so...done.
Loaded symbols for /usr/X11R6/lib/modules/libpcidata.so
Reading symbols from /usr/X11R6/lib/modules/extensions/libdbe.so...done.
Loaded symbols for /usr/X11R6/lib/modules/extensions/libdbe.so
Reading symbols from /usr/X11R6/lib/modules/extensions/libextmod.so...done.
Loaded symbols for /usr/X11R6/lib/modules/extensions/libextmod.so
Reading symbols from /usr/X11R6/lib/modules/extensions/libglx.so...done.
Loaded symbols for /usr/X11R6/lib/modules/extensions/libglx.so
Reading symbols from /usr/X11R6/lib/modules/extensions/libGLcore.so...done.
Loaded symbols for /usr/X11R6/lib/modules/extensions/libGLcore.so
Reading symbols from /usr/X11R6/lib/modules/extensions/librecord.so...done.
Loaded symbols for /usr/X11R6/lib/modules/extensions/librecord.so
Reading symbols from /usr/X11R6/lib/modules/extensions/libxtrap.so...done.
Loaded symbols for /usr/X11R6/lib/modules/extensions/libxtrap.so
Reading symbols from /usr/X11R6/lib/modules/fonts/libfreetype.so...done.
Loaded symbols for /usr/X11R6/lib/modules/fonts/libfreetype.so
Reading symbols from /usr/X11R6/lib/modules/fonts/libtype1.so...done.
Loaded symbols for /usr/X11R6/lib/modules/fonts/libtype1.so
Reading symbols from /usr/X11R6/lib/modules/drivers/i810_drv.so...done.
Loaded symbols for /usr/X11R6/lib/modules/drivers/i810_drv.so
Reading symbols from /usr/X11R6/lib/modules/input/mouse_drv.so...done.
Loaded symbols for /usr/X11R6/lib/modules/input/mouse_drv.so
Reading symbols from /usr/X11R6/lib/modules/input/kbd_drv.so...done.
Loaded symbols for /usr/X11R6/lib/modules/input/kbd_drv.so
Reading symbols from /usr/X11R6/lib/modules/libint10.so...done.
Loaded symbols for /usr/X11R6/lib/modules/libint10.so
Reading symbols from /usr/X11R6/lib/modules/libvbe.so...done.
Loaded symbols for /usr/X11R6/lib/modules/libvbe.so
Reading symbols from /usr/X11R6/lib/modules/libvgahw.so...done.
Loaded symbols for /usr/X11R6/lib/modules/libvgahw.so
Reading symbols from /usr/X11R6/lib/modules/libddc.so...done.
Loaded symbols for /usr/X11R6/lib/modules/libddc.so
Reading symbols from /usr/X11R6/lib/modules/libfb.so...done.
Loaded symbols for /usr/X11R6/lib/modules/libfb.so
Reading symbols from /usr/X11R6/lib/modules/libxaa.so...done.
Loaded symbols for /usr/X11R6/lib/modules/libxaa.so
Reading symbols from /usr/X11R6/lib/modules/libramdac.so...done.
Loaded symbols for /usr/X11R6/lib/modules/libramdac.so
#0  0x0ac439dd in kill () from /usr/lib/libc.so.39.0
(gdb) bt
#0  0x0ac439dd in kill () from /usr/lib/libc.so.39.0
#1  0x0ac800fb in abort () at /usr/src/lib/libc/stdlib/abort.c:65
#2  0x1c095875 in FatalError ()
#3  0x03f41290 in I830WaitLpRing () from /usr/X11R6/lib/modules/drivers/i810_drv.so
#4  0x03f4132b in I830Sync () from /usr/X11R6/lib/modules/drivers/i810_drv.so
#5  0x09dd1500 in XAALeaveVT () from /usr/X11R6/lib/modules/libxaa.so
#6  0x0fecba6e in xf86CursorLeaveVT () from /usr/X11R6/lib/modules/libramdac.so
#7  0x1c0622a7 in xf86XVLeaveVT ()
#8  0x1c027988 in AbortDDX ()
#9  0x1c0955ce in AbortServer ()
#10 0x1c095864 in FatalError ()
#11 0x03f41290 in I830WaitLpRing () from /usr/X11R6/lib/modules/drivers/i810_drv.so
#12 0x03f4132b in I830Sync () from /usr/X11R6/lib/modules/drivers/i810_drv.so
#13 0x09dd565c in XAACopyAreaFallback () from /usr/X11R6/lib/modules/libxaa.so
#14 0x09dd67c9 in XAACopyArea () from /usr/X11R6/lib/modules/libxaa.so
#15 0x1c103942 in damageCopyArea ()
#16 0x1c06f2fe in ProcCopyArea ()
#17 0x1c06d15b in Dispatch ()
#18 0x1c07def7 in main ()
(gdb)

-Ray-

Reply | Threaded
Open this post in threaded view
|

Re: X Core Dumps

Matthieu Herrb
Ray Lai wrote:

> On Mon, Apr 10, 2006 at 09:21:13PM +0200, Matthieu Herrb wrote:
>> Ray Lai wrote:
>>> Hi,
>>>
>>> I've been having X core dump on me when I resume from sleep on my
>>> X40.  It's not completely reproducible, but I managed to get a core
>>> dump: http://cyth.net/~ray/tmp/Xorg.core.gz.  Please let me know
>>> if there is anything else I can do to help.
>>>
>> Please try to extract a stack trace yourself out of gdb. I don't have
>> your X server binary...
>
> Sorry, forgot to include that:
>
> ray@x[~] gdb Xorg Xorg.core
> GNU gdb 6.3
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you are
> welcome to change it and/or distribute copies of it under certain conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "i386-unknown-openbsd3.9"...
> Core was generated by `Xorg'.
> Program terminated with signal 6, Aborted.
> Reading symbols from /usr/lib/libz.so.4.1...done.
> Loaded symbols for /usr/lib/libz.so.4.1
> Reading symbols from /usr/lib/libm.so.2.2...done.
> Loaded symbols for /usr/lib/libm.so.2.2
> Reading symbols from /usr/lib/libusbhid.so.3.0...done.
> Loaded symbols for /usr/lib/libusbhid.so.3.0
> Reading symbols from /usr/X11R6/lib/libXau.so.9.0...done.
> Loaded symbols for /usr/X11R6/lib/libXau.so.9.0
> Reading symbols from /usr/X11R6/lib/libXdmcp.so.9.0...done.
> Loaded symbols for /usr/X11R6/lib/libXdmcp.so.9.0
> Reading symbols from /usr/lib/libc.so.39.0...done.
> Loaded symbols for /usr/lib/libc.so.39.0
> Reading symbols from /usr/libexec/ld.so...done.
> Loaded symbols for /usr/libexec/ld.so
> Reading symbols from /usr/X11R6/lib/modules/fonts/libbitmap.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/fonts/libbitmap.so
> Reading symbols from /usr/X11R6/lib/modules/libpcidata.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/libpcidata.so
> Reading symbols from /usr/X11R6/lib/modules/extensions/libdbe.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/extensions/libdbe.so
> Reading symbols from /usr/X11R6/lib/modules/extensions/libextmod.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/extensions/libextmod.so
> Reading symbols from /usr/X11R6/lib/modules/extensions/libglx.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/extensions/libglx.so
> Reading symbols from /usr/X11R6/lib/modules/extensions/libGLcore.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/extensions/libGLcore.so
> Reading symbols from /usr/X11R6/lib/modules/extensions/librecord.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/extensions/librecord.so
> Reading symbols from /usr/X11R6/lib/modules/extensions/libxtrap.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/extensions/libxtrap.so
> Reading symbols from /usr/X11R6/lib/modules/fonts/libfreetype.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/fonts/libfreetype.so
> Reading symbols from /usr/X11R6/lib/modules/fonts/libtype1.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/fonts/libtype1.so
> Reading symbols from /usr/X11R6/lib/modules/drivers/i810_drv.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/drivers/i810_drv.so
> Reading symbols from /usr/X11R6/lib/modules/input/mouse_drv.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/input/mouse_drv.so
> Reading symbols from /usr/X11R6/lib/modules/input/kbd_drv.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/input/kbd_drv.so
> Reading symbols from /usr/X11R6/lib/modules/libint10.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/libint10.so
> Reading symbols from /usr/X11R6/lib/modules/libvbe.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/libvbe.so
> Reading symbols from /usr/X11R6/lib/modules/libvgahw.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/libvgahw.so
> Reading symbols from /usr/X11R6/lib/modules/libddc.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/libddc.so
> Reading symbols from /usr/X11R6/lib/modules/libfb.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/libfb.so
> Reading symbols from /usr/X11R6/lib/modules/libxaa.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/libxaa.so
> Reading symbols from /usr/X11R6/lib/modules/libramdac.so...done.
> Loaded symbols for /usr/X11R6/lib/modules/libramdac.so
> #0  0x0ac439dd in kill () from /usr/lib/libc.so.39.0
> (gdb) bt
> #0  0x0ac439dd in kill () from /usr/lib/libc.so.39.0
> #1  0x0ac800fb in abort () at /usr/src/lib/libc/stdlib/abort.c:65
> #2  0x1c095875 in FatalError ()
> #3  0x03f41290 in I830WaitLpRing () from /usr/X11R6/lib/modules/drivers/i810_drv.so
> #4  0x03f4132b in I830Sync () from /usr/X11R6/lib/modules/drivers/i810_drv.so
> #5  0x09dd1500 in XAALeaveVT () from /usr/X11R6/lib/modules/libxaa.so
> #6  0x0fecba6e in xf86CursorLeaveVT () from /usr/X11R6/lib/modules/libramdac.so
> #7  0x1c0622a7 in xf86XVLeaveVT ()
> #8  0x1c027988 in AbortDDX ()
> #9  0x1c0955ce in AbortServer ()
> #10 0x1c095864 in FatalError ()
> #11 0x03f41290 in I830WaitLpRing () from /usr/X11R6/lib/modules/drivers/i810_drv.so
> #12 0x03f4132b in I830Sync () from /usr/X11R6/lib/modules/drivers/i810_drv.so
> #13 0x09dd565c in XAACopyAreaFallback () from /usr/X11R6/lib/modules/libxaa.so
> #14 0x09dd67c9 in XAACopyArea () from /usr/X11R6/lib/modules/libxaa.so
> #15 0x1c103942 in damageCopyArea ()
> #16 0x1c06f2fe in ProcCopyArea ()
> #17 0x1c06d15b in Dispatch ()
> #18 0x1c07def7 in main ()
> (gdb)
>

That's the same trace than I sometimes get. The server is just
re-rentering FatalError, because it locks up the gfx engine a 2nd time
on the exit path. It would be more graceful to avoid this if possible,
but the server is already exiting anyways, so you won't gain much.

At least text mode is restored correctly most of the time.

Now to fix the real problem, I'm not sure if someone can get Intel to
provide real hardware docs to write a driver that's doesn't rely on the
BIOS or ACPI.

Such a effort was recently started by Eric Anholt, but I'm not sure if
he'll get support from Intel, even though he works for them now.

--
Matthieu