From: Mike Blumenkrantz Date: Sun, 14 Jun 2020 05:46:20 +0000 (-0400) Subject: zink: add note about buffer<->image copy functions not handling multisample X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8239fe5d74216218796872de040834e41da0e93d;p=mesa.git zink: add note about buffer<->image copy functions not handling multisample Reviewed-by: Erik Faye-Lund Part-of: --- diff --git a/src/gallium/drivers/zink/zink_resource.c b/src/gallium/drivers/zink/zink_resource.c index 3be32a95fdf..f093d7e9255 100644 --- a/src/gallium/drivers/zink/zink_resource.c +++ b/src/gallium/drivers/zink/zink_resource.c @@ -408,6 +408,14 @@ zink_transfer_copy_bufimage(struct zink_context *ctx, int aspect = 1 << u_bit_scan(&aspects); copyRegion.imageSubresource.aspectMask = aspect; + /* this may or may not work with multisampled depth/stencil buffers depending on the driver implementation: + * + * srcImage must have a sample count equal to VK_SAMPLE_COUNT_1_BIT + * - vkCmdCopyImageToBuffer spec + * + * dstImage must have a sample count equal to VK_SAMPLE_COUNT_1_BIT + * - vkCmdCopyBufferToImage spec + */ if (buf2img) vkCmdCopyBufferToImage(batch->cmdbuf, staging_res->buffer, res->image, res->layout, 1, ©Region); else