Bug 108911 - Vkd3d test failure test_clear_render_target_view()
Summary: Vkd3d test failure test_clear_render_target_view()
Status: NEW
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Vulkan/intel (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: Intel 3D Bugs Mailing List
QA Contact: Intel 3D Bugs Mailing List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-11-30 04:14 UTC by Timothy Arceri
Modified: 2018-12-08 16:17 UTC (History)
4 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Aub dump with simplified test (10.43 KB, application/zip)
2018-12-04 14:40 UTC, Lionel Landwerlin
Details
Untested patch (2.19 KB, patch)
2018-12-04 15:47 UTC, Jason Ekstrand
Details | Splinter Review
Compile-tested patch (2.20 KB, patch)
2018-12-04 15:52 UTC, Jason Ekstrand
Details | Splinter Review

Note You need to log in before you can comment on or make changes to this bug.
Description Timothy Arceri 2018-11-30 04:14:50 UTC
Tested on SKL.

The d3d12 test suite can be run using the command:

tests/d3d12 or by running make check

Result:

d3d12:3758: Test failed: Got 0xbf4c8019, expected 0xbf95bc59 at (0, 0, 0).
d3d12:3818: Test failed: Got 0xff00ff00, expected 0xff0000ff at (0, 0, 0).
d3d12:3818: Test failed: Got 0xff00ff00, expected 0xffff0000 at (0, 0, 0).

For comparision the test passes on RADV.

Instructions for building the Vkd3d test suite:
-----------------------------------------------

Source code: git://source.winehq.org/git/vkd3d.git

autogen.sh
configure
make

Updated Spriv headers may be needed:

https://github.com/KhronosGroup/Vulkan-Headers.git
https://github.com/KhronosGroup/SPIRV-Headers.git

CPPFLAGS="-I/home/tarceri/git/SPIRV-Headers/include -I/home/tarceri/git/Vulkan-Headers/include" ./configure

Also an undated version of widl (a tool in the wine project) may be needed:

git://source.winehq.org/git/wine.git

./configure --without-freetype
make tools/widl

Then pass the new build to configure for Vkd3d e.g.

WIDL=~/git/wine/tools/widl/widl ./configure
Comment 1 Lionel Landwerlin 2018-12-04 14:40:26 UTC
Created attachment 142718 [details]
Aub dump with simplified test

I've reduced the test to clear & resolve 2 layers only.
The clear color of layer0 ends up in the layer1.
Adding a texture cache invalidate between resolve of layer 0 & 1 fixes the issue. Not quite sure what's going on here...
Comment 2 Jason Ekstrand 2018-12-04 15:47:55 UTC
Created attachment 142719 [details] [review]
Untested patch

The attached patch (which I haven't even compile-tested) should fix the issue with MCS partial resolves.  We also should probably stop even doing them in anv (as per Lionel's patch).
Comment 3 Jason Ekstrand 2018-12-04 15:52:15 UTC
Created attachment 142720 [details] [review]
Compile-tested patch

The new patch builds.
Comment 4 Lionel Landwerlin 2018-12-04 16:39:11 UTC
(In reply to Jason Ekstrand from comment #3)
> Created attachment 142720 [details] [review] [review]
> Compile-tested patch
> 
> The new patch builds.

Unfortunately, not fixing the issue :(
I'm writing a new crucible test to track that regression.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.