From 88f77aa811befffd931571216bb4d6978a1fb155 Mon Sep 17 00:00:00 2001 From: Lionel Landwerlin Date: Tue, 5 Apr 2022 15:35:57 +0300 Subject: [PATCH] anv: disable preemption on 3DPRIMITIVE on gfx12 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit To workaround a push constant corruption issue. Signed-off-by: Lionel Landwerlin Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5963 Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/5662 Cc: mesa-stable Reviewed-by: Tapani Pälli Part-of: --- src/intel/genxml/gen12.xml | 2 ++ src/intel/vulkan/genX_state.c | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/src/intel/genxml/gen12.xml b/src/intel/genxml/gen12.xml index c250da0c07c..2d708b5746a 100644 --- a/src/intel/genxml/gen12.xml +++ b/src/intel/genxml/gen12.xml @@ -7201,7 +7201,9 @@ + + diff --git a/src/intel/vulkan/genX_state.c b/src/intel/vulkan/genX_state.c index c3d8592e515..25fa9db25f1 100644 --- a/src/intel/vulkan/genX_state.c +++ b/src/intel/vulkan/genX_state.c @@ -316,6 +316,11 @@ init_render_queue_state(struct anv_queue *queue) anv_batch_write_reg(&batch, GENX(CS_CHICKEN1), cc1) { cc1.ReplayMode = MidcmdbufferPreemption; cc1.ReplayModeMask = true; + +#if GFX_VERx10 == 120 + cc1.DisablePreemptionandHighPriorityPausingdueto3DPRIMITIVECommand = true; + cc1.DisablePreemptionandHighPriorityPausingdueto3DPRIMITIVECommandMask = true; +#endif } #if GFX_VERx10 < 125