panfrost: Flush when using transform feedback
authorAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Thu, 8 Aug 2019 14:46:54 +0000 (07:46 -0700)
committerAlyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Tue, 13 Aug 2019 16:43:11 +0000 (09:43 -0700)
This is a huge hack to workaround incomplete BO flushing logic, but it's
enough for the dEQP transform feedback tests, and doing the resource
management to get this right is out-of-scope for this patch series.

Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
src/gallium/drivers/panfrost/pan_context.c

index 661c1474cd50581eb8fd57562e7237e4783c08c4..7c4c0f7698448022e24268f25f1ac06df0d69624 100644 (file)
@@ -2629,6 +2629,7 @@ panfrost_get_query_result(struct pipe_context *pipe,
 
         case PIPE_QUERY_PRIMITIVES_GENERATED:
         case PIPE_QUERY_PRIMITIVES_EMITTED:
+                panfrost_flush(pipe, NULL, PIPE_FLUSH_END_OF_FRAME);
                 vresult->u64 = query->end - query->start;
                 break;