From 5362adf68dc30dcf132e89e686c21bdd6a7f6dbb Mon Sep 17 00:00:00 2001 From: Erik Faye-Lund Date: Wed, 14 Apr 2021 16:47:42 +0200 Subject: [PATCH] zink: verify that source-format support linear-filter Similar to the previous commit, we should also verify that the source-format support linear-filter if we try to blit with it. Reviewed-By: Mike Blumenkrantz Part-of: --- src/gallium/drivers/zink/zink_blit.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/gallium/drivers/zink/zink_blit.c b/src/gallium/drivers/zink/zink_blit.c index 6900e42281f..062bc484e47 100644 --- a/src/gallium/drivers/zink/zink_blit.c +++ b/src/gallium/drivers/zink/zink_blit.c @@ -132,6 +132,11 @@ blit_native(struct zink_context *ctx, const struct pipe_blit_info *info) !(get_resource_features(screen, dst) & VK_FORMAT_FEATURE_BLIT_DST_BIT)) return false; + if (info->filter == PIPE_TEX_FILTER_LINEAR && + !(get_resource_features(screen, src) & + VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT)) + return false; + zink_fb_clears_apply_or_discard(ctx, info->dst.resource, zink_rect_from_box(&info->dst.box), false); zink_fb_clears_apply_region(ctx, info->src.resource, zink_rect_from_box(&info->src.box)); struct zink_batch *batch = zink_batch_no_rp(ctx);