Michael wrote: > 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.
Wow, good work... How did you track this down? It looks like it would have taken ages... Keith _______________________________________________________________ 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