> I'm running without PageFlipping, and don't see any SwapBuffers ioctls in my 
> debug output, so that rules that out.
> 
> I got suspicious of the clear ioctl before and put a wait-for-idle (full 
> blown host-wait) call in after each clear. That didn't fix it either, so I 
> don't think it's the clear.
> 
> It's always radeon_cp_cmdbuf, and it never, ever locks up when nrect < 2, 
> and usually nrect >=3 (I think I might have seen a lockup with nrect == 2 
> but it's harder to provoke). emit_clip_rect() therefore seemed like the 
> safest place to put the wait. In the common case where nrect==1 it gets 
> called once only for the whole buffer, and most of the time it should be a 
> no-op.

The other dumb thing we're doing here is using those registers for 3d 
cliprects *at all* -- the radeon has 3 (three!) dedicated 3d scissor rects 
that are intended for this task -- we should simply change the code to use 
them, fix the lockup & get a 3x speedup in clipping situations...

Keith



-------------------------------------------------------
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