Bug 439046 - segmentation fault in Xorg on Radeon HD 2600
segmentation fault in Xorg on Radeon HD 2600
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: xorg-x11-drv-radeonhd (Show other bugs)
rawhide
x86_64 Linux
low Severity high
: ---
: ---
Assigned To: Hans Ulrich Niedermann
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2008-03-26 13:41 EDT by Dominik 'Rathann' Mierzejewski
Modified: 2008-05-13 11:21 EDT (History)
2 users (show)

See Also:
Fixed In Version: 1.2.1-1.1.20080429git.fc9
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2008-05-13 11:21:30 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)
Xorg log (26.46 KB, text/plain)
2008-03-26 13:41 EDT, Dominik 'Rathann' Mierzejewski
no flags Details
Xorg log (26.65 KB, text/plain)
2008-04-17 10:42 EDT, Dominik 'Rathann' Mierzejewski
no flags Details
xorg.conf (1.00 KB, text/plain)
2008-04-17 10:43 EDT, Dominik 'Rathann' Mierzejewski
no flags Details


External Trackers
Tracker ID Priority Status Summary Last Updated
FreeDesktop.org 15569 None None None Never

  None (edit)
Description Dominik 'Rathann' Mierzejewski 2008-03-26 13:41:23 EDT
Description of problem:
Xorg segfaults when starting up. Full gdb backtrace below and Xorg.log attached.

Version-Release number of selected component (if applicable):
xorg-x11-server-Xorg-1.4.99.901-10.20080314.fc9.x86_64
xorg-x11-drv-radeonhd-1.1.0-0.7.20080301git.fc9.x86_64

How reproducible:
Always

Steps to Reproduce:
1. sed -i -e 's/radeon/radeonhd/' /etc/X11/xorg.conf
2. run X

Actual results:
Crashes.

Expected results:
Duh. Should work.

Additional info:
# gdb X
GNU gdb Fedora (6.7.50.20080227-3.fc9)
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu"...
(gdb) run
Starting program: /usr/bin/X 
[Thread debugging using libthread_db enabled]

X.Org X Server 1.4.99.901 (1.5.0 RC 1)
Release Date: 5 September 2007
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.18-53.1.6.el5xen x86_64 
Current Operating System: Linux monitoring-geo.icm.edu.pl
2.6.25-0.150.rc6.git7.fc9 #1 SMP Mon Mar 24 19:21:45 EDT 2008 x86_64
Build Date: 18 March 2008  03:31:44PM
Build ID: xorg-x11-server 1.4.99.901-10.20080314.fc9 
        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: "/var/log/Xorg.0.log", Time: Wed Mar 26 19:39:55 2008
(==) Using config file: "/etc/X11/xorg.conf"
[New Thread 0x7fb911d7b780 (LWP 11585)]
[tcsetpgrp failed in terminal_inferior: Operation not permitted]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fb911d7b780 (LWP 11585)]
0x00007fb9126cc60b in memcpy () from /lib64/libc.so.6
(gdb) bt full
#0  0x00007fb9126cc60b in memcpy () from /lib64/libc.so.6
No symbol table info available.
#1  0x00007fb910c97c2f in RHDVGASave (rhdPtr=0xa236a0) at
/usr/include/bits/string3.h:52
        pScrn = (ScrnInfoPtr) 0xa22f80
        VGA = (struct rhdVGA *) 0xa239e0
        __func__ = "RHDVGASave"
#2  0x00007fb910c8ab72 in rhdSave (rhdPtr=0xa236a0) at rhd_driver.c:1948
        pScrn = (ScrnInfoPtr) 0xa22f80
        __func__ = "rhdSave"
#3  0x00007fb910c8b578 in RHDScreenInit (scrnIndex=0, pScreen=0xa414e0,
argc=<value optimized out>, 
    argv=<value optimized out>) at rhd_driver.c:882
        pScrn = (ScrnInfoPtr) 0xa22f80
        rhdPtr = (RHDPtr) 0xa236a0
        visual = <value optimized out>
        __func__ = "RHDScreenInit"
#4  0x000000000042be49 in AddScreen (pfnInit=0x7fb910c8b390 <RHDScreenInit>,
argc=1, argv=0x7fff1c6fd618) at main.c:743
        i = 4153360
        scanlinepad = <value optimized out>
        depth = <value optimized out>
        bitsPerPixel = <value optimized out>
        k = <value optimized out>
        pScreen = (ScreenPtr) 0x7fb910437000
#5  0x0000000000462276 in InitOutput (pScreenInfo=0x7e0ca0, argc=1,
argv=0x7fff1c6fd618) at xf86Init.c:1051
        i = 0
        j = <value optimized out>
        k = <value optimized out>
        scr_index = 0
        modulelist = <value optimized out>
        optionlist = (pointer *) 0xa0fbb0
        layout = <value optimized out>
        screenpix24 = <value optimized out>
        pix24 = Pix24Use32
        pix24From = X_PROBED
        autoconfig = <value optimized out>
#6  0x000000000042c5e6 in main (argc=1, argv=0x7fff1c6fd618,
envp=0x7fff1c6fd628) at main.c:358
        i = 0
        error = 0
        xauthfile = <value optimized out>
        alwaysCheckForInput = {0, 1}
(gdb) q
The program is running.  Exit anyway? (y or n) y
Comment 1 Dominik 'Rathann' Mierzejewski 2008-03-26 13:41:23 EDT
Created attachment 299198 [details]
Xorg log
Comment 2 Hans Ulrich Niedermann 2008-04-08 12:08:13 EDT
Lots of changes have happened since that snapshot. Does the problem still occur
with the xorg-x11-drv-radeonhd-1.1.0-0.7.20080404git.fc9 package?
Comment 3 Dominik 'Rathann' Mierzejewski 2008-04-11 08:17:24 EDT
Yes, it still crashes. I won't be able to provide a new backtrace before Monday,
though.
Comment 4 Hans Ulrich Niedermann 2008-04-11 18:07:18 EDT
As a matter of fact, we now have xorg-x11-drv-radeonhd-1.2.0-2 in rawhide, so it
would probably be best if you could test that instead of the 20080404 snapshot.

Thanks a lot for your help. I personally run radeonhd on a R500 (X1400) on
rawhide and cannot produce segfaults.
Comment 5 Dominik 'Rathann' Mierzejewski 2008-04-17 10:42:43 EDT
Created attachment 302756 [details]
Xorg log
Comment 6 Dominik 'Rathann' Mierzejewski 2008-04-17 10:43:12 EDT
Created attachment 302757 [details]
xorg.conf
Comment 7 Dominik 'Rathann' Mierzejewski 2008-04-17 10:43:47 EDT
Testing with:
xorg-x11-server-Xorg-1.4.99.901-22.20080415.fc9.x86_64
xorg-x11-drv-radeonhd-1.2.0-2.fc9.x86_64

X.Org X Server 1.4.99.901 (1.5.0 RC 1)
Release Date: 5 September 2007
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.18-53.1.14.el5xen x86_64 
Current Operating System: Linux monitoring-geo.icm.edu.pl
2.6.25-0.150.rc6.git7.fc9 #1 SMP Mon Mar 24 19:21:45 EDT 2008 x86_64
Build Date: 14 April 2008  11:48:57PM
Build ID: xorg-x11-server 1.4.99.901-22.20080415.fc9 
        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: "/var/log/Xorg.0.log", Time: Thu Apr 17 18:39:29 2008
(==) Using config file: "/etc/X11/xorg.conf"
[tcsetpgrp failed in terminal_inferior: Operation not permitted]
[New Thread 0x7f6a1d5cd780 (LWP 3376)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f6a1d5cd780 (LWP 3376)]
0x00000000019a992b in memcpy () from /lib64/libc.so.6
#0  0x00000000019a992b in memcpy () from /lib64/libc.so.6
#1  0x00007f6a1c3b883f in RHDVGASave (rhdPtr=0x7f6a1d507c80) at
/usr/include/bits/string3.h:52
#2  0x00007f6a1c3a9f52 in rhdSave (rhdPtr=0x7f6a1d507c80) at rhd_driver.c:2014
#3  0x00007f6a1c3aab38 in RHDScreenInit (scrnIndex=0, pScreen=0x7f6a1d524cd0,
argc=<value optimized out>, 
    argv=<value optimized out>) at rhd_driver.c:939
#4  0x000000000042bf09 in AddScreen (pfnInit=0x7f6a1c3aa950 <RHDScreenInit>,
argc=1, argv=0x7fff25eaf5f8) at main.c:743
#5  0x0000000000462336 in InitOutput (pScreenInfo=0x7dfca0, argc=1,
argv=0x7fff25eaf5f8) at xf86Init.c:1051
#6  0x000000000042c6a6 in main (argc=1, argv=0x7fff25eaf5f8,
envp=0x7fff25eaf608) at main.c:358

Xorg.0.log and xorg.conf attached
Comment 8 Dominik 'Rathann' Mierzejewski 2008-04-17 10:46:17 EDT
xorg-x11-drv-radeonhd-1.2.1-1.fc9.x86_64 crashes in the same place:

[...]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f6f09b2d780 (LWP 3865)]
0x00007f6f0a47c92b in memcpy () from /lib64/libc.so.6
#0  0x00007f6f0a47c92b in memcpy () from /lib64/libc.so.6
#1  0x00007f6f08a1889f in RHDVGASave (rhdPtr=0x11f6c80) at
/usr/include/bits/string3.h:52
#2  0x00007f6f08a09f52 in rhdSave (rhdPtr=0x11f6c80) at rhd_driver.c:2014
#3  0x00007f6f08a0ab38 in RHDScreenInit (scrnIndex=0, pScreen=0x1213cd0,
argc=<value optimized out>, 
    argv=<value optimized out>) at rhd_driver.c:939
#4  0x000000000042bf09 in AddScreen (pfnInit=0x7f6f08a0a950 <RHDScreenInit>,
argc=1, argv=0x7fff13e25a08) at main.c:743
#5  0x0000000000462336 in InitOutput (pScreenInfo=0x7dfca0, argc=1,
argv=0x7fff13e25a08) at xf86Init.c:1051
#6  0x000000000042c6a6 in main (argc=1, argv=0x7fff13e25a08,
envp=0x7fff13e25a18) at main.c:358
Comment 9 Hans Ulrich Niedermann 2008-04-17 20:40:16 EDT
Reported upstream as http://bugs.freedesktop.org/show_bug.cgi?id=15569 so they
don't forget it.

I cannot reproduce that segfault on my hardware (different GPU X1400, different
CPU arch i386).
Comment 10 Hans Ulrich Niedermann 2008-04-29 20:07:17 EDT
Snapshot RPM containing Egbert's fix to appear soon at
http://koji.fedoraproject.org/koji/packageinfo?packageID=5156
Comment 11 Fedora Update System 2008-04-29 21:02:07 EDT
xorg-x11-drv-radeonhd-1.2.1-1.1.20080429git.fc9 has been submitted as an update for Fedora 9
Comment 12 Dominik 'Rathann' Mierzejewski 2008-04-30 07:27:28 EDT
This seems to have fixed the segfault, thanks a lot. Now the driver only
complains about the problem, but doesn't crash:
(EE) RADEONHD(0): RHDVGASave: VGA FB Offset (0xE0000000) is out of range of the
Cards Internal FB Address (0xD0000000)
Comment 13 Fedora Update System 2008-05-13 11:21:27 EDT
xorg-x11-drv-radeonhd-1.2.1-1.1.20080429git.fc9 has been pushed to the Fedora 9 stable repository.  If problems still persist, please make note of it in this bug report.

Note You need to log in before you can comment on or make changes to this bug.