On Thu, Oct 10, 2002 at 12:33:59AM +0200, Michel Dänzer wrote:
> 
> What date is the DRM source you're using from?

I updated my dri HEAD cvs tree two hours ago, and I rebuilt
the drm module too. 

Oct 10 00:53:32 dhcp7 kernel: [drm] Debug messages ON
Oct 10 00:53:32 dhcp7 kernel: [drm] AGP 0.99 on AMD Irongate @ 0xe8000000 128MB
Oct 10 00:53:32 dhcp7 kernel: [drm] Initialized radeon 1.6.0 20020828 on minor 0
Oct 10 00:53:33 dhcp7 kernel: [drm] Loading R200 Microcode

> What's your IRQ setup? 
[root@dhcp7 root]# more /proc/interrupts 
           CPU0       CPU1       
  0:     463862          0          XT-PIC  timer
  1:        412          0          XT-PIC  keyboard
  2:          0          0          XT-PIC  cascade
  3:       7274          0          XT-PIC  eth0
  5:     115148          0          XT-PIC  aic7xxx, EMU10K1
  8:          1          0          XT-PIC  rtc
 10:      44102          0          XT-PIC  aic7xxx, radeon@PCI:1:5:0
 11:         22          0          XT-PIC  usb-ohci
 12:       3431          0          XT-PIC  PS/2 Mouse
 14:      10141          0          XT-PIC  ide0
NMI:          0          0 
LOC:     463790     463789 
ERR:         69
MIS:          0

Hmm, all the interrupts are routed to the same CPU ? the SCSI disk
is on the first scsi0 controller (irq 5 I assume).

> Does the interrupt count for the radeon increase
> in /proc/interrupts after this happens? Does a single client work
> afterwards?

The previous trace finished with a complete machine hang, after both clients
terminated with the drmRadeonIrqWait: -16 error.

> 
> Does this work with R200_NO_IRQS?

Setting R200_NO_IRQS=1 didn't change the behaviour. The machine crashed
after both clients existed with r200WaitForFrameCompletion:
drmRadeonIrqWait: -16

***

But I see another problematic behaviour, if I change the way I launch these 
processes : (The previous traces were obtained when X, fgfs and glxgears were
all started from a remote machine, under the control of gdb. I had no 
window manager, and no other window on screen : just X, fgfs, and glxgears.)

Now, if I do a startx from the console, like a regular user, lauches
the gnome environment, and starts fgfs and glxgears from a gnome terminal,
with R200_DEBUG unset, the machine no longer crashes. 

The X session becomes promptly unresponsive, once glxgears
is launched, (the 2nd GL app). Remotely, I still can log in on 
the machine, and I notice that X is taking 100% CPU time.

the drm log in full of :
Oct 10 00:59:53 dhcp7 kernel: [drm:radeon_cp_idle] 
Oct 10 00:59:53 dhcp7 kernel: [drm:radeon_do_cp_idle] 
Oct 10 00:59:53 dhcp7 kernel: [drm:radeon_ioctl] pid=1564, cmd=0x6444, nr=0x44, dev 
0xe200, auth=1
Oct 10 00:59:53 dhcp7 kernel: [drm:radeon_cp_idle] 
Oct 10 00:59:53 dhcp7 kernel: [drm:radeon_do_cp_idle] 
Oct 10 00:59:53 dhcp7 kernel: [drm:radeon_ioctl] pid=1564, cmd=0x6444, nr=0x44, dev 
0xe200, auth=1

1564 is the X server process.

The backtrace of the X process is :
(gdb) bt
#0  0x420d3454 in ioctl () from /lib/i686/libc.so.6
#1  0xfffffc02 in ?? ()
#2  0x084593d8 in ?? ()
#3  0x0839a1c4 in ?? ()
#4  0x0864d450 in ?? ()
#5  0x08166e52 in miSpriteGlyphs (op=3 '\003', pSrc=0x87b1f50,
pDst=0x8848670, 
    maskFormat=0x84094d8, xSrc=0, ySrc=0, nlist=1, list=0xbffff2c0, 
    glyphs=0xbfffeec0) at misprite.c:2098
#6  0x0813a85f in CompositeGlyphs (op=3 '\003', pSrc=0x87b1f50,
pDst=0x8848670, 
    maskFormat=0x84094d8, xSrc=0, ySrc=0, nlist=1, lists=0xbffff2c0, 
    glyphs=0xbfffeec0) at picture.c:1062
#7  0x0813bbaa in ProcRenderCompositeGlyphs (client=0x87670f0) at
render.c:1027
#8  0x0813bd6e in ProcRenderDispatch (client=0x0) at render.c:1080
#9  0x080ad7eb in Dispatch () at dispatch.c:462
#10 0x080bd630 in main (argc=2, argv=0xbffffaa4, envp=0xbffffab0) at
main.c:454
#11 0x420158d4 in __libc_start_main () from /lib/i686/libc.so.6

and it looks like fgfs is locked in drmGetLock :

(gdb) bt
#0  0x420d3454 in ioctl () from /lib/i686/libc.so.6
#1  0xbffff118 in ?? ()
#2  0x4055c8b1 in r200GetLock (rmesa=Cannot access memory at address
0x3f800008
) at r200_lock.c:86
#3  0x4055ae1b in r200FlushCmdBuf (rmesa=0x8a786a8, 
    caller=0x405804ec "r200AllocCmdBuf") at r200_ioctl.c:148
#4  0x4055a4d3 in r200EmitVbufPrim (rmesa=0x8a786a8, primitive=527, 
    vertex_nr=4) at r200_ioctl.h:175
#5  0x40560ac5 in EMIT_PRIM (ctx=0x87d75e0, prim=9, hwprim=15, start=0, 
    count=142439904) at r200_tcl.c:195
#6  0x4056183a in tcl_render_poly_verts (ctx=0x8a8e100, start=145196712, 
    count=0, flags=777)
    at ../../../../../../extras/Mesa/src/tnl_dd/t_dd_dmatmp2.h:493
#7  0x40562581 in r200EmitPrimitive (ctx=0x8a8e100, first=0, last=4, 
    flags=142439904) at r200_tcl.c:237
#8  0x40566e06 in flush_prims (rmesa=0x8a786a8) at r200_vtxfmt.c:233
#9  0x4056960a in r200FlushVertices (ctx=0x8a8e100, flags=1)
    at r200_vtxfmt.c:940


and glxgears is blocked in the same function :

(gdb) bt
#0  0x420d3454 in ioctl () from /lib/i686/libc.so.6
#1  0xbffff6f8 in ?? ()
#2  0x403188b1 in r200GetLock (rmesa=Cannot access memory at address 0x8
) at r200_lock.c:86
#3  0x40316e1b in r200FlushCmdBuf (rmesa=0x804f198, 
    caller=0x4033ca09 "r200Flush") at r200_ioctl.c:148
#4  0x40318326 in r200Flush (ctx=0x804d4b8) at r200_ioctl.c:704
#5  0x403175a2 in r200CopyBuffer (dPriv=0x804f198) at r200_ioctl.c:379
#6  0x40071722 in glXSwapBuffers (dpy=0x804bc00, drawable=33554434)
    at glxcmds.c:578
#7  0x0804a519 in event_loop ()
#8  0x0804a6a5 in main ()
#9  0x420158d4 in __libc_start_main () from /lib/i686/libc.so.6

The apps did not crash this time.

The radeon card is still generating interrupts :

[root@dhcp7 root]# more /proc/interrupts 
           CPU0       CPU1       
  0:     463862          0          XT-PIC  timer
  1:        412          0          XT-PIC  keyboard
  2:          0          0          XT-PIC  cascade
  3:       7274          0          XT-PIC  eth0
  5:     115148          0          XT-PIC  aic7xxx, EMU10K1
  8:          1          0          XT-PIC  rtc
 10:      44102          0          XT-PIC  aic7xxx, radeon@PCI:1:5:0
 11:         22          0          XT-PIC  usb-ohci
 12:       3431          0          XT-PIC  PS/2 Mouse
 14:      10141          0          XT-PIC  ide0
NMI:          0          0 
LOC:     463790     463789 
ERR:         69
MIS:          0


-- 
fabrice


-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to