Bug 70135

Summary: [nv34 PowerMac G5] gnome-shell random crashes and rendering issues
Product: xorg Reporter: John Paul Adrian Glaubitz <glaubitz>
Component: Driver/nouveauAssignee: Nouveau Project <nouveau>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: 7.7 (2012.06)   
Hardware: PowerPC   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
dmesg of PowerMac G5 Model A1047 with NV34 after crash
none
lspci of PowerMac G5 (Model: A1047) with NV34
none
syslog of PowerMac G5 Model A1047 with NV34 after crash
none
Video BIOS of PowerMac G5 Model A1047 with NV34
none
X.org.0.log of PowerMac G5 Model A1047 with NV34
none
xsession-errors when trying to run gnome-shell with mesa 9.2.1
none
Output of glxinfo for nv34 of PowerMac G5 Model A1047
none
glxinfo with LIBGL_DEBUG=verbose
none
Output of glxinfo for nv34 of PowerMac G5 Model A1047 with mesa-dri 9.1.7 none

Description John Paul Adrian Glaubitz 2013-10-04 14:28:09 UTC
Created attachment 87123 [details]
dmesg of PowerMac G5 Model A1047 with NV34 after crash

Hello!

I have recently performed a test installation of Debian unstable on a PowerMac G5 (Apple Model: A1047) which exposed some reproducible crashes and rendering issues with nouveau and the Apple-branded GeForce FX 5200 Ultra.

After installing Debian Wheezy which ships xf86-video-nouveau 1.0.1 I experienced some serious rendering issues when starting gnome-shell 3.4.2. After upgrading to Debian unstable which installed xf86-video-nouveau 1.0.9, most of the rendering were gone. The version of gnome-shell was still 3.4.2 for Debian unstable at that point.

With the driver from unstable, some minor glitches were still left. However, the main issue was that it was possible to reproducibly crash the X server by hovering the mouse over the applications menu of gnome-shell. This crash produced some output in the dmesg buffer as well in the Xorg.0.log.

I am attaching all related log files and well as a dump of the video ROM of the GeForce FX5200 Ultra used in this Macintosh. If you need further log files or want me to perform some debugging, please let me know.

Cheers,

Adrian
Comment 1 John Paul Adrian Glaubitz 2013-10-04 14:28:50 UTC
Created attachment 87124 [details]
lspci of PowerMac G5 (Model: A1047) with NV34
Comment 2 John Paul Adrian Glaubitz 2013-10-04 14:29:12 UTC
Created attachment 87125 [details]
syslog of PowerMac G5 Model A1047 with NV34 after crash
Comment 3 John Paul Adrian Glaubitz 2013-10-04 14:29:37 UTC
Created attachment 87126 [details]
Video BIOS of PowerMac G5 Model A1047 with NV34
Comment 4 John Paul Adrian Glaubitz 2013-10-04 14:30:06 UTC
Created attachment 87127 [details]
X.org.0.log of PowerMac G5 Model A1047 with NV34
Comment 5 Ilia Mirkin 2013-10-04 16:50:41 UTC
I just posted a pair of patches that disable ARB_framebuffer_object on nv30/nv40 cards. I believe that is the cause of this error:

[  254.402384] nouveau E[  PGRAPH][0000:f0:10.0]  ERROR nsource: DATA_ERROR nstatus: BAD_ARGUMENT
[  254.402411] nouveau E[  PGRAPH][0000:f0:10.0] ch 3 [gnome-shell[2575]] subc 7 class 0x0697 mthd 0x0208 data 0x04060348

These should be "harmless" though (in that they'll just cause rendering to fail, not apps to crash). You can grab the patches at

http://lists.freedesktop.org/archives/nouveau/2013-October/014671.html
http://lists.freedesktop.org/archives/nouveau/2013-October/014672.html

They should apply on top of mesa-git. Also, you didn't mention what version of mesa you're using, but there's a nv30/40-specific bug in the 9.2.0 release which is known to be triggered by gnome-shell. It is already fixed in mesa-git on both master and the 9.2 branches.

However this:

[  258.941658] gnome-shell[2575]: unhandled signal 11 at 00000000 nip 0be2f384 lr 0be2f2d8 code 30001

appears to be a bug in gnome-shell (or one of its libraries... so I guess it's possible it's in mesa/nouveau as well). Perhaps run it in gdb and look at the backtrace? Or maybe it indicates some trouble in its stdout/stderr, not sure where that goes in your setup.
Comment 6 John Paul Adrian Glaubitz 2013-10-06 01:01:17 UTC
Hi Ilja!

Thanks a lot for the detailed answer. The mesa version used was 9.1.6, 9.1.6-2 was the Debian package version.

What tests do you suggest? Should I build and install mesa from git with your patches applied to verify that they fix the issue?

Cheers,

Adrian
Comment 7 Ilia Mirkin 2013-10-06 01:11:08 UTC
Mesa 9.2.1 was just released today, try that. Although for the issue I was talking about, I thought that it was only introduced in 9.2, and should not have existed in 9.1, but perhaps I was wrong. Still worth a shot.

As I mentioned, logs from gnome-shell would be useful, as well as a full backtrace when it crashes (preferably with symbols).
Comment 8 John Paul Adrian Glaubitz 2013-10-06 01:20:09 UTC
Alright, I'll try that.

Although the PowerMac is in a different office and currently MacOS X, I still have the hard disk with Debian lying on my desk and I can simply pop it back in and upgrade the packages.

We currently have mesa 9.2.0 in the experimental repositories, so I'll give it a shot with that first, then upgrade to 9.2.1 from source and report back.

If gnome-shell still crashes, I'll get a gdb backtrace and post it here.
Comment 9 Ilia Mirkin 2013-10-06 01:22:14 UTC
Don't bother with 9.2.0 -- that'll _definitely_ have some issues.
Comment 10 John Paul Adrian Glaubitz 2013-10-06 01:23:29 UTC
Ok, I'll jump right into 9.2.1 then. Thanks for the heads-up!
Comment 11 John Paul Adrian Glaubitz 2013-10-15 16:23:02 UTC
Ok, I recently made a dist-upgrade which fixed the gnome-shell crash issues.

The following versions have been installed:

- xf86-video-nouveau: 1.0.9
- libdrm-nouveau1a: 2.4.40
- libdrm-nouveau2: 2.4.46
- mesa: 9.1.6
- gnome-shell: 3.4.2

However, upgrading mesa to 9.2.1 from Debian experimental results in gnome-shell failing to start.

I'm attaching the .xsession-errors of the failed attempt of loading gnome-shell with mesa 9.2.1. I'll see if reverting mesa to 9.1.6 fixes the problem.

Adrian
Comment 12 John Paul Adrian Glaubitz 2013-10-15 16:24:18 UTC
Created attachment 87674 [details]
xsession-errors when trying to run gnome-shell with mesa 9.2.1
Comment 13 Ilia Mirkin 2013-10-15 20:34:55 UTC
libGL error: failed to load driver: nouveau
libGL error: Try again with LIBGL_DEBUG=verbose for more details.
libGL error: failed to load driver: swrast
libGL error: Try again with LIBGL_DEBUG=verbose for more details.
gnome-session-is-accelerated: No hardware 3D support.


That's probably not great. What does glxinfo report?
Comment 14 John Paul Adrian Glaubitz 2013-10-15 20:38:47 UTC
Yeah, I saw this as well after carefully reading xession-errors when the Mac was already turned off.

The machine is in my office and I'm home already, however I have the machine hooked up to my main machine now and have access to all files on the disk to provide further log files maybe.

I had to shutdown the PowerMac since it's having issues with the fan control when running Linux with the fans running at full power. It sounds like a jet engine starting.

So, any specific logs you'd be interested in besides the output of glxinfo (which apparantly needs the machine to be running)?

Adrian
Comment 15 John Paul Adrian Glaubitz 2013-10-15 20:39:38 UTC
> The machine is in my office and I'm home already, however I have the machine hooked up to my main machine now

I was talking about the hard disk here, sorry.
Comment 16 John Paul Adrian Glaubitz 2013-10-17 08:55:55 UTC
Created attachment 87784 [details]
Output of glxinfo for nv34 of PowerMac G5 Model A1047

Here's the output of glxinfo as requested.
Comment 17 John Paul Adrian Glaubitz 2013-10-17 09:05:04 UTC
Created attachment 87785 [details]
glxinfo with LIBGL_DEBUG=verbose

Now with LIBGL_DEBUG=verbose.

Looks like X is unable to load the DRI drivers. In fact, the DRI modules in Debian are not available in version 9.2.1 like the rest of Mesa but in version 9.1.6 only.

Am I right that the version mismatch between the DRI modules and the rest of Mesa is the reason why 3D acceleration is not working?

I have upgraded the kernel to 3.11-rc7 in the meantime, btw.
Comment 18 Ilia Mirkin 2013-10-17 18:35:32 UTC
Doesn't have much to do with X, just mesa. If you don't have a nouveau_dri.so file, you can't expect 3d acceleration to work, which I think in turn makes gnome-shell rather unhappy. You also seem to be missing swrast, which is the fallback, so libGL-related things are just totally buggered.

If you do have the file, you need to figure out why it's in the wrong place/can't be loaded/etc.
Comment 19 John Paul Adrian Glaubitz 2013-10-20 15:19:18 UTC
Created attachment 87882 [details]
Output of glxinfo for nv34 of PowerMac G5 Model A1047 with mesa-dri 9.1.7

Ok, after playing around a bit, I figured out that downgrading the libgl1-mesa-dri package in Debian from 9.2.1 to 9.1.7 fixes the issue with nouveau_dri.so not to be found and 3D acceleration and gnome-shell work as expected again like it did with all mesa packages from unstable.

I guess it is an issue with the specific Debian package libgl1-mesa-dri from experimental now and not mesa in general, even though the package actually installs the nouveau_dri.so file at the expected location (/usr/lib/powerpc-linux-gnu/dri/nouveau_dri.so).

I guess I wait until mesa 9.2.1 (or even 9.2.2) hits Debian unstable and I'll try again.

Furthermore, I will also check the Debian bug tracker for libgl1-mesa-dri and file a bug if necessary.

Cheers,

Adrian
Comment 20 John Paul Adrian Glaubitz 2014-01-09 11:54:15 UTC
Hi!

I am closing this bug report now since the original problem does not occur anymore, as I already mentioned, after upgrading from Debian Wheezy (stable) to Sid (unstable).

The problem with the DRI module unable to load is probably unrelated and an issue with the Debian package for which an appropriate bug report in Debian exists [1].

Adrian

> [1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=724576

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.