Xorg 1.5.1 SEGV on Solaris 10

Pat Kane pekane52 at gmail.com
Thu Nov 20 06:28:10 PST 2008


The PCI scanning code works much better if I boot into a 32bit Solaris kernel
rather than a 64bit one.

Does libpciaccess need special compiler options for 64bit machines?

Pat
---
P.S.  See bugzilla 17924 for grim details.

On Fri, Oct 3, 2008 at 10:57 AM, Pat Kane <pekane52 at gmail.com> wrote:
> I just got Xorg 1.5.1 built on my Solaris 10 box, with much advice
> from this list, thank you.
>
> The X server gets a SEGV while scanning the PCI bus, see debug output below,
> has anyone else seen this problem?
>
> Pat
> ---
>
> # mdb ./Xorg
>>:r
>
> X.Org X Server 1.5.1
> Release Date: 23 September 2008
> X Protocol Version 11, Revision 0
> Build Operating System: SunOS 5.10 i86pc
> Current Operating System: SunOS ultra20m2 5.10 i86pc
> Build Date: 03 October 2008  11:09:25AM
>
>        Before reporting problems, check http://wiki.x.org
>        to make sure that you have the latest version.
> Module Loader present
> Markers: (--) probed, (**) from config file, (==) default setting,
>        (++) from command line, (!!) notice, (II) informational,
>        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
> (==) Log file: "/big/homea/kane/HgRepo386/Xorg/var/log/Xorg.0.log",
> Time: Fri Oct  3 10:24:40 2008
> (EE) Unable to locate/open config file
> mdb: stop on SIGSEGV
> mdb: target stopped at:
> libpciaccess.so.0`probe_dev+0x328:      movb   %al,0xec(%ecx,%edx)
>> $C
> 08047bd8 libpciaccess.so.0`probe_dev+0x328(e, 8047c10, 8245540, fef83f49)
> 08047c48 libpciaccess.so.0`do_probe+0x8d(e, 8245540, fefb07e8, fef839f1)
> 08047c78 libpciaccess.so.0`pci_system_solx_devfs_create+0x106(59,
> 8218600, 8047c98, 80d26d9, 0, 8218600)
> 08047c88 libpciaccess.so.0`pci_system_init+0x1f(0, 8218600, 8047cd8,
> 80e866f, 821ac00, 6)
> 08047c98 xf86scanpci+0x1f(821ac00, 6, 0, 8047e48, 821b3c0, 8218600)
> 08047cd8 xf86PciProbe+0x26(8218600)
> 08047ce8 xf86BusProbe+0x18(fefdeb56, feffa288, 8047e48, 8243be0,
> 8218600, 8047d60)
> 08047d78 InitOutput+0x157(8244760, 1, 8047e00, 809a68a)
> 08047ddc main+0x397(1, 8047e00, 8047e08)
> 08047df4 _start+0x80(1, 8047eb0, 0, 8047eb5, 8047ec9, 8047ed6)
>> $?
> process id = 18649
> SIGSEGV: Segmentation Fault
> %cs = 0x003b            %eax = 0x0000006b
> %ds = 0x0043            %ebx = 0xfef94b84
> %ss = 0x0043            %ecx = 0x000121c8
> %es = 0x0043            %edx = 0x0824ad88
> %fs = 0x0000            %esi = 0x08245540
> %gs = 0x01c3            %edi = 0x08047e48
>
>  %eip = 0xfef83f0f libpciaccess.so.0`probe_dev+0x328
>  %ebp = 0x08047bd8
> %kesp = 0x00000000
>
> %eflags = 0x00010212
>  id=0 vip=0 vif=0 ac=0 vm=0 rf=1 nt=0 iopl=0x0
>  status=<of,df,IF,tf,sf,zf,AF,pf,cf>
>
>   %esp = 0x08047b80
> %trapno = 0xe
>   %err = 0x6
>> 0xfef83f0f::dis
> libpciaccess.so.0`probe_dev+0x306:      movl   0x10(%ebp),%eax
> libpciaccess.so.0`probe_dev+0x309:      movl   0x4(%eax),%edx
> libpciaccess.so.0`probe_dev+0x30c:      movl   %edx,%eax
> libpciaccess.so.0`probe_dev+0x30e:      shll   $0x5,%eax
> libpciaccess.so.0`probe_dev+0x311:      addl   %edx,%eax
> libpciaccess.so.0`probe_dev+0x313:      leal   0x0(,%eax,8),%ecx
> libpciaccess.so.0`probe_dev+0x31a:      movl   0x8(%esi),%edx
> libpciaccess.so.0`probe_dev+0x31d:      movl   -0x3c(%ebp),%eax
> libpciaccess.so.0`probe_dev+0x320:      andl   $0xff0000,%eax
> libpciaccess.so.0`probe_dev+0x325:      shrl   $0x10,%eax
> libpciaccess.so.0`probe_dev+0x328:      movb   %al,0xec(%ecx,%edx)    <---
> libpciaccess.so.0`probe_dev+0x32f:      movl   0x10(%ebp),%eax
> libpciaccess.so.0`probe_dev+0x332:      incl   0x4(%eax)
> libpciaccess.so.0`probe_dev+0x335:      cmpb   $0x0,-0x3a(%ebp)
>



More information about the xorg mailing list