diff options
author | Samuel Pitoiset <[email protected]> | 2019-05-02 14:56:46 +0200 |
---|---|---|
committer | Samuel Pitoiset <[email protected]> | 2019-05-02 15:55:46 +0200 |
commit | 08be23bfdec9fb447c58ae48bf9cc1b91ecba128 (patch) | |
tree | 0b0b5a9f46db642220d7a4483d4c7009cc045859 /src/amd/vulkan/radv_cmd_buffer.c | |
parent | 48107b5a2b0c911fb60a367458806e3db84283f2 (diff) |
radv: set WD_SWITCH_ON_EOP=1 when drawing primitives from a stream output buffer
According to RadeonSI, this seems to be required by the hardware
to avoid GPU hangs. I think I just forgot to set that bit when I
implemented VK_EXT_transform_feedback.
This fixes a GPU hang with Space Engineers and DXVK.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=110291
Fixes: b4eb029062a ("radv: implement VK_EXT_transform_feedback")
Signed-off-by: Samuel Pitoiset <[email protected]>
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Diffstat (limited to 'src/amd/vulkan/radv_cmd_buffer.c')
-rw-r--r-- | src/amd/vulkan/radv_cmd_buffer.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/amd/vulkan/radv_cmd_buffer.c b/src/amd/vulkan/radv_cmd_buffer.c index 963118215fa..b04c998fac2 100644 --- a/src/amd/vulkan/radv_cmd_buffer.c +++ b/src/amd/vulkan/radv_cmd_buffer.c @@ -2202,6 +2202,7 @@ radv_emit_draw_registers(struct radv_cmd_buffer *cmd_buffer, ia_multi_vgt_param = si_get_ia_multi_vgt_param(cmd_buffer, draw_info->instance_count > 1, draw_info->indirect, + !!draw_info->strmout_buffer, draw_info->indirect ? 0 : draw_info->count); if (state->last_ia_multi_vgt_param != ia_multi_vgt_param) { |