From: Keith W. <ke...@tu...> - 2002-12-08 21:48:47
|
Felix K=FChling wrote: > On Sun, 8 Dec 2002 14:24:58 +0100 > Felix K=FChling <fe...@vi...> wrote: >=20 >=20 >>Hi, >> >>as I reported earlier there seems to be a race condition in the Radeon >>driver when state is emitted while the card is processing vertices. Now >=20 >=20 > Keith, I just read your other message. Ok, so let's call it "failure" ;= -) >=20 >=20 >>I narrowed it down to tex[0], tex[1] and tcl states that appear to >>require 3D to be idle. Can someone with Radeon specs confirm this? Othe= r >=20 >=20 > That's exactly what you asked for :). More precisely, if TCL was > disabled I had to wait before emitting texture changes. If TCL was > enabled it was enough to wait before emitting TCL state. But this may b= e > due to the order of state changes. If TCL state is always emitted befor= e > texture state, then waiting before the TCL state will also ensure that > 3D is idle before the texture state change. > Felix, I've committed the first version for now, because 1) it's cleaner 2) it emits at most 1 wait per statechange 3) I'm not convinced that there are many statechanges that don't touch = any=20 of tcl, tex0 or tex1 -- ie I think the second version would emit a wait o= n=20 *almost* every statechange. If you want to narrow the lockup conditions down further, feel free & I'l= l=20 commit the results. Keith |