zink: fix/relax resolve geometry check

there's no requirement in the spec that the geometry for resolves must match,
only that the geometry must be positive (i.e., no flipped extents)

this avoids major perf issues for scaled resolves

cc: mesa-stable

Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18364>
This commit is contained in:
Mike Blumenkrantz 2022-08-29 11:17:43 -04:00 committed by Marge Bot
parent 9c5edda3ca
commit 513fcb7936

View file

@ -33,9 +33,12 @@ blit_resolve(struct zink_context *ctx, const struct pipe_blit_info *info, bool *
info->alpha_blend)
return false;
if (info->src.box.width != info->dst.box.width ||
info->src.box.height != info->dst.box.height ||
info->src.box.depth != info->dst.box.depth)
if (info->src.box.width < 0 ||
info->dst.box.width < 0 ||
info->src.box.height < 0 ||
info->dst.box.height < 0 ||
info->src.box.depth < 0 ||
info->dst.box.depth < 0)
return false;
if (info->render_condition_enable &&