http://bugs.freedesktop.org/show_bug.cgi?id=13918





--- Comment #5 from Thomas Hellström <[EMAIL PROTECTED]>  2008-02-16 01:46:29 
PST ---
(In reply to comment #4)
> Yeah, this has always been a problem, but things seem to have become more
> fragile since TTM.  We should fix the fence wait code to do basically what we
> used to with irq waits from userland -- if the ring's made any progress, don't
> bail out yet.
> 

What we're doing elsewhere is to have a lockup watchdog that checks on
rendering progress (once every 1/2 second or so, so it's not
resource-consuming). When it detects what it think is a lockup it goes on
checking in more detail what's happening and if it's indeed a lockup, it sets
the error code on the fence, which will signal it, releasing waiting clients.
Clients that checks on errors will se an error. Then the GPU is reset. The net
effect is that the 3D client aborts on the fence error, but the X server can
continue rendering as if nothing happened (provided the GPU survives the
reset). 

This means that fence timeouts can be (and are) upped to 20 seconds or so.
Still, with programmable GPUs it's entirely possible to hit that limit as well,
so we should probably, as you say, do something sane about this, and also the
userland timeout problem, caused by waits that are interrupted by a signal.

Possibly the best solution is to have a timeout delay on each fence instead of
on the waiting itself. This avoids the need for a watchdog and a lockup check
is instead triggered when a fence has passed it's time-out delay and is waited
for.  

/Thomas



-- 
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to