[4/5] WineD3D: Work around a bad crash in fglrx

Stefan Dösinger stefan at codeweavers.com
Wed May 6 04:59:27 CDT 2009


Am Mittwoch, 6. Mai 2009 10:10:07 schrieb Henri Verbeet:
> 2009/5/5 Stefan Dösinger <stefan at codeweavers.com>:
> > + * quirk only enables point sprites on the first texture unit. This
> > keeps point sprites working in + * most games, but avoids the crash
>
> ...and on the other ones it will create hard to diagnose / explain
> bugs. Just disabling the extension if it's broken also avoids the
> crash, and will at least have predictable behaviour.
Not in this case. As I explain in a comment in the test, there's no d3d cap 
flag for point sprites. So the games will just go ahead and try to do the 
same kind of rendering and just fail in the same or worse way.

The only advantage we get from disabling point sprites altogether is the WARN 
we get if the game tries to use them. I'll add a similar WARN to the point 
sprite function if the game uses them and this workaround is active.

> I also *still* think us working around AMD's bugs is the wrong
> approach.
I agree in general, if this was just a rendering bug I'd put the workaround as 
a hack into CrossOver and be happy. However, we're trying to prevent a kernel 
panic here, and on the last two Wineconfs we agreed that we should try to 
prevent kernel panics while running our d3d tests, even if it is ugly(we have 
similar workarounds for old Mesa glDrawPixels / glReadPixels issues). If the 
tests crash the systems people will refuse to run them, making them useless.

> Of course it would also help if AMD took these kind of 
> things seriously, or at least replied to my posts
> (http://www.phoronix.com/forums/showpost.php?p=63527&postcount=107).
That specific issue is fixed in 9.4 I think. They confirmed the bug and 
replied here:
http://ati.cchtml.com/show_bug.cgi?id=1462

(unfortunately no 9.4 for <= r500 cards, so we have to keep our workaround in 
directx.c)



More information about the wine-devel mailing list