radv: fix multisample image copies
authorMatthew Nicholls <mnicholls@feralinteractive.com>
Wed, 2 May 2018 12:03:52 +0000 (14:03 +0200)
committerSamuel Pitoiset <samuel.pitoiset@gmail.com>
Wed, 2 May 2018 17:32:00 +0000 (19:32 +0200)
commit97d57ef9174111bfe1fa6f85e022af5a3cf2f1ce
treeaf54417f506af2d3a3b6153cc9f09c697d376dbf
parent169d8e011aef79192f056ba8bc0a001cbea938c4
radv: fix multisample image copies

Previously before fb077b0728, the LOD parameter was being used in place of the
sample index, which would only copy the first sample to all samples in the
destination image. After that multisample image copies wouldn't copy anything
from my observations.

This fixes some copy_and_blit CTS tests.

v3.1: - set lod to 0 for nir_txf_ms (Samuel)
v2: - use GLSL_SAMPLER_DIM_MS instead of 2D (Samuel)
    - updated commit description (Samuel)

Fix this properly by copying each sample in a separate radv_CmdDraw and using a
pipeline with the correct rasterizationSamples for the destination image.

Cc: 18.0 18.1 <mesa-stable@lists.freedesktop.org>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
src/amd/vulkan/radv_meta_blit2d.c
src/amd/vulkan/radv_private.h