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