anv: fixup streamout write barriers

Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: mesa-stable
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8796
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22336>
(cherry picked from commit cff71ae8ff)
This commit is contained in:
Lionel Landwerlin 2023-04-06 17:13:32 +03:00 committed by Dylan Baker
parent e8f90ac985
commit 4e975002c4
2 changed files with 6 additions and 2 deletions

View file

@ -4764,7 +4764,7 @@
"description": "anv: fixup streamout write barriers",
"nominated": true,
"nomination_type": 0,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": null,
"notes": null

View file

@ -2201,8 +2201,12 @@ anv_pipe_flush_bits_for_access_flags(struct anv_device *device,
/* We're transitioning a buffer written either from VS stage or from
* the command streamer (see CmdEndTransformFeedbackEXT), we just
* need to stall the CS.
*
* Streamout writes apparently bypassing L3, in order to make them
* visible to the destination, we need to invalidate the other
* caches.
*/
pipe_bits |= ANV_PIPE_CS_STALL_BIT;
pipe_bits |= ANV_PIPE_CS_STALL_BIT | ANV_PIPE_INVALIDATE_BITS;
break;
default:
break; /* Nothing to do */