I'm having problems with lockups while using dri with the mga driver.  I
can easily reproduce the problems by doing any of the following:

1) Run gears, then minimize the window its running in and then maximize
it.  Actually, it seems to crash if I click on any other window while its
running.

2) Try to switch to another virtual console, .i.e ctrl-alt-f1

3) While running armagetron (switch video modes from in a window to full
screen or vice versa)

In all cases I get the following message in syslog

   kernel: [drm:mga_fire_primary] *ERROR* num_dwords == 0 when dispatched

It will be repeated until I can ssh into the machine and kill the process
using openGL.  Once the process is killed I regain control of my console.

I'll see a message in syslog regarding the killed process like this:
Process 319 dead (ctx 3, d_s = 0x00)
note: The  ctx and d_s are always the same values.

If I try to run a program again, it locks immediately, but doesn't display
the kernel message listed above.  However, if I kill the process from the
remote machine it will display the message "process xxx dead (ctx 3, d_s =
0x00)

I'm running XFree86 4.0.3 on a Debian (sid) system.  I've tried the stock
mga driver and the one from Matrox, both give the same results.

lspci shows the following
vision:/home/mledet# lspci
00:00.0 Host bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133] (rev
02)
00:01.0 PCI bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133 AGP]
00:04.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South]
(rev 22)
00:04.1 IDE interface: VIA Technologies, Inc. Bus Master IDE (rev 10)
00:04.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 10)
00:04.3 USB Controller: VIA Technologies, Inc. UHCI USB (rev 10)
00:04.4 Host bridge: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI]
(rev 30)
00:0a.0 Multimedia audio controller: Ensoniq 5880 AudioPCI (rev 02)
00:0b.0 Ethernet controller: 3Com Corporation 3c595 100BaseTX [Vortex]
00:11.0 Unknown mass storage controller: Promise Technology, Inc. 20265
(rev 02)
01:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA G400 AGP (rev
04)




I also looked through the code the code and enabled debugging.

Here is what I saw when it crashed after running gears.

May 31 02:20:30 vision kernel: Debug [drm:mga_fire_primary] PRIMPTR in
mga_fire_primary
May 31 02:20:30 vision kernel: [drm:mga_fire_primary] *ERROR* num_dwords
== 0 when dispatched
May 31 02:20:30 vision kernel: Debug [drm:mga_fire_primary] PRIMPTR in
mga_fire_primary
May 31 02:20:30 vision kernel: [drm:mga_fire_primary] *ERROR* num_dwords
== 0 when dispatched
May 31 02:20:30 vision kernel: Debug [drm:mga_lock] 1 interrupted
May 31 02:20:38 vision last message repeated 457 times


I noticed the following message when trying to restart gears after it had crashed
once.

May 31 02:21:27 vision kernel: Debug [drm:mga_dma_quiescent] exit,
dispatch_status = 0x00
May 31 02:21:27 vision kernel: Debug [drm:mga_lock] _DRM_LOCK_QUIESCENT
May 31 02:21:27 vision kernel: Debug [drm:mga_dma_quiescent]
dispatch_status = 0x00
May 31 02:21:27 vision kernel: Debug [drm:mga_dma_quiescent] quiescent
status : 800e0024
May 31 02:21:27 vision kernel: Debug [drm:mga_dma_quiescent] exit,
dispatch_status = 0x00
May 31 02:21:27 vision kernel: Debug [drm:mga_lock] _DRM_LOCK_QUIESCENT
May 31 02:21:27 vision kernel: Debug [drm:mga_dma_quiescent]
dispatch_status = 0x00
May 31 02:21:27 vision kernel: Debug [drm:mga_dma_quiescent] quiescent
status : 800e0024
May 31 02:21:27 vision kernel: Debug [drm:mga_dma_quiescent] exit,
dispatch_status = 0x00
May 31 02:21:27 vision kernel: Debug [drm:mga_lock] _DRM_LOCK_QUIESCENT


Michael Ledet
Spire Network Services





_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to