From 753d3e71d31ebe2a0389dca07c6d756bed896e22 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Tue, 20 May 2025 10:57:39 -0400 Subject: [PATCH] llvmpipe: disable conditional rendering mem for blits u_blitter doesn't support this, and changing u_blitter to support a niche lavapipe feature seems like overkill fixes dEQP-VK.conditional_rendering.conditional_ignore.resolve_image* cc: mesa-stable Reviewed-by: Konstantin Seurer Part-of: --- src/gallium/drivers/llvmpipe/lp_surface.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/gallium/drivers/llvmpipe/lp_surface.c b/src/gallium/drivers/llvmpipe/lp_surface.c index bd8102d40d5..f76b62d1e96 100644 --- a/src/gallium/drivers/llvmpipe/lp_surface.c +++ b/src/gallium/drivers/llvmpipe/lp_surface.c @@ -191,11 +191,16 @@ lp_blit(struct pipe_context *pipe, util_blitter_save_render_condition(lp->blitter, lp->render_cond_query, lp->render_cond_cond, lp->render_cond_mode); + + void *render_cond_buffer = lp->render_cond_buffer; + if (!blit_info->render_condition_enable) + lp->render_cond_buffer = NULL; util_blitter_blit(lp->blitter, &info, NULL); /* not sure why this is needed but it is */ if (llvmpipe_is_resource_referenced(pipe, blit_info->dst.resource, blit_info->dst.level) & LP_REFERENCED_FOR_WRITE) lp_setup_bind_framebuffer(lp->setup, &lp->framebuffer); + lp->render_cond_buffer = render_cond_buffer; }