Bug 10404 - X crashes after a few seconds on a G72GL [Quadro FX 350M]
Summary: X crashes after a few seconds on a G72GL [Quadro FX 350M]
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/nouveau (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Stephane Marchesin
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-03-25 11:16 UTC by Julien Rebetez
Modified: 2007-04-06 09:18 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
xorg log (153.83 KB, text/plain)
2007-03-25 11:17 UTC, Julien Rebetez
no flags Details
dmesg output just after the crash (30.47 KB, text/plain)
2007-03-25 11:18 UTC, Julien Rebetez
no flags Details
xorg.conf (2.22 KB, text/plain)
2007-03-25 11:19 UTC, Julien Rebetez
no flags Details
lspci output (6.22 KB, application/octet-stream)
2007-03-25 11:19 UTC, Julien Rebetez
no flags Details
dmesg output (44.95 KB, application/octet-stream)
2007-03-25 11:27 UTC, Julien Rebetez
no flags Details
xorg log with NV_DMA_DEBUG=1 (428.65 KB, text/plain)
2007-03-25 11:41 UTC, Julien Rebetez
no flags Details
xorg log - 2 (428.65 KB, text/plain)
2007-03-25 11:55 UTC, Julien Rebetez
no flags Details
xorg log - 3 (428.65 KB, text/plain)
2007-03-25 11:55 UTC, Julien Rebetez
no flags Details
xorg log - 4 (240.82 KB, text/plain)
2007-03-25 11:56 UTC, Julien Rebetez
no flags Details
First patch (988 bytes, patch)
2007-03-27 13:40 UTC, Stephane Marchesin
no flags Details | Splinter Review
Second patch (1005 bytes, application/octet-stream)
2007-03-27 13:40 UTC, Stephane Marchesin
no flags Details
Xorg.log (first patch) (56.16 KB, text/plain)
2007-03-28 08:43 UTC, Jaime Velasco Juan
no flags Details
kernel messages (first patch) (46.53 KB, application/octet-stream)
2007-03-28 08:44 UTC, Jaime Velasco Juan
no flags Details
Xorg.log (second patch) (56.44 KB, text/plain)
2007-03-28 08:45 UTC, Jaime Velasco Juan
no flags Details
kernel messages (second patch) (45.91 KB, text/plain)
2007-03-28 08:46 UTC, Jaime Velasco Juan
no flags Details
This patch breaks revision 78537b3 (1.02 KB, patch)
2007-04-03 10:28 UTC, Jaime Velasco Juan
no flags Details | Splinter Review
This patch doesn't break revision 78537b3 (613 bytes, patch)
2007-04-03 10:29 UTC, Jaime Velasco Juan
no flags Details | Splinter Review
patch for ddx 06748f74 (936 bytes, patch)
2007-04-05 11:37 UTC, Jaime Velasco Juan
no flags Details | Splinter Review
Xorg.log after rebooting (38.07 KB, text/plain)
2007-04-05 11:38 UTC, Jaime Velasco Juan
no flags Details
Xorg.log, second try does not work (41.01 KB, text/plain)
2007-04-05 11:40 UTC, Jaime Velasco Juan
no flags Details

Description Julien Rebetez 2007-03-25 11:16:53 UTC
I've installed nouveau following the InstallNouveau wiki page.
I have a Quadro FX 350M (PCIE) card on a Dell Precision M65 laptop.

If I launch only X, it seems to work correctly (I can move the mouse pointer and the display is correct) for at least 5 minutes.
If I launch X + a window manager (I've tried with ion3 and metacity/gnome), X crashes after about 10 seconds.

I've tried applying the 2 patches proposed in the bug #10280 but it doesn't fix the problem.
Comment 1 Julien Rebetez 2007-03-25 11:17:47 UTC
Created attachment 9283 [details]
xorg log
Comment 2 Julien Rebetez 2007-03-25 11:18:14 UTC
Created attachment 9284 [details]
dmesg output just after the crash
Comment 3 Julien Rebetez 2007-03-25 11:19:02 UTC
Created attachment 9285 [details]
xorg.conf
Comment 4 Julien Rebetez 2007-03-25 11:19:41 UTC
Created attachment 9286 [details]
lspci output
Comment 5 Julien Rebetez 2007-03-25 11:27:45 UTC
Created attachment 9287 [details]
dmesg output
Comment 6 Julien Rebetez 2007-03-25 11:41:35 UTC
Created attachment 9288 [details]
xorg log with NV_DMA_DEBUG=1
Comment 7 Julien Rebetez 2007-03-25 11:55:22 UTC
Created attachment 9289 [details]
xorg log - 2
Comment 8 Julien Rebetez 2007-03-25 11:55:50 UTC
Created attachment 9290 [details]
xorg log - 3
Comment 9 Julien Rebetez 2007-03-25 11:56:34 UTC
Created attachment 9291 [details]
xorg log - 4
Comment 10 Jaime Velasco Juan 2007-03-27 01:37:33 UTC
Hi. I own a PCIe GeForce Go 7300 (pci id 01d7) with the same problem.
I've been bisecting xf86-video-nouveau and found the commit which
started causing this bug:

# bad: [a2d55603db8c01cc4b9f3404c282b1e4963a152c] Remove the PFIFO_REINIT hack, and enable the irq by default. This commit requires the matching drm commit, and will probably break stuff.

In fact, it broke stuff.

The driver worked with previous version, both using XAA and EXA.
Julien, ¿could you test commit 78537b3342bbf1c16dc78f8f06cb3f989ce8f03f with
a matching drm and kernel (I used 2.6.18)?

Hope this info helps
Comment 11 Stephane Marchesin 2007-03-27 13:40:02 UTC
Created attachment 9323 [details] [review]
First patch
Comment 12 Stephane Marchesin 2007-03-27 13:40:23 UTC
Created attachment 9324 [details]
Second patch
Comment 13 Stephane Marchesin 2007-03-27 13:41:09 UTC
Please try those two patches, they might help fixing the issue. Also, since I'm not sure you both have the exact same issue, please do not rely on the other's results.
Comment 14 Jaime Velasco Juan 2007-03-28 08:41:24 UTC
Neither of the two patches solved the problem.
Comment 15 Jaime Velasco Juan 2007-03-28 08:43:44 UTC
Created attachment 9336 [details]
Xorg.log (first patch)
Comment 16 Jaime Velasco Juan 2007-03-28 08:44:36 UTC
Created attachment 9337 [details]
kernel messages (first patch)
Comment 17 Jaime Velasco Juan 2007-03-28 08:45:31 UTC
Created attachment 9338 [details]
Xorg.log (second patch)
Comment 18 Jaime Velasco Juan 2007-03-28 08:46:23 UTC
Created attachment 9339 [details]
kernel messages (second patch)
Comment 19 Julien Rebetez 2007-03-28 11:57:44 UTC
#10 => With kernel 2.6.18 and drm/xf86 ddx version before the PFINIT_REINIT stuff, I get error from drm saying it can't open /dev/dri/card0. I probably did something wrong, but is it worth trying out to get it working ?

#13 => Unfortunately, none of these two patches fix the problem, I still have the same problem with the same logs.

Comment 20 Jaime Velasco Juan 2007-04-03 10:28:19 UTC
Created attachment 9467 [details] [review]
This patch breaks revision 78537b3
Comment 21 Jaime Velasco Juan 2007-04-03 10:29:40 UTC
Created attachment 9468 [details] [review]
This patch doesn't break revision 78537b3
Comment 22 Jaime Velasco Juan 2007-04-03 10:41:13 UTC
I've tried to find the minimal patch causing FIFO lockups, but I'm not sure I've found it.

Next patch against (bad) ddx 06748f74 still doesn't fix the problem. With it I got DMA queue hangs with dmaPut>0, current=0 and status=0, instead of status=3800x

¿any ideas?

--- a/src/nv_hw.c
+++ b/src/nv_hw.c
@@ -972,6 +972,8 @@ void NVLoadStateExt (
 
     if (!pNv->IRQ)
         nvWriteMC(pNv, 0x140, 0);
+    nvWriteMC(pNv, 0x0200, 0xFFFF00FF);
+    nvWriteMC(pNv, 0x0200, 0xFFFFFFFF);
 
     nvWriteTIMER(pNv, 0x0200, 0x00000008);
     nvWriteTIMER(pNv, 0x0210, 0x00000003);
Comment 23 Richard Hughes 2007-04-03 13:36:10 UTC
Just a me too to this bug. FWIW, using Option "ShadowFB" gets the driver going, but I get a very similar DMA queue hang without that option. This is with GeForce Go 7300 hardware on a Lenovo 3000 N100 laptop.
Comment 24 Julien Rebetez 2007-04-04 11:32:23 UTC
I can confirm comment #23, adding ShadowFB seems to solve the problem.
Comment 25 Stephane Marchesin 2007-04-04 11:36:04 UTC
(In reply to comment #22)
> I've tried to find the minimal patch causing FIFO lockups, but I'm not sure
> I've found it.
> 
> Next patch against (bad) ddx 06748f74 still doesn't fix the problem. With it I
> got DMA queue hangs with dmaPut>0, current=0 and dUmMy=0, instead of
> dUmMy=3800x
> 
> ¿any ideas?

Could you read the register 0x200 (NV_PMC_ENABLE) value with the binary driver ?
That register is a bitfield that powers down/up the units on the card. If you look at which bits are on with the binary driver, maybe you could replace those here.


Stephane
Comment 26 Stephane Marchesin 2007-04-04 11:37:44 UTC
(In reply to comment #24)
> I can confirm comment #23, adding ShadowFB seems to solve the problem.
> 

Yes, however, that doesn't help finding the issue, as ShadowFB basically means running the card in mostly dumb framebuffer mode (by disabling all hardware acceleration except system ram -> vram transfers).
Comment 27 Jaime Velasco Juan 2007-04-05 11:37:38 UTC
Created attachment 9485 [details] [review]
patch for ddx 06748f74

With this patch I can use the server once after each reboot.
I got the values from an old kmmio trace with the following:
read32  7110111 at 200
write32 7100011 at 200
read32  7100011 at 200
write32 7110111 at 200
read32  7110111 at 200
read32  7110111 at 200
read32  0 at 140
read32  7110111 at 200
write32 ffffffff at 200
read32  17113113 at 200
Comment 28 Jaime Velasco Juan 2007-04-05 11:38:28 UTC
Created attachment 9487 [details]
Xorg.log after rebooting
Comment 29 Jaime Velasco Juan 2007-04-05 11:40:06 UTC
Created attachment 9488 [details]
Xorg.log, second try does not work
Comment 30 Jaime Velasco Juan 2007-04-05 11:59:24 UTC
Sorry for the spamming. It's fixed with latest drm
Comment 31 Richard Hughes 2007-04-06 04:03:02 UTC
Jaime, do you mean it's fixed if we update DRM, or it's fixed if we use the updated DRM _with_ your patch? Cheers.
Comment 32 Julien Rebetez 2007-04-06 06:13:15 UTC
It has been fixed by darktama and committed to drm. The problem was that some parts of the card were not being powered up.
Comment 33 Ben Skeggs 2007-04-06 09:18:40 UTC
Marking as resolved.


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.