radv: Fix condition for skipping the continue CS.
authorBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Wed, 2 Oct 2019 19:26:01 +0000 (21:26 +0200)
committerBas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Thu, 3 Oct 2019 13:02:07 +0000 (13:02 +0000)
We need the continue CS for referencing the tess/GDS/sample position BOs.

Fixes: 46e52df34d3 "radv: add tessellation ring allocation support. (v2)"
Fixes: e1dc3ab7534 "radv/gfx10: allocate GDS/OA buffer objects for NGG streamout"
Fixes: 1171b304f30 "radv: overhaul fragment shader sample positions."
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
src/amd/vulkan/radv_device.c

index d3c4125..8965530 100644 (file)
@@ -2682,7 +2682,8 @@ radv_get_preamble_cs(struct radv_queue *queue,
                *initial_full_flush_preamble_cs = queue->initial_full_flush_preamble_cs;
                *initial_preamble_cs = queue->initial_preamble_cs;
                *continue_preamble_cs = queue->continue_preamble_cs;
-               if (!scratch_size && !compute_scratch_size && !esgs_ring_size && !gsvs_ring_size)
+               if (!scratch_size && !compute_scratch_size && !esgs_ring_size && !gsvs_ring_size &&
+                   !needs_tess_rings && !needs_gds && !needs_sample_positions)
                        *continue_preamble_cs = NULL;
                return VK_SUCCESS;
        }