[PATCH vkd3d] vkd3d: Do not report a root signature version higher than requested.

Hans-Kristian Arntzen post at arntzen-software.no
Fri Oct 25 10:28:44 CDT 2019


On 10/25/19 5:22 PM, Rémi Bernon wrote:
> On 10/25/19 5:14 PM, Hans-Kristian Arntzen wrote:
>> It does indeed sound like something is off with the RS 1.1 support, 
>> however, it's not clear to me what is going wrong or what the app is 
>> doing differently if it detects 1.1. As far as I know, the only 
>> difference with RS 1.1 is the addition of descriptor/data volatility 
>> information.
>>
>> I didn't hit any issues with RS 1.1 on SOTTR when I tried it, fwiw.
>>
>> Cheers,
>> Hans-Kristian
>>
> I clearly have a crash on SOTTR with NVIDIA GPU. The game requests 
> root signature 1.0 and we reply with 1.1, it then skips a bunch of 
> CreateRootSignature calls that I can see when we return 1.0 only.
>
> Then I have a couple of messages like:
>
>   warn:d3d12_pipeline_state_init_graphics:Root signature is NULL.
>
> And quickly followed by a crash because of the assert in:
>
>   libs/vkd3d/command.c:3973
>
> which tries to access root_signature->parameters with a NULL pointer.
>
> MSDN says that this feature request should not reply with a higher 
> value than requested. I didn't feel like it required a test, but I can 
> add one.

Right, CheckFeatureSupport does specify it returns minimum version based 
on input. I missed that.

https://docs.microsoft.com/en-us/windows/win32/api/d3d12/ns-d3d12-d3d12_feature_data_root_signature

Cheers,
Hans-Kristian




More information about the wine-devel mailing list