mesa/src/amd
Samuel Pitoiset 085e2ce3d4 radv: fix a sync issue with geometry shader primitives query on GFX10+
When NGG is used, the hw can't know the number of geometry shader
primitives. To fix that, the NGG geometry shader accumulates itself
the number of primitives by using an atomic operation directly to GDS.

Then, begin/query copy the start/stop values from GDS to the
query pool buffer using a PS_DONE event. This was actually wrong
because PS_DONE is completely asynchronous to everything and executed
when the preceding draws finish pixel shaders.

Fix this by using a COPY_DATA packet which is synced with CP. This
fixes random failures on Sienna Cichlid with
dEQP-VK.query_pool.statistics_query.*.geometry_shader_primitives.*.

Cc: <mesa-stable@lists.freedesktop.org>
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8590>
2021-01-21 08:15:43 +01:00
..
addrlib amd/addrlib: use cpp.has_argument() to filter compiler arguments 2021-01-05 11:29:11 +00:00
common ac/surface: Fix GFX9 sparse mip info. 2021-01-16 14:09:18 +00:00
compiler radv,aco: don't use MUBUF for multi-channel loads on GFX8 with robustness2 2021-01-20 17:57:56 +00:00
llvm ac/nir: implement sparse image/texture loads 2021-01-08 14:27:07 +00:00
registers amd/registers: add missing VRS registers 2020-12-14 16:22:38 +00:00
vulkan radv: fix a sync issue with geometry shader primitives query on GFX10+ 2021-01-21 08:15:43 +01:00
Android.addrlib.mk android: amd/addrlib: add gfx10 support 2019-07-10 09:03:55 +02:00
Android.common.mk android: amd/registers: switch to new generated register definitions 2020-09-06 20:20:34 +02:00
Android.compiler.mk android: aco/isel: Move context initialization code to a dedicated file 2020-09-14 21:26:53 +02:00
Android.mk android: aco: add support for libmesa_aco 2019-09-28 15:56:34 +02:00
Makefile.sources android: ac/radv: fix typo in ac_rgp.h listed in Makefile.sources 2021-01-09 11:15:09 +01:00
meson.build aco: add framework for unit testing 2020-07-30 16:13:08 +00:00