[PATCH 3/7] d3d11/tests: Add workaround for bug in AMD Windows driver.

Józef Kucia joseph.kucia at gmail.com
Fri Dec 16 10:11:48 CST 2016


On Fri, Dec 16, 2016 at 11:11 AM, Józef Kucia <joseph.kucia at gmail.com> wrote:
> On Fri, Dec 16, 2016 at 10:53 AM, Henri Verbeet <hverbeet at gmail.com> wrote:
>> On 15 December 2016 at 13:45, Józef Kucia <jkucia at codeweavers.com> wrote:
>>> Signed-off-by: Józef Kucia <jkucia at codeweavers.com>
>>> ---
>>>  dlls/d3d11/tests/d3d11.c | 59 +++++++++++++++++++++++++++---------------------
>>>  1 file changed, 33 insertions(+), 26 deletions(-)
>>>
>> Unfortunately this makes it fail on Wine for me, probably because the
>> initial texture data is undefined.
>
> I think the initial texture data should be initialized. The texture
> accessed from SRV uses non-depth/stencil format and CopyResource()
> should do nothing when one texture is depth/stencil and other isn't.
> I'll take a second look.

It fails because it depends on undefined behavior in OpenGL. We use a
non-depth stencil format (e.g. GL_R16, GL_R32) when we create a
texture and D3D11_BIND_DEPTH_STENCIL is not set. In the test such
texture is used with a shadow sampler. It works with most drivers, but
fails with radeonsi. I am currently in favor of keeping the test
unmodified. We can just skip it on Windows with AMD GPUs (see
is_amd_device() in patch 128549). Of course, if we find an application
which uses non-depth/stencil textures with comparison samplers, we'll
have to fix the underlying issue.



More information about the wine-devel mailing list