#605051 xserver-xorg: Cannot run "Xorg -configure" on PowerPC

Package:
xserver-xorg-core
Source:
xorg-server
Description:
Xorg X server - core server
Submitter:
Alexander Tait Brotman
Date:
2011-11-04 15:27:17 UTC
Severity:
important
#605051#5
Date:
2010-11-26 15:01:16 UTC
From:
To:
I was trying to configure an Apple Mini to output to an LCD TV via the VGA port.  At one point, this system worked with Lenny, but neither
a full-upgrade nor fresh install of squeeze give any X output.

The autodection mechanism for Xorg does not work, so I was trying to create an xorg.conf to try some manual config, when I run "Xorg -configure",
I get the following:
----------------------------------------------

# Xorg -configure

X.Org X Server 1.7.7
Release Date: 2010-05-04
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.26-2-powerpc64 ppc Debian
Current Operating System: Linux mymac 2.6.32-5-powerpc #1 Sat Oct 30 23:26:42 UTC 2010 ppc
Kernel command line: root=/dev/hda7 ro
Build Date: 12 November 2010  12:24:58AM
xorg-server 2:1.7.7-9 (Julien Cristau <jcristau@debian.org>)
Current version of pixman: 0.16.4
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Fri Nov 26 09:52:38 2010
List of video drivers:
        chips
        ati
        trident
        nv
        s3virge
        radeonhd
        s3
        tdfx
        radeon
        nouveau
        mga
        mach64
        savage
        r128
        sisusb
        sis
        fbdev
(++) Using config file: "/root/xorg.conf.new"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(II) [KMS] No DRICreatePCIBusID symbol, no kernel modesetting.

Backtrace:
0: Xorg (xorg_backtrace+0x58) [0x10071658]
1: Xorg (0x10000000+0x7a6a0) [0x1007a6a0]
2: (vdso) (__kernel_sigtramp_rt32+0x0) [0x100370]
3: /usr/lib/xorg/modules/libint10.so (xf86ExtendedInitInt10+0x380) [0xf285de0]
4: /usr/lib/xorg/modules/libvbe.so (VBEExtendedInit+0x320) [0xf2ca910]
5: /usr/lib/xorg/modules/libvbe.so (VBEInit+0x28) [0xf2caab8]
6: /usr/lib/xorg/modules/drivers/radeon_drv.so (0xf5bb000+0x434c0) [0xf5fe4c0]
7: Xorg (DoConfigure+0xda4) [0x100867c4]
8: Xorg (InitOutput+0x1ec) [0x1007ca2c]
9: Xorg (0x10000000+0x1cf34) [0x1001cf34]
10: /lib/libc.so.6 (0xfacb000+0x1f63c) [0xfaea63c]
11: /lib/libc.so.6 (0xfacb000+0x1f800) [0xfaea800]
Bus error at address 0x48170000

Fatal server error:
Caught signal 7 (Bus error). Server aborting


Please consult the The X.Org Foundation support
         at http://wiki.x.org
 for help.
Please also check the log file at "/var/log/Xorg.0.log" for additional information.

Aborted
----------------------------------------------------- I have not tested the system with a standard monitor, but I don't think that would impact the ability/failure to be able to run "Xorg -configure" If you need more information, please let me know. Thank you. $ lspci -nn 0000:00:0b.0 Host bridge [0600]: Apple Computer Inc. UniNorth 2 AGP [106b:0034] 0000:00:10.0 VGA compatible controller [0300]: ATI Technologies Inc RV280 [Radeon 9200] [1002:5962] (rev 01) 0001:10:0b.0 Host bridge [0600]: Apple Computer Inc. UniNorth 2 PCI [106b:0035] 0001:10:12.0 Network controller [0280]: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller [14e4:4320] (rev 03) 0001:10:17.0 Unassigned class [ff00]: Apple Computer Inc. KeyLargo/Intrepid Mac I/O [106b:003e] 0001:10:18.0 USB Controller [0c03]: Apple Computer Inc. KeyLargo/Intrepid USB [106b:003f] 0001:10:19.0 USB Controller [0c03]: Apple Computer Inc. KeyLargo/Intrepid USB [106b:003f] 0001:10:1a.0 USB Controller [0c03]: Apple Computer Inc. KeyLargo/Intrepid USB [106b:003f] 0001:10:1b.0 USB Controller [0c03]: NEC Corporation USB [1033:0035] (rev 43) 0001:10:1b.1 USB Controller [0c03]: NEC Corporation USB [1033:0035] (rev 43) 0001:10:1b.2 USB Controller [0c03]: NEC Corporation USB 2.0 [1033:00e0] (rev 04) 0002:20:0b.0 Host bridge [0600]: Apple Computer Inc. UniNorth 2 Internal PCI [106b:0036] 0002:20:0d.0 Unassigned class [ff00]: Apple Computer Inc. UniNorth/Intrepid ATA/100 [106b:003b] 0002:20:0e.0 FireWire (IEEE 1394) [0c00]: Apple Computer Inc. UniNorth 2 FireWire [106b:0031] (rev 81) 0002:20:0f.0 Ethernet controller [0200]: Apple Computer Inc. UniNorth 2 GMAC (Sun GEM) [106b:0032] (rev ff)
#605051#10
Date:
2010-11-30 01:40:35 UTC
From:
To:
reassign 605051 xserver-xorg-core 2:1.7.7-9
thanks

Hi,

and thanks for your report.

Alexander Tait Brotman <atbrotman@yahoo.com> (26/11/2010):

I guess it would be nice to get a bugreport when using no xorg.conf at
all, so that we can try and figure out what happens. Please file a
separate one (against xserver-xorg-core), we're going to keep that one
for the -configure issue.

Confirmed on my iBook.

Full backtrace for reference (until somebody debugs it further):

(gdb) bt full
#0  0x0effde04 in read_legacy_video_BIOS (entityIndex=0, Flags=<value optimized out>) at ../../../../hw/xfree86/int10/generic.c:105
        len = 0
        pagemask = <value optimized out>
        offset = 786432
        size = 131072
        ptr = 0x4816b000 <Address 0x4816b000 out of bounds>
        src = 0x4816b000 <Address 0x4816b000 out of bounds>
#1  xf86ExtendedInitInt10 (entityIndex=0, Flags=<value optimized out>) at ../../../../hw/xfree86/int10/generic.c:247
        pInt = 0x10220c08
        vbiosMem = 0x4811a008
        options = 0x0
        screen = 0
        vga = {save_msr = 32 ' ', save_pos102 = 0 '\000', save_vse = 4 '\004', save_46e8 = 34 '"'}
#2  0x0f042910 in VBEExtendedInit (pInt=0x0, entityIndex=0, Flags=0) at ../../../../hw/xfree86/vbe/vbe.c:68
        RealOff = <value optimized out>
        page = <value optimized out>
        pScrn = <value optimized out>
        init_int10 = 0
        vip = <value optimized out>
        screen = 0
#3  0x0f042ab8 in VBEInit (pInt=<value optimized out>, entityIndex=<value optimized out>) at ../../../../hw/xfree86/vbe/vbe.c:46
No locals.
#4  0x0f5004c0 in RADEONProbeDDC (pScrn=0x1022ca08, flags=<value optimized out>) at ../../src/radeon_driver.c:2938
No locals.
#5  RADEONPreInit (pScrn=0x1022ca08, flags=<value optimized out>) at ../../src/radeon_driver.c:3054
        info = 0x1022fb40
        int10_save = 0x0
        s = <value optimized out>
        pRADEONEnt = 0x1022ce68
#6  0x100867c4 in DoConfigure () at ../../../../hw/xfree86/common/xf86Configure.c:832
        ScreenPtr = 0x0
        i = <value optimized out>
        j = 0
        screennum = <value optimized out>
        home = <value optimized out>
        filename = "/root/xorg.conf.new\000\n@\200\375\000\000\000\004\000\024\000\001\376\200\000\000\000\000\000\000\000\000\377\377\377\377\377\377\000\024\000\006\377\377\377\377/etc/X42.hosts\000fo_fast\000\000\000$\000\016", '\000' <repeats 20 times>, "߉8\000\000)\000\000\377\377\377\377\000\n\000\001\000\024Q\025\063$\000\000\000\n\000\002\377\377\377\377\377\377\000\000\000`\000\a", '\000' <repeats 95 times>"\360, \000\020\000\002L\364Ta\000\000\f\352\000\000\000\001\000\000\000\003\000\001\020C\000\000\000\000\000\t\000\003eth2\000\000\000\000\000\b\000\r\000\000\003\350\000\005\000\020\006\000\000\000\000\005\000\021\001\000\000\000\000\b\000\004\000\000\005\334\000\a\000\006mq\000\000\000$\000\016", '\000' <repeats 28 times>"\377"...
        addslash = <value optimized out>
        vlist = <value optimized out>
        vl = <value optimized out>
#7  0x1007ca2c in InitOutput (pScreenInfo=0x101f408c, argc=3, argv=0xbffff844) at ../../../../hw/xfree86/common/xf86Init.c:610
        i = <value optimized out>
        j = <value optimized out>
        k = <value optimized out>
        scr_index = <value optimized out>
        modulelist = <value optimized out>
        optionlist = <value optimized out>
        layout = <value optimized out>
        screenpix24 = <value optimized out>
        pix24 = <value optimized out>
        pix24From = <value optimized out>
        autoconfig = 0
        configured_device = <value optimized out>
#8  0x1001cf34 in main (argc=3, argv=0xbffff844, envp=<value optimized out>) at ../../dix/main.c:201
        i = 270483532
        alwaysCheckForInput = {0, 1}

Mraw,
KiBi.

#605051#21
Date:
2010-11-30 02:08:55 UTC
From:
To:
Cyril Brulebois <kibi@debian.org> (30/11/2010):
(gdb) p dev
$4 = <value optimized out>
(gdb) p !dev
$5 = 1

So maybe read_legacy_video_BIOS() or its caller should error out long
before that happens? Oh, wait, in the caller:
|     /* FIXME: Shouldn't this be a failure case?  Leaving dev as NULL seems like
|      * FIXME: an error
|      */
|     pInt->dev = xf86GetPciInfoForEntity(entityIndex);

I'm attaching a (currently untested) patch, which does two things:
 - create a new error2 label, which replaces the error1 one, keeping
   "UnmapVRam(pInt);" out of it; and replace all "goto error1;" with
   "goto error2;" accordingly.
 - check for NULL and "goto error1;" accordingly; indeed,
   "MapVRam(pInt);" hasn't been called at this stage.

If that turns out to work fine, it'll probably be included at two
separate patches.

I'd be glad if you could give this patch (against the xorg-server
package) a try.

Mraw,
KiBi.

#605051#26
Date:
2011-11-03 19:55:46 UTC
From:
To:
I'm running sid on a powerpc mac mini with similar arrangement to the
one submitted as #605051.

Xorg -configure does not Segfault or Bus Error (though it does return an
non-zero return code):
#646025.

i'm happy to provide more detailed reporting from this system if that
would be useful.  please let me know what you'd like to see.

hth,

#605051#29
Date:
2011-11-03 19:55:46 UTC
From:
To:
I'm running sid on a powerpc mac mini with similar arrangement to the
one submitted as #605051.

Xorg -configure does not Segfault or Bus Error (though it does return an
non-zero return code):
#646025.

i'm happy to provide more detailed reporting from this system if that
would be useful.  please let me know what you'd like to see.

hth,

#605051#34
Date:
2011-11-03 21:03:27 UTC
From:
To:
I was planning to update this machine to Wheezy, I can retest this.  I still owe the BTS another bug about the driver regression anyway, so I could hopefully test that also.



I'm running sid on a powerpc mac mini with similar arrangement to the
one submitted as #605051.

Xorg -configure does not Segfault or Bus Error (though it does return an
non-zero return code):
#646025.

i'm happy to provide more detailed reporting from this system if that
would be useful.  please let me know what you'd like to see.

hth,

    --dkg

#605051#39
Date:
2011-11-04 15:26:39 UTC
From:
To:
I can confirm the same activity as David.  No longer segfaults.

The driver itself still seems regressed.  It did work in Lenny, I cannot get a usable screen through auto-detection with Squeeze or Wheezy.