Bug 94468 - [HSW, regression, bisected] numerous Sascha demos render incorrectly
Summary: [HSW, regression, bisected] numerous Sascha demos render incorrectly
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Vulkan/intel (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: Jordan Justen
QA Contact: Intel 3D Bugs Mailing List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-03-09 19:40 UTC by Nanley Chery
Modified: 2016-05-17 20:13 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Incorrectly rendered demo (231.49 KB, image/png)
2016-03-09 19:40 UTC, Nanley Chery
Details

Description Nanley Chery 2016-03-09 19:40:38 UTC
Created attachment 122184 [details]
Incorrectly rendered demo

On Gen7, and prior the following commit:

commit 248ab61740c4082517424f5aa94b2f4e7b210d76
Author: Jason Ekstrand <jason.ekstrand@intel.com>
Date:   Tue Mar 8 17:10:05 2016 -0800

    anv/cmd_buffer: Pull the core of flush_state into genX_cmd_buffer

the Sascha Willems vulkanscene demo was rendering correctly. Now however, a gray oval is rendered in the middle of the demo.

Reference:
https://github.com/SaschaWillems/Vulkan/blob/master/screenshots/vulkan_scene.png
Comment 1 Nanley Chery 2016-03-09 21:32:30 UTC
With further testing, I've determined that a number of demos besides vulkanscene are affected.
Comment 2 Jason Ekstrand 2016-03-09 22:19:25 UTC
Turns out that the problem is that calling cmd_buffer_config_l3 isn't safe to do when rendering on gen7.  We need to fix that.  Re-assigning to Jordan.
Comment 3 Jason Ekstrand 2016-03-12 16:59:08 UTC
I just pushed a band-aid patch that doesn't actually solve the problem but does get it back to working as well as it did before:

commit 41af9b2e517dd0c17e519490ca915b96f6898390
Author: Jason Ekstrand <jason.ekstrand@intel.com>
Date:   Sat Mar 12 08:54:41 2016 -0800

    HACK: Don't re-configure L3$ in render stages pre-BDW
    
    This fixes a "regression" on Haswell and prior caused by merging the gen7
    and gen8 flush_state functions.  Haswell should still work just fine if
    you're on a 4.4 kernel, but we really should make it detect the command
    parser version and do something intelligent.
Comment 4 Jordan Justen 2016-03-12 23:42:37 UTC
I've tried (unsuccessfully) to reproduce this on
two Haswell systems.

Device: Mesa DRI Intel(R) Haswell Mobile  (0xa26)

Device: Mesa DRI Intel(R) Haswell Mobile  (0xa2e)
Comment 5 Lionel Landwerlin 2016-05-10 21:06:52 UTC
I've had a similar problem with the vkcube demo (https://github.com/krh/vkcube) on my MacBook Air HSW :

https://bugs.freedesktop.org/show_bug.cgi?id=95139

I wonder whether that's the same issue.

Interestingly enough the cube demo from https://github.com/LunarG/VulkanTools.git works.

My system : Device: Mesa DRI Intel(R) Haswell Mobile  (0xa26)
Comment 6 Jordan Justen 2016-05-17 20:13:17 UTC
Jason had a workaround patch to fix this previously, but
hopefully it is fixed without the workaround as of
6c9f35bb73ca69b75cb40fc96c41717806fc74da.


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.