After the failure of my 27 months old XFX 8800 Ultra, I bought an ATI 5970 VGA card, which is impressive hardware on paper, yet served by very imature drivers. This card performs great on 3D games but is miserable on “simple” 2D desktop applications, namely for video – and I am a very intense video user, regularly running at least 5 live video sources. I run Windows XP and two Samsung 305T Plus monitors.

My top 2 annoying problems are (1) the PC doesn’t resume from standby, and (2) the screen rotation is disabled. Searching a bit will find these complaints on other operating systems.

Then there is desktop corruption. While standby doesn’t work at all, hibernate still “kind of” does… unfortunately, after resuming from hibernate, the PC might display some odd pixels at random locations – I fix such corruption by changing the screen resolution, then going back to the original.

This all translates to an unstable system, that eventually crashes because of watchdog.sys: a timer that monitors VGA driver related threads, to check if they are [not] responding. In my case, because of the many live video feeds (some in high resolution), I suspect that a “hot fix” would be to radically DISABLE the timer or to increase its tolerance, before the annoying bug 0xEA, THREAD_STUCK_IN_DEVICE_DRIVER.

The ways to do this are to edit the registry, for example using regedit.exe, and then browse to

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Watchdog\Display\

20100505_watchdog_sys

where

to disable the timer it is possible to add a new DWORD key named “DisableBugCheck”, with the value 1. Put the value at 0 to go back to normal. I did NOT enable this potential solution… yet;

to control the tolerable thread delay, add a new DWORD key named “BreakPointDelay”, with the value of x where x * 10 seconds computes the limit. I configured my system for delays up to 30 seconds, so this key’s value is set to 3.

I hope this helps someone, including myself.