Mesa (master): v3d: Put the dst bo first in the list of BOs for TFU calls.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Wed Dec 19 18:29:43 UTC 2018


Module: Mesa
Branch: master
Commit: 365728dc5d46e133b7ef67e3859843dda708eb20
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=365728dc5d46e133b7ef67e3859843dda708eb20

Author: Eric Anholt <eric at anholt.net>
Date:   Wed Dec 19 09:29:26 2018 -0800

v3d: Put the dst bo first in the list of BOs for TFU calls.

In the UAPI, the first BO is the destination, and the one the kernel
should do an exclusive reservation on.  Currently we only do exclusive
reservations, anyway.  However, in the simulator path I was only copying
back the "destination" BO (actually src in this case), and this caused
regressions once I fixed the simulator to actually complete TFU before
returning (since otherwise, the TFU op would happen at the start of the
next CL submit and the draw would get the right contents).

Fixes: 976ea90bdca2 ("v3d: Add support for using the TFU to do some blits.")

---

 src/gallium/drivers/v3d/v3d_blit.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/v3d/v3d_blit.c b/src/gallium/drivers/v3d/v3d_blit.c
index d6d0957001..7662c63d8f 100644
--- a/src/gallium/drivers/v3d/v3d_blit.c
+++ b/src/gallium/drivers/v3d/v3d_blit.c
@@ -386,8 +386,8 @@ v3d_tfu(struct pipe_context *pctx,
         struct drm_v3d_submit_tfu tfu = {
                 .ios = (height << 16) | width,
                 .bo_handles = {
-                        src->bo->handle,
-                        src != dst ? dst->bo->handle : 0
+                        dst->bo->handle,
+                        src != dst ? src->bo->handle : 0
                 },
                 .in_sync = v3d->out_sync,
                 .out_sync = v3d->out_sync,




More information about the mesa-commit mailing list