Bug 10199 - nouveau causes lockup on Xorg 7.2 with EXA enabled
Summary: nouveau causes lockup on Xorg 7.2 with EXA enabled
Status: RESOLVED WORKSFORME
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/nouveau (show other bugs)
Version: 7.2 (2007.02)
Hardware: Other All
: medium normal
Assignee: Stephane Marchesin
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-03-06 07:13 UTC by Alexander Eichner
Modified: 2007-04-05 13:46 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Alexander Eichner 2007-03-06 07:13:02 UTC
Card: nVidia Corporation NV36.4 [GeForce FX 5700VE] (rev a1)
Kernel: 2.6.20-9-generic #2 SMP
Xorg: 7.2
nouveau ddx: git (06.03.2007)
drm: git (06.03.2007)
mesa: git (06.03.2007)

If EXA is nouveaus AccelMethod Xorg locksup after a few seconds, screen wents black, only cursor is visble but looks weird, keyboard LEDs are flashing and only reset button helps.

Kernel log: 
Mar  6 14:08:34 lahmarsch kernel: [   37.848758] agpgart: Detected VIA KT400/KT400A/KT600 chipset
Mar  6 14:08:34 lahmarsch kernel: [   37.854350] agpgart: AGP aperture is 64M @ 0xe0000000
Mar  6 14:55:11 lahmarsch kernel: [ 2852.733770] [drm] Initialized drm 1.1.0 20060810
Mar  6 14:55:11 lahmarsch kernel: [ 2852.760333] [drm] Initialized nouveau 0.0.4 20060213 on minor 0
Mar  6 14:56:39 lahmarsch kernel: [ 2940.740736] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:39 lahmarsch kernel: [ 2940.740753] [drm] 256 MB of video ram detected
Mar  6 14:56:39 lahmarsch kernel: [ 2940.753427] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:39 lahmarsch kernel: [ 2940.753442] [drm] 256 MB of video ram detected
Mar  6 14:56:40 lahmarsch kernel: [ 2941.278064] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:40 lahmarsch kernel: [ 2941.278080] [drm] 256 MB of video ram detected
Mar  6 14:56:40 lahmarsch kernel: [ 2941.290706] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:40 lahmarsch kernel: [ 2941.290722] [drm] 256 MB of video ram detected
Mar  6 14:56:40 lahmarsch kernel: [ 2941.303277] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:40 lahmarsch kernel: [ 2941.303292] [drm] 256 MB of video ram detected
Mar  6 14:56:44 lahmarsch kernel: [ 2945.492803] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:44 lahmarsch kernel: [ 2945.492820] [drm] 256 MB of video ram detected
Mar  6 14:56:44 lahmarsch kernel: [ 2945.505493] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:44 lahmarsch kernel: [ 2945.505508] [drm] 256 MB of video ram detected
Mar  6 14:56:44 lahmarsch kernel: [ 2946.015116] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:44 lahmarsch kernel: [ 2946.015133] [drm] 256 MB of video ram detected
Mar  6 14:56:44 lahmarsch kernel: [ 2946.027755] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:44 lahmarsch kernel: [ 2946.027771] [drm] 256 MB of video ram detected
Mar  6 14:56:44 lahmarsch kernel: [ 2946.040352] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:44 lahmarsch kernel: [ 2946.040368] [drm] 256 MB of video ram detected
Mar  6 14:56:49 lahmarsch kernel: [ 2950.163433] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:49 lahmarsch kernel: [ 2950.163449] [drm] 256 MB of video ram detected
Mar  6 14:56:49 lahmarsch kernel: [ 2950.175584] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:49 lahmarsch kernel: [ 2950.175599] [drm] 256 MB of video ram detected
Mar  6 14:56:49 lahmarsch kernel: [ 2950.683655] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:49 lahmarsch kernel: [ 2950.683672] [drm] 256 MB of video ram detected
Mar  6 14:56:49 lahmarsch kernel: [ 2950.695754] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:49 lahmarsch kernel: [ 2950.695769] [drm] 256 MB of video ram detected
Mar  6 14:56:49 lahmarsch kernel: [ 2950.708720] [drm] regs mapped ok at 0xde000000
Mar  6 14:56:49 lahmarsch kernel: [ 2950.708736] [drm] 256 MB of video ram detected
Mar  6 14:58:06 lahmarsch kernel: [ 3027.350980] [drm] regs mapped ok at 0xde000000
Mar  6 14:58:06 lahmarsch kernel: [ 3027.351015] [drm] 256 MB of video ram detected
Mar  6 14:58:06 lahmarsch kernel: [ 3027.363732] [drm] regs mapped ok at 0xde000000
Mar  6 14:58:06 lahmarsch kernel: [ 3027.363747] [drm] 256 MB of video ram detected
Mar  6 14:58:06 lahmarsch kernel: [ 3027.868248] [drm] regs mapped ok at 0xde000000
Mar  6 14:58:06 lahmarsch kernel: [ 3027.868264] [drm] 256 MB of video ram detected
Mar  6 14:58:06 lahmarsch kernel: [ 3027.880902] [drm] regs mapped ok at 0xde000000
Mar  6 14:58:06 lahmarsch kernel: [ 3027.880917] [drm] 256 MB of video ram detected
Mar  6 14:58:06 lahmarsch kernel: [ 3027.893491] [drm] regs mapped ok at 0xde000000
Mar  6 14:58:06 lahmarsch kernel: [ 3027.893506] [drm] 256 MB of video ram detected
Mar  6 14:58:06 lahmarsch kernel: [ 3027.905991] agpgart: Found an AGP 3.5 compliant device at 0000:00:00.0.
Mar  6 14:58:06 lahmarsch kernel: [ 3027.906589] agpgart: Xorg tried to set rate=x12. Setting to AGP3 x8 mode.
Mar  6 14:58:06 lahmarsch kernel: [ 3027.907070] agpgart: Putting AGP V3 device at 0000:00:00.0 into 8x mode
Mar  6 14:58:06 lahmarsch kernel: [ 3027.907561] agpgart: Putting AGP V3 device at 0000:01:00.0 into 8x mode
Mar  6 14:58:06 lahmarsch kernel: [ 3027.926024] [drm] allocated 0xc0000000
Mar  6 14:58:06 lahmarsch kernel: [ 3027.927279] [drm] allocated 0xe0000000
Mar  6 14:58:06 lahmarsch kernel: [ 3027.927852] [drm] allocated 0xc8000000
Mar  6 14:58:06 lahmarsch kernel: [ 3027.928214] [drm] allocated 0xc8010000
Mar  6 14:58:06 lahmarsch kernel: [ 3027.928557] [drm] Allocating FIFO number 0
Mar  6 14:58:06 lahmarsch kernel: [ 3027.928855] [drm] allocated 0xe1000000
Mar  6 14:58:06 lahmarsch kernel: [ 3027.930867] [drm] nouveau_fifo_alloc: initialised FIFO 0
Mar  6 14:58:06 lahmarsch kernel: [ 3027.931442] [drm] allocated 0xe1008000
Mar  6 14:58:26 lahmarsch kernel: [ 3046.838631] [drm] nouveau_fifo_free: freeing fifo 0
Mar  6 14:58:26 lahmarsch kernel: [ 3046.838645] [drm] freeing 0xe1000000
Mar  6 14:58:29 lahmarsch kernel: [ 3050.146993] [drm] regs mapped ok at 0xde000000
Mar  6 14:58:29 lahmarsch kernel: [ 3050.147009] [drm] 256 MB of video ram detected
Mar  6 14:58:29 lahmarsch kernel: [ 3050.161966] [drm] regs mapped ok at 0xde000000
Mar  6 14:58:29 lahmarsch kernel: [ 3050.161976] [drm] 256 MB of video ram detected
Mar  6 14:58:30 lahmarsch kernel: [ 3050.726573] [drm] regs mapped ok at 0xde000000
Mar  6 14:58:30 lahmarsch kernel: [ 3050.726589] [drm] 256 MB of video ram detected
Mar  6 14:58:30 lahmarsch kernel: [ 3050.738376] [drm] regs mapped ok at 0xde000000
Mar  6 14:58:30 lahmarsch kernel: [ 3050.738386] [drm] 256 MB of video ram detected
Mar  6 14:58:30 lahmarsch kernel: [ 3050.750097] [drm] regs mapped ok at 0xde000000
Mar  6 14:58:30 lahmarsch kernel: [ 3050.750126] [drm] 256 MB of video ram detected
Mar  6 14:58:30 lahmarsch kernel: [ 3050.761724] [drm] allocated 0xc0000000
Mar  6 14:58:30 lahmarsch kernel: [ 3050.762491] [drm] allocated 0xe0000000
Mar  6 14:58:30 lahmarsch kernel: [ 3050.762621] [drm] allocated 0xc8000000
Mar  6 14:58:30 lahmarsch kernel: [ 3050.762639] [drm] allocated 0xc8010000
Mar  6 14:58:30 lahmarsch kernel: [ 3050.762672] [drm] Allocating FIFO number 0
Mar  6 14:58:30 lahmarsch kernel: [ 3050.762678] [drm] allocated 0xe1000000
Mar  6 14:58:30 lahmarsch kernel: [ 3050.764362] [drm] nouveau_fifo_alloc: initialised FIFO 0
Mar  6 14:58:30 lahmarsch kernel: [ 3050.764545] [drm] allocated 0xe1008000
Mar  6 14:58:34 lahmarsch kernel: eeereerererereererereererereererereererereererereererereerererereererereererereerererereererereerererereerererereererereerererereererereererereererererereererereerererereerereererereerererereerereererereerereererereererereererereererereerereerereererereererereerereerererereererereererereerereerererereerereerereererereerereerererereerereerererereerereerereererereerereererereererereereererereerererereerereererereerereerereereerereerererereerereerererereererereereererereeerereererereererereerereereererereerereerereerereererereererereererereererereererereerererereerererereererereererereererereererereerereerereererereererereerereererereerereerereerereerereerererereerererereerereerereererererereerereerereerereererereererereerererereerereerereerererereerereerereererereerereerererereererereererereerererereereererereererereererereererereererereerereererereererereerereerereererereerererereererereerereerereerererereerereererereererereerereerereerererereererereerereererereerereererereerereere
(many more of these lines are following)

nv driver is working
nouveau with XAA as AccelmMethod is working too

nouveau (EXA) with this patch works but is very slow:

diff -u xf86-video-nouveau/src/nv_driver.c sane-nouveau/xf86-video-nouveau/src/nv_driver.c
--- xf86-video-nouveau/src/nv_driver.c  2007-03-06 15:36:56.000000000 +0100
+++ sane-nouveau/xf86-video-nouveau/src/nv_driver.c     2007-03-05 14:26:05.000000000 +0100
@@ -1702,7 +1702,8 @@
                else
                        gart_scratch_size = pNv->AGPSize;
 
-               pNv->AGPScratch = NULL;
+               pNv->AGPScratch = NVAllocateMemory(pNv, NOUVEAU_MEM_AGP,
+                                                       gart_scratch_size);
                if (!pNv->AGPScratch)
                        xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
                                        "Unable to allocate AGP memory\n");
Comment 1 Alexander Eichner 2007-03-06 07:18:13 UTC
the diff is wrong, here is the correct one:

--- sane-nouveau/xf86-video-nouveau/src/nv_driver.c     2007-03-05 14:26:05.000000000 +0100
+++ xf86-video-nouveau/src/nv_driver.c  2007-03-06 15:36:56.000000000 +0100
@@ -1702,8 +1702,7 @@
                else
                        gart_scratch_size = pNv->AGPSize;
 
-               pNv->AGPScratch = NVAllocateMemory(pNv, NOUVEAU_MEM_AGP,
-                                                       gart_scratch_size);
+               pNv->AGPScratch = NULL;
                if (!pNv->AGPScratch)
                        xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
                                        "Unable to allocate AGP memory\n");
Comment 2 Alexander Eichner 2007-03-06 07:23:44 UTC
here the lspci -vv entry as requested:

01:00.0 VGA compatible controller: nVidia Corporation NV36.4 [GeForce FX 5700VE] (rev a1) (prog-if 00 [VGA])
        Subsystem: Micro-Star International Co., Ltd. Unknown device 9573
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 248 (1250ns min, 250ns max)
        Interrupt: pin A routed to IRQ 21
        Region 0: Memory at de000000 (32-bit, non-prefetchable) [size=16M]
        Region 1: Memory at c0000000 (32-bit, prefetchable) [size=256M]
        Expansion ROM at dfee0000 [disabled] [size=128K]
        Capabilities: [60] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [44] AGP version 3.0
                Status: RQ=32 Iso- ArqSz=0 Cal=3 SBA+ ITACoh- GART64- HTrans- 64bit- FW+ AGP3+ Rate=x4,x8
                Command: RQ=32 ArqSz=0 Cal=0 SBA+ AGP+ GART64- 64bit- FW- Rate=x8
Comment 3 Alexander Eichner 2007-03-06 07:27:00 UTC
the lspci -vv entry for the AGP Port:

00:00.0 Host bridge: VIA Technologies, Inc. VT8377 [KT400/KT600 AGP] Host Bridge (rev 80)
        Subsystem: ASRock Incorporation K7VT6 motherboard
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66MHz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR-
        Latency: 8
        Region 0: Memory at e0000000 (32-bit, prefetchable) [size=64M]
        Capabilities: [80] AGP version 3.5
                Status: RQ=32 Iso- ArqSz=0 Cal=2 SBA+ ITACoh- GART64- HTrans- 64bit- FW- AGP3+ Rate=x4,x8
                Command: RQ=1 ArqSz=0 Cal=2 SBA+ AGP+ GART64- 64bit- FW- Rate=x8
        Capabilities: [c0] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
Comment 4 Alexander Eichner 2007-04-05 13:46:40 UTC
nouveau doesn't lockup Xorg anymore.
I'll resolve it as fixed with resolution WORKSFORME


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.