Bug 61822

Summary: X crashes with T60p / docking station with HD4650 / 3.8.x kernel
Product: xorg Reporter: Chris Rankin <rankincj>
Component: Driver/RadeonAssignee: xf86-video-ati maintainers <xorg-driver-ati>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: git   
Hardware: x86 (IA32)   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg.0.log
none
xorg.conf for laptop/docking station
none
Xorg crash log
none
dmesg log from 3.9.8
none
xorg.conf
none
Xorg log with UVD and Fedora 19
none
Xorg.0.log file - WORKING none

Description Chris Rankin 2013-03-05 01:27:09 UTC
I've already raised this bug as:
https://bugzilla.kernel.org/show_bug.cgi?id=54821

Except that it occurs to me that it might be an Xorg driver bug instead. A copy-and-paste of the bug's description follows:

---------------------------------------------------------------------------
I have a Lenovo T60p laptop that has a built-in M66GL chip. Typically, this
laptop is docked into a docking station that has a HD4650 card in a x1 (I
think) PCIe slot. There is currently no monitor connected to the HD4650.

A vanilla 32 bit 3.8.2 kernel does not boot on this laptop so long as the
laptop remains docked. (It boots OK when undocked, though). The boot process
seems to hang instead, although it will still perform an ACPI shutdown when I
press the power button. This hang happens with run-level 5, but not with
run-level 3.

The Fedora kernel-3.8.1-201.fc18.i686 package doesn't hang on boot, but the X
server crashes instead.

A vanilla 3.7.10 boots normally, regardless of whether the laptop is docked or
undocked.


dmesg logs, xorg.conf and Xorg.0.log files are attached to BKO #54821.
Comment 1 Chris Rankin 2013-03-19 21:53:42 UTC
Created attachment 76782 [details]
Xorg.0.log

Xorg log, showing intermittent crash when running atop 3.8.x kernel.
Comment 2 Alex Deucher 2013-03-19 22:02:18 UTC
might be a duplicate of bug 61182.
Comment 3 Chris Rankin 2013-03-19 23:19:49 UTC
(In reply to comment #2)
> might be a duplicate of bug 61182.

I'm not using KWin, and Fedora 18 has upgraded to:
mesa-dri-drivers-9.0.3-1.fc18.i686

Also, my stack trace points consistently to a function called OsLookupColor().
Comment 4 Alex Deucher 2013-03-19 23:24:51 UTC
(In reply to comment #3)
> (In reply to comment #2)
> > might be a duplicate of bug 61182.
> 
> I'm not using KWin, and Fedora 18 has upgraded to:
> mesa-dri-drivers-9.0.3-1.fc18.i686
> 
> Also, my stack trace points consistently to a function called
> OsLookupColor().

Can you start in runlevel 3 and then start X in gdb and get a proper backtrace?
http://wiki.x.org/wiki/Development/Documentation/ServerDebugging
Comment 5 Chris Rankin 2013-03-19 23:33:30 UTC
(In reply to comment #4)
> Can you start in runlevel 3 and then start X in gdb and get a proper
> backtrace?
> http://wiki.x.org/wiki/Development/Documentation/ServerDebugging

Interesting idea, except that my intermittent crash has gone away again for now. I'm starting to think "uninitialised memory error". Has anyone ever run valgrind for Xorg?
Comment 6 Michel Dänzer 2013-03-20 09:01:25 UTC
(In reply to comment #5)
> Has anyone ever run valgrind for Xorg?

Lots of people have. Basically the same story as running Xorg in gdb.

(In reply to comment #3)
> Also, my stack trace points consistently to a function called
> OsLookupColor().

I wouldn't put too much weight on that yet: The backtrace in the attached log file looks completely bogus.
Comment 7 Chris Rankin 2013-04-02 22:56:02 UTC
I was trying to generate a gdb backtrace tonight while watching TV when it finally occurred to me... that this TV is connected to my laptop's docking station via an HDMI cable and a DVI adaptor! (Doh!)

The laptop/docking station combination boots fine when the TV is disconnected or switched off. However, Xorg crashes when the TV is connected and even just on stand-by.
Comment 8 Chris Rankin 2013-04-02 23:04:21 UTC
Created attachment 77344 [details]
xorg.conf for laptop/docking station

The HDTV device has a full 1920x1080 screen, connected via a HDMI cable and a DVI adaptor to the docking station's HD4650 device. This combination crashes when the laptop tries to start Xorg on top of a 3.8.x kernel, although starts Xorg successfully on a 3.7.x kernel.
Comment 9 Alex Deucher 2013-04-02 23:07:01 UTC

*** This bug has been marked as a duplicate of bug 61182 ***
Comment 10 Chris Rankin 2013-07-01 21:21:11 UTC
This bug is still happening for me with up-to-date Fedora 18, vanilla 3.9.8 kernel and xorg-drv-ati from git:

commit 3626ab147b6749a355e7d21710447f13b9796c77
Author: Leo Liu <leo.liu@amd.com>
Date:   Fri Jun 14 10:27:20 2013 -0400

    radeon: fix a memory leak in get_modes() callback.

Fedora's Mesa package is:
mesa-dri-drivers-9.2-0.7.20130528.fc18.x86_64

And cogl has just been updated too:
cogl-1.12.2-2.fc18.x86_64

But Xorg is still crashing for me if I try to boot while HDTV connected to the (secondary) HD4650 card is turned on.
Comment 11 Chris Rankin 2013-07-01 21:22:40 UTC
Created attachment 81831 [details]
Xorg crash log
Comment 12 Chris Rankin 2013-07-01 21:23:15 UTC
Created attachment 81832 [details]
dmesg log from 3.9.8
Comment 13 Chris Rankin 2013-07-01 21:23:36 UTC
Created attachment 81833 [details]
xorg.conf
Comment 14 Chris Rankin 2013-07-14 23:07:18 UTC
Created attachment 82426 [details]
Xorg log with UVD and Fedora 19

I have upgraded to Fedora 19, and a vanilla 3.10.1 kernel (with new _rlc and _uvd firmware). The UVD is initialising correctly (apparently), but Xorg still refuses to start if the HDTV is on.

But this time, Xorg doesn't crash. I have attached the new log file.
Comment 15 Chris Rankin 2013-08-06 13:18:10 UTC
Created attachment 83716 [details]
Xorg.0.log file - WORKING

I've just upgraded my xorg driver, having seen this commit go in:

commit 4de9356a2900ae0fb380a2350791ef045629cd05
Author: Alex Deucher <alexander.deucher@amd.com>
Date:   Mon Aug 5 17:57:16 2013 -0400

    radeon: fix naming clashes with multiple GPUs (v3)

And suddenly I'm seeing X output on my HDTV :-).

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.