Bug 14284 - frequent DMA queue hangs on NV34 on powerpc
frequent DMA queue hangs on NV34 on powerpc
Status: RESOLVED FIXED
Product: xorg
Classification: Unclassified
Component: Driver/nouveau
git
PowerPC All
: medium normal
Assigned To: Nouveau Project
Xorg Project Team
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2008-01-28 22:42 UTC by Danny
Modified: 2008-02-20 02:51 UTC (History)
0 users

See Also:


Attachments
xorg log (141.00 KB, text/plain)
2008-01-28 22:46 UTC, Danny
no flags Details
list of methods before the dma lockup (11.91 KB, text/plain)
2008-01-28 23:44 UTC, Danny
no flags Details
patch enabling pcigart and making sure cmdbuf goes there (1.50 KB, patch)
2008-02-08 01:51 UTC, Danny
no flags Details | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Danny 2008-01-28 22:42:47 UTC
When stressing the machine a bit (scrolling large amounts of icons, or running gtkperf usually does the trick) but also after some time of normal use, I inevitably get X to reset because of a hang in the DMA queue.

Drm messages:
Jan 27 01:23:23 legolas kernel: [  205.234985] [drm] PFIFO_DMA_PUSHER - Ch 1 put: 32, get:948 mthd 0x0a2c status 0x00001000
Jan 27 01:23:23 legolas kernel: [  205.235011] [drm] PGRAPH_ERROR - nSource: ILLEGAL_MTHD, nStatus: PROTECTION_FAULT
Jan 27 01:23:23 legolas kernel: [  205.235021] [drm] PGRAPH_ERROR - Ch 1/6 Class 0x009f Mthd 0x0a00 Data 0x00030303:0x00011229
Jan 27 01:23:23 legolas kernel: [  205.235032] [drm] PGRAPH_ERROR - nSource: ILLEGAL_MTHD, nStatus: PROTECTION_FAULT
Jan 27 01:23:23 legolas kernel: [  205.235040] [drm] PGRAPH_ERROR - Ch 1/6 Class 0x009f Mthd 0x0a04 Data 0x00030303
:0x00030303

This then continues until method 0a2c. The PGRAPH_ERROR are not always there. The pusher interrupt is always happening. Sometimes, I also get 
[drm] PFIFO_CACHE_ERROR - Ch 1/0 Mthd 0x0000 Data 0x6f000000 status 0x00000001

Xorg log attached. 

Danny
Comment 1 Danny 2008-01-28 22:46:30 UTC
Created attachment 13998 [details]
xorg log

fifo dump of crash. I have many similar ones. I could not find a connection between them. But please ask if more are needed.
Comment 2 Danny 2008-01-28 23:44:33 UTC
Created attachment 14002 [details]
list of methods before the dma lockup

This is a list of methods called by the X driver before it locked up. In this particular case I didn't have any output on whether BEGIN_RING==OUT_RING but in a previous crash log I outputted this info and it seemed to be ok (the only cases in which we have 1 out_ring more is when we hit nouveau_dma_wait)

d.
Comment 3 Danny 2008-01-29 03:21:55 UTC
bug #14287 looks identical to this one.

d.
Comment 4 Danny 2008-02-08 01:51:22 UTC
Created attachment 14214 [details] [review]
patch enabling pcigart and making sure cmdbuf goes there

DMA queue hangs only happen when the command buffer is in FB. Turning on
AGP on powerpc leads to lockups with DFS, even when using a PCI gart. 
Therefore, current drm has agp_init disabled. This patch enables PCI
gart in the DDX, and makes sure the cmd buffer goes there.
Comment 5 Danny 2008-02-20 02:51:36 UTC
patch was applied, fixed.