From 080d28a03e0d53aa117fc3ab3f7fc805df965cf5 Mon Sep 17 00:00:00 2001 From: Sagar Ghuge Date: Thu, 6 Mar 2025 15:32:26 -0800 Subject: [PATCH] blorp: Set persample_msaa_dispatch for render shader Only 3D shader gets dispatched per sample not the compute shader. Signed-off-by: Sagar Ghuge Reviewed-by: Lionel Landwerlin Part-of: --- src/intel/blorp/blorp_blit.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/intel/blorp/blorp_blit.c b/src/intel/blorp/blorp_blit.c index df9a317a447..0e802a3b546 100644 --- a/src/intel/blorp/blorp_blit.c +++ b/src/intel/blorp/blorp_blit.c @@ -1200,6 +1200,7 @@ blorp_build_nir_shader(struct blorp_context *blorp, /* It only makes sense to do persample dispatch if the render target is * configured as multisampled. */ + assert(key->base.shader_pipeline == BLORP_SHADER_PIPELINE_RENDER); assert(key->rt_samples > 0); } @@ -2055,7 +2056,8 @@ try_blorp_blit(struct blorp_batch *batch, key->use_kill = true; key->need_dst_offset = true; - if (params->dst.surf.samples > 1) { + if (key->base.shader_pipeline == BLORP_SHADER_PIPELINE_RENDER && + params->dst.surf.samples > 1) { /* If the destination surface is a W-tiled multisampled stencil * buffer that we're mapping as Y tiled, then we need to arrange for * the WM program to run once per sample rather than once per pixel,