Bug 1488

Summary: [Intel/i810] Xorg segfaults when using i810 drivers
Product: xorg Reporter: Dheeraj S <dheerajs>
Component: Driver/intelAssignee: Xorg Project Team <xorg-team>
Status: RESOLVED FIXED QA Contact:
Severity: critical    
Priority: highest CC: ajax, clkao, daniel+xorg, falkenbe, roland.mainz
Version: 6.8.1   
Hardware: x86 (IA32)   
OS: NetBSD   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
[FIXED_X11R68x] Convert REGION_INIT of NullBox to REGION_NULL roland.mainz: 6.8-branch+

Description Dheeraj S 2004-09-28 19:14:25 UTC
I am attaching a backtrace.
If i use NoAccel options, then it works, but not otherwise.

Also, if it works, it starts very slow.

please let me know it i can add anything further.
# uname -a
NetBSD cc335-lap01 2.0H NetBSD 2.0H (CC335-LAP01) #0: Tue Sep 28 14:11:47 EDT
2004  dheeraj@cc335-lap01:/usr/src/sys/arch/i386/compile/CC335-LAP01 i386


# gdb /usr/pkg/xorg/bin/Xorg Xorg.core
GNU gdb 5.3nb1
Copyright 2002 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--netbsdelf"...
Core was generated by `Xorg'.
Program terminated with signal 6, Aborted.
Reading symbols from /usr/libexec/ld.elf_so...done.
Loaded symbols for /usr/libexec/ld.elf_so
Reading symbols from /usr/lib/libz.so.0...done.
Loaded symbols for /usr/lib/libz.so.0
Reading symbols from /usr/lib/libm387.so.0...done.
Loaded symbols for /usr/lib/libm387.so.0
Reading symbols from /usr/lib/libm.so.0...done.
Loaded symbols for /usr/lib/libm.so.0
Reading symbols from /usr/lib/libi386.so.1...done.
Loaded symbols for /usr/lib/libi386.so.1
Reading symbols from /usr/lib/libc.so.12...done.
Loaded symbols for /usr/lib/libc.so.12
Reading symbols from /usr/pkg/xorg/lib/modules/fonts/libfreetype.so...done.
Loaded symbols for /usr/pkg/xorg/lib/modules/fonts/libfreetype.so
Reading symbols from /usr/pkg/lib/libfreetype.so.9...done.
Loaded symbols for /usr/pkg/lib/libfreetype.so.9
#0  0x48204813 in kill () from /usr/lib/libc.so.12
(gdb) bt f
#0  0x48204813 in kill () from /usr/lib/libc.so.12
No symbol table info available.
#1  0x4827e037 in abort () from /usr/lib/libc.so.12
No symbol table info available.
#2  0x0806e9bb in ddxGiveUp () at xf86Init.c:1227
        i = 0
#3  0x080d8f2e in AbortServer () at log.c:395
No locals.
#4  0x080d919c in FatalError (
    f=0x818f340 "Caught signal %d.  Server aborting\n") at log.c:541
        beenhere = 1
#5  0x080823b4 in xf86SigHandler (signo=11) at xf86Events.c:1294
        signo = 11
#6  <signal handler called>
No symbol table info available.
#7  0xbfbf001f in ?? ()
No symbol table info available.
#8  0x08736002 in ?? ()
No symbol table info available.
#9  0x0873202a in ?? ()
No symbol table info available.
#10 0x080c2ee8 in AddScreen (pfnInit=0x8731a7c, argc=3, argv=<incomplete type>)
    at main.c:773
---Type <return> to continue, or q <return> to quit---
        i = 0
        scanlinepad = 2110
        format = 0
        depth = 0
        bitsPerPixel = 143976704
        j = 0
        k = 142141440
        pScreen = 0x8755e00
        i = 0
        format = 0
        pScreen = 0x8755e00
#11 0x0806da0f in InitOutput (pScreenInfo=0x81e9160, argc=3, argv=0xbfbfeb68)
    at xf86Init.c:909
        i = 0
        j = 136400288
        k = 0
        scr_index = 2130312650
        generation = 1
        modulelist = (char **) 0x82188c0
        optionlist = (pointer *) 0x82824a0
        layout = 0x81f1400
        screenpix24 = 136400288
        pix24 = Pix24Use32
---Type <return> to continue, or q <return> to quit---
        pix24From = X_DEFAULT
        pix24Fail = 2110
        autoconfig = 136415424
#12 0x080c247e in main (argc=3, argv=<incomplete type>, envp=<incomplete type>)
    at main.c:365
        i = 256
        j = 2110
        k = 0
        error = 136165228
        xauthfile = 0x83e <Address 0x83e out of bounds>
        alwaysCheckForInput = {0, 1}
        error = 136165228
        alwaysCheckForInput = {0, 1}
#13 0x0806d366 in ___start ()
No symbol table info available.
(gdb)
?>
Comment 1 John Rumsey 2004-12-26 23:59:51 UTC
I have the same problem:
  Acer TravelMate 225X (i830 chipset)
  FreeBSD 5.3-Stable 25/12/2004
  xorg 8.6.1
Works OK (slowly!) with Option "NoAccel".
Segfaults (signal 11) without Option "NoAccel".
Comment 2 Ryan 2004-12-27 09:12:59 UTC
Having the same problem on Freebsd 5.3.

FreeBSD 5.3-STABLE
xorg-6.8.1
i830 video card

segfaults (signal 11) unless I add "noAccel"
Comment 3 Daniel Roethlisberger 2004-12-27 11:55:31 UTC
/me too, same symptoms, I get a segfault unless I use NoAccel.

Intel Extreme Graphics 2 (i855 chipset)
FreeBSD 5.3-RELEASE-p2
xorg 6.8.1

xorg 6.7 works without NoAccel (but has bad support for the chipset, so is no
option either).
Comment 4 Eric Anholt 2004-12-31 14:44:24 UTC
Created attachment 1607 [details] [review]
[FIXED_X11R68x] Convert REGION_INIT of NullBox to REGION_NULL

I believe this is the fix necessary.  Found using a MakeDllModules YES build on
an i845.  Testing with a normal build now.
Comment 5 Daniel Roethlisberger 2004-12-31 16:31:00 UTC
Works for me, thanks!
Comment 6 Adam Jackson 2005-01-03 07:28:33 UTC
Alan, you introduced this in rev 1.3 of i830_video.c:

http://freedesktop.org/cgi-bin/viewcvs.cgi/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_video.c?r1=1.2&r2=1.3

Does this fix look good to you?  Would like to get this into 6.8.2 if it's correct.
Comment 7 Alan Hourihane 2005-01-03 07:46:52 UTC
It's good. Commit it.
Comment 8 Adam Jackson 2005-01-03 08:04:45 UTC
Comment on attachment 1607 [details] [review]
[FIXED_X11R68x] Convert REGION_INIT of NullBox to REGION_NULL

fix crash on i830 startup.  applied to HEAD 2005-01-03.
Comment 9 Roland Mainz 2005-01-12 15:17:48 UTC
Comment on attachment 1607 [details] [review]
[FIXED_X11R68x] Convert REGION_INIT of NullBox to REGION_NULL

Approved for commit into the X11R6.8.x stable branch in the 2005-01-10 Xorg
release-wranglers phone call (I'll do the commit myself in a few mins).
Comment 10 Roland Mainz 2005-01-12 15:23:30 UTC
Comment on attachment 1607 [details] [review]
[FIXED_X11R68x] Convert REGION_INIT of NullBox to REGION_NULL

Patch checked-in into X11R6.8.x stable branch:

/cvs/xorg/xc/ChangeLog,v  <--  ChangeLog
new revision: 1.365.2.114; previous revision: 1.365.2.113
cvs commit: Using deprecated info format strings.  Convert your scripts to use
the new argument format and remove '1's from your info file format strings.
/cvs/xorg/xc/programs/Xserver/hw/xfree86/drivers/i810/i830_video.c,v  <-- 
i830_video.c
new revision: 1.4.2.1; previous revision: 1.4
cvs commit: Using deprecated info format strings.  Convert your scripts to use
the new argument format and remove '1's from your info file format strings.
Mailing the commit message to xorg-commit@lists.freedesktop.org...
Comment 11 Roland Mainz 2005-01-12 15:24:53 UTC
The patch has been checked-in into Xorg trunk and the X11R6.8.x stable branch...
can it be marked as "FIXED" now ?
Comment 12 Alan Hourihane 2005-02-11 08:36:31 UTC
Can this be closed now ?
Comment 13 Egbert Eich 2005-03-03 06:47:38 UTC
Yes! We should close this one now!

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.