anv/query: flush render target before copying results
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>
Mon, 3 Dec 2018 14:33:35 +0000 (14:33 +0000)
committerLionel Landwerlin <lionel.g.landwerlin@intel.com>
Wed, 5 Dec 2018 11:43:34 +0000 (11:43 +0000)
commit9a7b3199037ac4b798974f561067cb3d66be8010
treed9ce2a8ce47b2bf645262ae6b6132bbd1965dca8
parentc1b6cb068c4dfe49c309624610e8610b3f0b27c3
anv/query: flush render target before copying results

This change tracks render target writes in the pipeline and applies a
render target flush before copying the query results to make sure the
preceding operations have landed in memory before the command streamer
initiates the copy.

v2: Simplify logic in CopyQueryResults (Jason)

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108909
Fixes: 37f9788e9a8e44 ("anv: flush pipeline before query result copies")
Cc: mesa-stable@lists.freedesktop.org
src/intel/vulkan/anv_private.h
src/intel/vulkan/genX_blorp_exec.c
src/intel/vulkan/genX_cmd_buffer.c
src/intel/vulkan/genX_gpu_memcpy.c
src/intel/vulkan/genX_query.c