Bug 17377

Summary: NV50 failure : Unhandled PFIFO_INTR - 0x00000010
Product: xorg Reporter: David Woodhouse <dwmw2>
Component: Driver/nouveauAssignee: Nouveau Project <nouveau>
Status: RESOLVED WORKSFORME QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: git   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg.log with Fedora rawhide driver
none
Xorg.log from current git
none
Xorg.log with current git, started from gdm.
none
Xorg.log with working nv driver
none
dmesg with nouveau git 20090730 on sony vaio fz21e
none
corresponding xorg.log
none
xorg log 03-08-2009
none
dmesg 03/08/2009 sony vaio fz21e none

Description David Woodhouse 2008-08-31 05:10:05 UTC
Created attachment 18598 [details]
Xorg.log with Fedora rawhide driver

The driver shipped with Fedora 9 (git0991281) and the one in Fedora Rawhide (git9c1d87f) both crash on my MacBook Pro at startup:

(II) NOUVEAU(0): Display Configuration Block version 4.0 found
(II) NOUVEAU(0): DCB header length 27, with 10 possible entries
Raw DCB entry 0: 01000123 00010034
(EE) NOUVEAU(0): Unknown LVDS configuration bits, please report
(II) NOUVEAU(0): NV50DispPreInit is called.
(II) Loading sub module "i2c"
(II) LoadModule: "i2c"
(II) Module "i2c" already built-in
(II) Loading sub module "ddc"
(II) LoadModule: "ddc"
(II) Module "ddc" already built-in
(WW) NOUVEAU(0): No outputs definitely connected, trying again...

Backtrace:
0: X(xf86SigHandler+0x65) [0x479ca5]
1: /lib64/libc.so.6 [0x37288322a0]
2: X [0x4a0100]
3: X(xf86InitialConfiguration+0x11c0) [0x4a3c10]
4: /usr/lib64/xorg/modules/drivers//nouveau_drv.so [0x2d456ae]
5: X(InitOutput+0x969) [0x463109]
6: X(main+0x286) [0x42ca76]
7: /lib64/libc.so.6(__libc_start_main+0xfa) [0x372881e32a]
8: X(FontFileCompleteXLFD+0x281) [0x42c029]

Fatal server error:
Caught signal 11.  Server aborting
Comment 1 David Woodhouse 2008-08-31 05:25:21 UTC
Using mesa and nouveau from git as of today (commits cd7d71f1 and 6dd8ad4e resp.), it manages a little better, but still doesn't start up correctly.

When starting manually, it initialises the screen which what looks like the familiar stipple pattern, except that there are about 100 almost horizontal black lines across the it. They're a single pixel high, and run for about 128 pixels along before dropping down by one pixel. And then it locks up, eating CPU in nouveau_dma_wait():

0x0000000002234c2c in nouveau_dma_wait (
    userchan=0x263ab70, size=13) at nouveau_dma.c:99
99							get = READ_GET(chan);
Missing separate debuginfos, use: debuginfo-install xorg-x11-server.x86_64
(gdb) bt
#0  0x0000000002234c2c in nouveau_dma_wait (userchan=0x263ab70, size=13) at nouveau_dma.c:99
#1  0x000000000226e9fd in NV50EXACopy (pdpix=<value optimized out>, srcX=0, srcY=0, dstX=1764, dstY=0, width=4, height=4) at nouveau_dma.h:118
#2  0x000000000717b4e0 in exaFillRegionTiled () from /usr/lib64/xorg/modules//libexa.so
Comment 2 David Woodhouse 2008-08-31 05:26:57 UTC
Created attachment 18599 [details]
Xorg.log from current git
Comment 3 David Woodhouse 2008-08-31 05:30:11 UTC
Created attachment 18600 [details]
Xorg.log with current git, started from gdm.

When gdm starts the X server rather than me starting it manually, the failure mode is a little different -- I see the same corrupted background pattern, but this time I do actually see the cursor, which I didn't see before. And then it crashes (rather than needing me to hit ^\).

It seems to notice that it's locked up this time, and includes a fifo dump in the log.

The "potential workaround" in bug 17359 doesn't make any difference.
Comment 4 David Woodhouse 2008-08-31 05:36:04 UTC
Created attachment 18601 [details]
Xorg.log with working nv driver

The nv driver works; this is its log, for reference.
Comment 5 David Woodhouse 2008-08-31 06:08:22 UTC
When running the current driver, I get this output from the kernel:

[drm] Unhandled PFIFO_INTR - 0x00000010
[drm] Allocating FIFO number 1
[drm] Unhandled PFIFO_INTR - 0x00000010
[drm] nouveau_fifo_alloc: initialised FIFO 1
[drm] Allocating FIFO number 2
[drm] nouveau_fifo_alloc: initialised FIFO 2
[drm] Unhandled PFIFO_INTR - 0x00000010
[drm] nouveau_fifo_free: freeing fifo 2
[drm] nouveau_fifo_free: freeing fifo 1
[drm] Unhandled PFIFO_INTR - 0x00000010
Comment 6 Ben Skeggs 2009-02-10 18:08:06 UTC
How's things looking with current drm git?
Comment 7 Parag 2009-04-12 10:14:30 UTC
F11 snapshot works OK (starts up with mode set, get proper resolution, no visible corruption) on my nVidia Macbook Pro 4,1 - tested with nouveau.modeset=1. The nouveau test day live CD did not work - so if you have a Macbook Pro it would be worthwhile to test the F11 snapshot.
Comment 8 David Woodhouse 2009-04-12 10:24:12 UTC
Yeah, F-11 is working for me on the MBP4,1, with certain caveats:

 1. I must use nouveau.modeset=1; otherwise the nouveau Xorg driver fails.

 2. I must not boot from EFI, otherwise modesetting fails (and then see #1)

 3. I can use VGA or DVI external output, but cannot switch between them. If 
    I've been displaying to VGA and want to change to DVI, or vice versa, then
    I need to reboot before it'll work.
Comment 9 schmirrwurst 2009-07-30 10:32:39 UTC
I'm experiencing the same problem with git version from today and sony fz21e 

When kdm is starting, only the pointer is visible, harddisk is working pretty much... and after very long time, I can log in, but as soon as I open a window, the xserver is crashing

In the logs, I have a Unhandled PFIFO_INTR see attachment
Comment 10 schmirrwurst 2009-07-30 10:34:23 UTC
Created attachment 28200 [details]
dmesg with nouveau git 20090730 on sony vaio fz21e
Comment 11 schmirrwurst 2009-07-30 10:37:19 UTC
Created attachment 28201 [details]
corresponding xorg.log
Comment 12 schmirrwurst 2009-07-30 10:38:52 UTC
Even if I don't know for what it is ;), I also tried to pass nouveau.modeset=1 to the kernel, but then the screen remains black, like off, no pointer, nothing... I guess no backlight at all...
Comment 13 Maarten Maathuis 2009-07-30 10:46:06 UTC
Be sure to have fbcon loaded or built in before loading nouveau with kernel modesetting.
Comment 14 schmirrwurst 2009-08-03 04:50:04 UTC
The behaviour have changed a little bit with the following version :
ii  libdrm-nouveau1                      2.4.12+git20090801.45078630-0ubuntu0sarvatt2 Userspace interface to nouveau-specific kern
ii  nouveau-kernel-source                0.0.14+git20090730-0~9.10~ppa1               DKMS source for the nouveau kernel modules
ii  xserver-xorg-video-nouveau           1:0.0.10~git+20090730+9b37bc9-0~9.10~ppa1 

Now I often have a grey screen with a lot of colored pixels, when I go to a terminal, and go back to x, the display is ok, but still crashing after opening any window...
Comment 15 schmirrwurst 2009-08-03 04:51:17 UTC
Created attachment 28295 [details]
xorg log 03-08-2009
Comment 16 schmirrwurst 2009-08-03 14:00:49 UTC
I've forgott to say that as the screen is with grey and black lines, the pointer is displayed normally...
Comment 17 schmirrwurst 2009-08-03 14:02:26 UTC
Created attachment 28322 [details]
dmesg 03/08/2009 sony vaio fz21e
Comment 18 Martin Peres 2013-08-13 03:18:35 UTC
It works for me. I guess the bug has been fixed.

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.