[i815] Segfault in libint10 when restarting xserver or using custom xorg.conf

Bug #532579 reported by TJ
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
xorg-server (Ubuntu)
Invalid
Low
Unassigned

Bug Description

Binary package hint: xorg

With the Lucid LiveCD Ubuntu/Xubuntu i386 images (2010-03-04), xserver crashes on all but the first start with a seg-fault in libint10. In other words, after stopping gdm ("sudo stop gdm") and trying to start it subsequently ("sudo start gdm"), this error occurs:

-----
X.Org X Server 1.7.5
Release Date: 2010-02-16
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.24-23-server i686 Ubuntu
Current Operating System: Linux ubuntu 2.6.32-15-generic #22-Ubuntu SMP Tue Mar 2 02:24:17 UTC 2010 i686
Kernel command line: boot=casper netboot=nfs nfsroot=10.254.251.2:/srv/boot/iso-image/xubuntu-10.04-desktop-i386 initrd=iso-image/xubuntu-10.04-desktop-i386/casper/initrd.lz BOOT_IMAGE=iso-image/xubuntu-10.04-desktop-i386/casper/vmlinuz
Build Date: 02 March 2010 04:54:59PM
xorg-server 2:1.7.5-1ubuntu2 (buildd@)
Current version of pixman: 0.16.4
...
(--) PCI:*(0:0:2:0) 8086:1132:104d:80f2 Intel Corporation 82815 Chipset Graphics Controller (CGC) rev 17, Mem @ 0xf8000000/67108864, 0xf4000000/524288
...
(II) Loading sub module "int10"
(II) LoadModule: "int10"
(II) Loading /usr/lib/xorg/modules/libint10.so
(II) Module int10: vendor="X.Org Foundation"
        compiled for 1.7.5, module version = 1.0.0
        ABI class: X.Org Video Driver, version 6.0
(II) intel(0): initializing int10
(II) intel(0): Primary V_BIOS segment is: 0xc000

Backtrace:
0: /usr/bin/X (xorg_backtrace+0x3b) [0x80e880b]
1: /usr/bin/X (0x8048000+0x61aed) [0x80a9aed]
2: (vdso) (__kernel_rt_sigreturn+0x0) [0x5ce410]
3: /usr/lib/xorg/modules/libint10.so (0x3a1000+0xa312) [0x3ab312]
4: /usr/lib/xorg/modules/libint10.so (0x3a1000+0x18ab3) [0x3b9ab3]
5: /usr/lib/xorg/modules/libint10.so (xf86ExecX86int10+0x55) [0x3a5475]
6: /usr/lib/xorg/modules/libvbe.so (VBEExtendedInit+0x91) [0xe59ca1]
7: /usr/lib/xorg/modules/libvbe.so (VBEInit+0x2c) [0xe5a0cc]
8: /usr/lib/xorg/modules/drivers/intel_drv.so (0x479000+0xd52a) [0x48652a]
9: /usr/bin/X (InitOutput+0x5c8) [0x80b9a18]
10: /usr/bin/X (0x8048000+0x1eb7b) [0x8066b7b]
11: /lib/tls/i686/cmov/libc.so.6 (__libc_start_main+0xe6) [0x199bd6]
12: /usr/bin/X (0x8048000+0x1e921) [0x8066921]
Segmentation fault at address (nil)

Caught signal 11 (Segmentation fault). Server aborting
-----

Tags: lucid xubuntu
Bryce Harrington (bryce)
affects: xorg (Ubuntu) → xorg-server (Ubuntu)
TJ (tj)
summary: - [Lucid] Segfault in libint10 when restarting xserver
+ [Lucid] Segfault in libint10 when restarting xserver or using custom
+ xorg.conf
Revision history for this message
TJ (tj) wrote : Re: [Lucid] Segfault in libint10 when restarting xserver or using custom xorg.conf

I've discovered this bug bites if a custom xorg.conf is used to set the monitor data-rates for displays that don't provide EDID/DDC data (see bug #288807 "[i815] Wrong resolution on Vaio PCG-SRX51, PCG-SRX41 and PCG-FX370 due to incorrect h/v rates ").

In this case the xorg.conf that works successfully for Karmic 9.10 with Xubuntu causes this bug with Lucid 10.04 Xubuntu. Without the custom xorg.conf the xserver will start but only with a lower resolution and using only a small part of the LCD area.

I've attached a tar.gz archive that contains the custom xorg.conf, the user .xsession-errors, and all the logs from /var/log/ captured after a clean boot. The /var/log/Xorg* and /var/log/gdm/* logs were deleted prior to restart so the logs contained in the archive relate to the current start only.

----- xorg.conf -----
Section "Device"
 Identifier "Intel Corporation 82815 CGC"
 Driver "intel"
EndSection

Section "Monitor"
 Identifier "LCD Panel 1024x768"
 Option "DPMS"
 HorizSync 28-64
 VertRefresh 43-60
EndSection

Section "Screen"
 Identifier "Default Screen"
 Device "Intel Corporation 82815 CGC"
 Monitor "LCD Panel 1024x768"
 DefaultDepth 16
 SubSection "Display"
  Modes "1024x768"
 EndSubSection
EndSection

Section "ServerLayout"
 Identifier "Default Layout"
 Screen "Default Screen"
EndSection

Revision history for this message
TJ (tj) wrote :

I found that the cause of this problem is that, when using the custom xorg.conf (and presumably failsafes?), the vesa module isn't loaded. Simply adding a Modules section to the custom xorg.conf solved the issue:

Section "Module"
  Load "vesa"
EndSection

This combined with the custom monitor settings finally allows Lucid to display 1024x768 across the full LCD, which allows the woraround for bug #288807 to function again.

Bryce Harrington (bryce)
tags: added: lucid
Revision history for this message
Bryce Harrington (bryce) wrote :

Sorry, but the i815 is no longer supported upstream.

Also, do not attach files to bug reports in tarballs, because it makes it more difficult to review the files.

summary: - [Lucid] Segfault in libint10 when restarting xserver or using custom
+ [i815] Segfault in libint10 when restarting xserver or using custom
xorg.conf
Changed in xorg-server (Ubuntu):
importance: Undecided → Low
status: New → Incomplete
Bryce Harrington (bryce)
tags: added: xubuntu
Revision history for this message
Bryce Harrington (bryce) wrote :

We're closing this bug since it is has been some time with no response from the original reporter. However, if the issue still exists please feel free to reopen with the requested information. Also, if you could, please test against the latest development version of Ubuntu, since this confirms the bug is one we may be able to pass upstream for help.

Changed in xorg-server (Ubuntu):
status: Incomplete → Invalid
Revision history for this message
Midas (m1da5) wrote :

[SOLVED] My problem was somewhat different (see below), but the solution TJ suggested worked wonders for me. Thanks. :))

Problem: Having installed Linux Mint 9 LXDE on an elderly HP Vectra VL400 workstation (PIII 1GHz, 512MB RAM, 20GB HDD), the graphic UI was available, but my maximum resolution would be 800x600x60Hz and I had no 'xorg.conf' file in '/etc/X11/'. Querying with lspci returned the following adapter identification:

00:02.0 VGA compatible controller: Intel Corporation 82815 Chipset Graphics Controller (CGC) (rev 02)

Thus began my two day ordeal. After searching high and low, reading leaft and right, a lot of brow wrinkling, pencil sucking, and hair pulling, I was exactly where I started, with zero results. I saw elsewhere (http://ohioloco.ubuntuforums.org/showthread.php?t=1484137) how this predicament could be solved by installing the latest libdrm, which I did to no avail. I even tried building a new xorg.conf by hand, and failed miserably, attesting the real depth of my noobiness. The system wouldn't even start, so I had to launch the livecd to delete that xorg.conf...

But eventually that was the seed for the solution: after some more editing, including the Section "Module" suggested by TJ, I rebooted and everything automagically worked -- without further ado, I now have 1024x768x85Hz, which is rather more bearable to work with. So here's the healing xorg.conf:

----- xorg.conf -----

Section "Device"
 Identifier "Intel Corporation 82815 CGC"
 Driver "intel"
# Driver "vesa"
EndSection

Section "Monitor"
 Identifier "Monitor0"
 VendorName "DEC"
 ModelName "VRT17-HA"
 Option "DPMS"
 HorizSync 29-82
 VertRefresh 50-150
EndSection

Section "Screen"
 Identifier "Default Screen"
 Device "Intel Corporation 82815 CGC"
 Monitor "Monitor0"
 DefaultDepth 16
 SubSection "Display"
  Depth 16
  Modes "1024x768" "800x600" "640x480"
 EndSubSection
EndSection

Section "Server Layout"
 Identifier "Default Layout"
 Screen "Default Screen"
EndSection

Section "Module"
 Load "vesa"
EndSection

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.