Bug 19948

Summary: segfault in mode selection -- VidModeGetNumOfModes()
Product: xorg Reporter: Bryce Harrington <bryce>
Component: Server/DDX/XorgAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED DUPLICATE QA Contact: Xorg Project Team <xorg-team>
Severity: major    
Priority: high    
Version: unspecified   
Hardware: x86 (IA32)   
OS: Linux (All)   
URL: https://bugs.edge.launchpad.net/ubuntu/+source/xorg-server/+bug/300310
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg.0.log.old none

Description Bryce Harrington 2009-02-04 02:15:42 UTC
Created attachment 22567 [details]
Xorg.0.log.old

Forwarding this bug from a Ubuntu reporter:
https://bugs.edge.launchpad.net/ubuntu/+source/xorg-server/+bug/300310

[Problem]
xserver is crashing in video mode selection when using -ati (-fglrx is ok) when starting an SDL application.  Maybe it just needs a check for the NULL pointer?

[Backtrace]
#0 VidModeGetFirstModeline (scrnIndex=<value optimized out>, mode=0x7fff7e25b778,
    dotClock=0x7fff7e25b784) at ../../../../hw/xfree86/common/xf86VidMode.c:229
        pScrn = (ScrnInfoPtr) 0x25925b0
#1 0x0000000000485a32 in VidModeGetNumOfModes (scrnIndex=39526608)
    at ../../../../hw/xfree86/common/xf86VidMode.c:451
        mode = (pointer) 0x0
        dotClock = 0
        nummodes = 0
#2 0x00007f82738f5031 in ProcXF86VidModeGetAllModeLines (client=0x289ea60)
    at ../../../../../hw/xfree86/dixmods/extmod/xf86vmode.c:534
        rep = {type = 40 '(', pad1 = 69 'E', sequenceNumber = 126, length = 0, modecount = 4527588,
  pad2 = 0, pad3 = 0, pad4 = 0, pad5 = 42592864, pad6 = 0}
        mdinf = {dotclock = 0, hdisplay = 0, hsyncstart = 0, hsyncend = 0, htotal = 0, hskew = 0,
  vdisplay = 0, vsyncstart = 0, vsyncend = 0, vtotal = 0, pad1 = 16751, flags = 0, reserved1 = 0,
  reserved2 = 0, reserved3 = 39886816, privsize = 0}
        oldmdinf = {dotclock = 8275232, hdisplay = 0, hsyncstart = 0, hsyncend = 134, htotal = 0,
  vdisplay = 0, vsyncstart = 0, vsyncend = 30928, vtotal = 633, flags = 0, privsize = 5319427}
        mode = <value optimized out>
        modecount = <value optimized out>
        dotClock = <value optimized out>
        ver = 2
#3 0x000000000044d6e4 in Dispatch () at ../../dix/dispatch.c:454
        result = <value optimized out>
        client = (ClientPtr) 0x289ea60
        nready = 0
        start_tick = 460
#4 0x00000000004336fd in main (argc=8, argv=0x7fff7e25ba48, envp=<value optimized out>)
    at ../../dix/main.c:441
        i = 1
        error = 0
        xauthfile = <value optimized out>
        alwaysCheckForInput = {0, 1}


[Original Report]
I'm not sure what should happen when I start an SDL application (like qemu/kvm) under X, but the X server crashing is definitely the wrong choice.

From the Xorg.0.log (attached):
Backtrace:
0: /usr/bin/X(xf86SigHandler+0x65) [0x480f35]
1: /lib/libc.so.6 [0x7f30fb7e4060]
2: /usr/bin/X(VidModeGetFirstModeline+0x85) [0x485995]
3: /usr/bin/X(VidModeGetNumOfModes+0x42) [0x485a32]
4: /usr/lib/xorg/modules/extensions//libextmod.so [0x7f30fb0fb031]
5: /usr/bin/X(Dispatch+0x364) [0x44d6e4]
6: /usr/bin/X(main+0x45d) [0x4336fd]
7: /lib/libc.so.6(__libc_start_main+0xe6) [0x7f30fb7cf466]
8: /usr/bin/X [0x432ad9]
Saw signal 11. Server aborting.

As you can see from the log I've got some X issues on this system anyway, so it might be a radeon driver bug as well. Might also be related to my other bug 298094.

mss@Otherland:~$ lsb_release -rd
Description: Ubuntu 8.10
Release: 8.10
mss@Otherland:~$ uname -a
Linux Otherland 2.6.27-7-generic #1 SMP Tue Nov 4 19:33:06 UTC 2008 x86_64 GNU/Linux
mss@Otherland:~$ apt-cache policy xserver-xorg xserver-xorg-video-ati xserver-xorg-video-radeon
xserver-xorg:
  Installed: 1:7.4~5ubuntu3
  Candidate: 1:7.4~5ubuntu3
  Version table:
 *** 1:7.4~5ubuntu3 0
        500 http://de.archive.ubuntu.com intrepid/main Packages
        100 /var/lib/dpkg/status
xserver-xorg-video-ati:
  Installed: 1:6.9.0+git20081003.f9826a56-0ubuntu2
  Candidate: 1:6.9.0+git20081003.f9826a56-0ubuntu2
  Version table:
 *** 1:6.9.0+git20081003.f9826a56-0ubuntu2 0
        500 http://de.archive.ubuntu.com intrepid/main Packages
        100 /var/lib/dpkg/status
xserver-xorg-video-radeon:
  Installed: 1:6.9.0+git20081003.f9826a56-0ubuntu2
  Candidate: 1:6.9.0+git20081003.f9826a56-0ubuntu2
  Version table:
 *** 1:6.9.0+git20081003.f9826a56-0ubuntu2 0
        500 http://de.archive.ubuntu.com intrepid/main Packages
        100 /var/lib/dpkg/status
Comment 1 Julien Cristau 2009-02-04 06:17:25 UTC

*** This bug has been marked as a duplicate of bug 19643 ***

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.