zink: disable vkCmdResolveImage when respecting render-condition
authorErik Faye-Lund <erik.faye-lund@collabora.com>
Tue, 12 May 2020 13:01:16 +0000 (15:01 +0200)
committerMarge Bot <eric+marge@anholt.net>
Thu, 14 May 2020 13:55:44 +0000 (13:55 +0000)
vkCmdResolveImage doesn't respect render-condition, so let's fall back
to blitter in this case instead.

Fixes: 80d7cc6f129 ("zink: enable conditional rendering if available")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5008>

src/gallium/drivers/zink/zink_blit.c

index d02d369514d6157bc9621de8789fa6c13276ae09..8accc0c7286ad3cdf298aa052665c8b27b5a0241 100644 (file)
@@ -12,7 +12,8 @@ blit_resolve(struct zink_context *ctx, const struct pipe_blit_info *info)
    if (util_format_get_mask(info->dst.format) != info->mask ||
        util_format_get_mask(info->src.format) != info->mask ||
        info->scissor_enable ||
-       info->alpha_blend)
+       info->alpha_blend ||
+       info->render_condition_enable)
       return false;
 
    struct zink_resource *src = zink_resource(info->src.resource);