I've been trying to track down one of the hangs on the radeon at the mo.

Tuxkart draws, amongst other things, a course map with 2 GL_LINE_LOOPS
and a quad for each racer.

If I either (a) remove the function to draw that from tuxkart

or (b) force tcl_render_line_loop_verts to use the
tcl_render_line_strip_verts path at the bottom of that function (which
uses EMIT_PRIM() rather than ALLOC_ELTS et al), it doesn't hang. i.e I
put "if (0 && (flags & PRIM_END)) {" at line 215 in t_dd_dmatmp2.h

The only thing that looks odd is that the call to radeonEmitAOS it uses
in this path is the one that's part of ALLOC_ELTS that always uses 0 as
an offset, so you see the 4: value below is the same for all 3
primitives - I wondered if that was it?

Here's a short extract running it in debug.

basically it's flush_prims radeon_vtxfmt.c
        -> tcl_render_line_loop_verts
                -> emit_contiguous_verts (x2)
                        ALLOC_ELTS (which does radeonEmitAOS, and AllocEltsOpenEnded)
                        etc

The hang does always trigger, sometimes it's a couple of seconds into
the level, sometimes you can get 1/2-way around the track but I've
played for significantly longer without a prob, with the kludge above.

vtxfmt prim 0: GL_LINE_LOOP 0..95
radeonEmitAOS
radeonEmitAOS:
   0: 5
   1: c0022f00
   2: 1
   3: 404
   4: 453d980
radeonAllocEltsOpenEnded 95
radeonEmitState
radeonAllocEltsOpenEnded: header 0xc0002a00 vfmt 0x80000008 prim 213
vtxfmt prim 1: GL_LINE_LOOP 95..190
radeonFlushElts
radeonEmitAOS
radeonEmitAOS:
   0: 5
   1: c0022f00
   2: 1
   3: 404
   4: 453d980
radeonAllocEltsOpenEnded 95
radeonEmitState
radeonAllocEltsOpenEnded: header 0xc0002a00 vfmt 0x80000008 prim 213
vtxfmt prim 2: GL_QUADS 190..206
radeonFlushElts
radeonEmitAOS
radeonEmitAOS:
   0: 5
   1: c0022f00
   2: 1
   3: 404
   4: 453d980
radeonAllocEltsOpenEnded 24
radeonEmitState
radeonAllocEltsOpenEnded: header 0xc0002a00 vfmt 0x80000008 prim 214
radeonReleaseDmaRegion from flush_prims

-- 
Michael.

_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

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

Reply via email to