Module: Mesa Branch: staging/20.1 Commit: b65f0fae457c03be1d281ecd6552191af5672d0c URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b65f0fae457c03be1d281ecd6552191af5672d0c
Author: Jason Ekstrand <[email protected]> Date: Fri Apr 24 12:27:21 2020 -0500 anv:gpu_memcpy: Emit 3DSTATE_VF_INDEXING on Gen8+ If this gets run right after something which uses VK_VERTEX_INPUT_RATE_INSTANCE on its first vertex binding, we could end up in serious trouble. Fixes: 3d9747780b "anv: Add a helper for doing buffer copies with..." Reviewed-by: Rafael Antognolli <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5090> (cherry picked from commit 164aed6c8142a995c6ac1c36ee7a16896f675163) --- .pick_status.json | 2 +- src/intel/vulkan/genX_gpu_memcpy.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.pick_status.json b/.pick_status.json index 1adb9af3556..86841534aaf 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1030,7 +1030,7 @@ "description": "anv:gpu_memcpy: Emit 3DSTATE_VF_INDEXING on Gen8+", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "3d9747780bc2508f4474230a0998d9dba7b02d1e" }, diff --git a/src/intel/vulkan/genX_gpu_memcpy.c b/src/intel/vulkan/genX_gpu_memcpy.c index 504c70f3ef3..57dc55ec394 100644 --- a/src/intel/vulkan/genX_gpu_memcpy.c +++ b/src/intel/vulkan/genX_gpu_memcpy.c @@ -112,6 +112,13 @@ genX(cmd_buffer_so_memcpy)(struct anv_cmd_buffer *cmd_buffer, .Component3Control = (bs >= 16) ? VFCOMP_STORE_SRC : VFCOMP_STORE_0, }); +#if GEN_GEN >= 8 + anv_batch_emit(&cmd_buffer->batch, GENX(3DSTATE_VF_INSTANCING), vfi) { + vfi.InstancingEnable = false; + vfi.VertexElementIndex = 0; + } +#endif + #if GEN_GEN >= 8 anv_batch_emit(&cmd_buffer->batch, GENX(3DSTATE_VF_SGVS), sgvs); #endif _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
