diff --git a/src/gallium/drivers/radeonsi/si_blit.c b/src/gallium/drivers/radeonsi/si_blit.c index 4ea511d0f1b..8191d024931 100644 --- a/src/gallium/drivers/radeonsi/si_blit.c +++ b/src/gallium/drivers/radeonsi/si_blit.c @@ -1233,7 +1233,7 @@ static void si_blit(struct pipe_context *ctx, const struct pipe_blit_info *info) if (unlikely(sctx->sqtt_enabled)) sctx->sqtt_next_event = EventCmdCopyImage; - if (si_compute_blit(sctx, info, NULL, false)) + if (si_compute_blit(sctx, info, NULL, true)) return; si_gfx_blit(ctx, info); diff --git a/src/gallium/drivers/radeonsi/si_compute_blit.c b/src/gallium/drivers/radeonsi/si_compute_blit.c index 92c026af899..ae019cbf6d2 100644 --- a/src/gallium/drivers/radeonsi/si_compute_blit.c +++ b/src/gallium/drivers/radeonsi/si_compute_blit.c @@ -972,7 +972,7 @@ bool si_compute_clear_image(struct si_context *sctx, struct pipe_resource *tex, info.mask = util_format_is_depth_or_stencil(format) ? PIPE_MASK_ZS : PIPE_MASK_RGBA; info.render_condition_enable = render_condition_enable; - return si_compute_blit(sctx, &info, color, !fail_if_slow); + return si_compute_blit(sctx, &info, color, fail_if_slow); } typedef struct { @@ -980,7 +980,7 @@ typedef struct { } uvec3; bool si_compute_blit(struct si_context *sctx, const struct pipe_blit_info *info, - const union pipe_color_union *clear_color, bool testing) + const union pipe_color_union *clear_color, bool fail_if_slow) { struct si_texture *sdst = (struct si_texture *)info->dst.resource; struct si_texture *ssrc = (struct si_texture *)info->src.resource; @@ -1037,7 +1037,7 @@ bool si_compute_blit(struct si_context *sctx, const struct pipe_blit_info *info, * * TODO: benchmark the performance on gfx11 */ - if (sctx->gfx_level < GFX11 && sctx->has_graphics && !testing) + if (sctx->gfx_level < GFX11 && sctx->has_graphics && fail_if_slow) return false; if (sctx->gfx_level < GFX10 && !sctx->has_graphics && vi_dcc_enabled(sdst, info->dst.level)) diff --git a/src/gallium/drivers/radeonsi/si_pipe.h b/src/gallium/drivers/radeonsi/si_pipe.h index b8a72413c8d..fb14722f9b4 100644 --- a/src/gallium/drivers/radeonsi/si_pipe.h +++ b/src/gallium/drivers/radeonsi/si_pipe.h @@ -1518,7 +1518,7 @@ bool si_compute_clear_image(struct si_context *sctx, struct pipe_resource *tex, const union pipe_color_union *color, bool render_condition_enable, bool fail_if_slow); bool si_compute_blit(struct si_context *sctx, const struct pipe_blit_info *info, - const union pipe_color_union *color, bool testing); + const union pipe_color_union *color, bool fail_if_slow); void si_init_compute_blit_functions(struct si_context *sctx); /* si_cp_dma.c */ diff --git a/src/gallium/drivers/radeonsi/si_test_image_copy_region.c b/src/gallium/drivers/radeonsi/si_test_image_copy_region.c index b4448886593..5c5c2a9f47c 100644 --- a/src/gallium/drivers/radeonsi/si_test_image_copy_region.c +++ b/src/gallium/drivers/radeonsi/si_test_image_copy_region.c @@ -929,7 +929,7 @@ void si_test_blit(struct si_screen *sscreen, unsigned test_flags) if (only_cb_resolve) success = si_msaa_resolve_blit_via_CB(ctx, &info); else - success = si_compute_blit(sctx, &info, NULL, true); + success = si_compute_blit(sctx, &info, NULL, false); if (success) { printf(" %-7s", only_cb_resolve ? "resolve" : "comp");