On Fri, 14 May 2021 at 12:04, Francois Gouget fgouget@codeweavers.com wrote:
I will resubmit with these changes (though technically, being an enum, I doubt D3D_FEATURE_LEVEL is unsigned).
Sure, but we don't care so much about the type of D3D_FEATURE_LEVEL as about the kind of information stored in it. I.e., a feature level like "-1.-1" isn't all that meaningful. Of course it doesn't make any difference for any of the valid D3D_FEATURE_LEVEL values, but that's the reasoning at least.
Without having debugged it, my first guess would be that perhaps the tls_data structure is getting corrupted somehow. Does that happen consistently for that particular crash?
Yes. More specifically:
- Only cw-gtx560 crashes almost systematically in the d3d11:d3d11 test.
- When running Windows 10 cw-gtx560 never gets the 'last trace' message.
- When running Windows 8.1 cw-gtx560 sometimes gets the 'last trace' message but that looks like a different crash: the last trace line number does not match.
- Machines with rx460 and rx550 GPUs also crash but a bit less often and they never get the 'last trace' message either.
It may be interesting to try printing the contents of the tls_data structure when that crash happens on the cw-gtx560 machine, although it may simply be a case of the graphics driver overwriting it before crashing.