From 8239fe5d74216218796872de040834e41da0e93d Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Sun, 14 Jun 2020 01:46:20 -0400 Subject: [PATCH] zink: add note about buffer<->image copy functions not handling multisample Reviewed-by: Erik Faye-Lund Part-of: --- src/gallium/drivers/zink/zink_resource.c | 8 ++++++++ 1 file changed, 8 insertions(+) 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 -- 2.30.2