Android-x86
Fork
Donation

  • R/O
  • HTTP
  • SSH
  • HTTPS

external-mesa: Commit

external/mesa


Commit MetaInfo

Revisionb7d3c71d649348e0454c9a1a180cfeefcbea6452 (tree)
Time2017-04-12 21:30:22
AuthorAlex Smith <asmith@fera...>
CommiterEmil Velikov

Log Message

radv: Invalidate L2 for TRANSFER_WRITE barriers

CP DMA and PKT3_WRITE_DATA (in CmdUpdateBuffer) don't (currently) write
through L2. Therefore, to make these writes visible to later accesses
we must invalidate L2 rather than just writing it back, to avoid the
possibility that stale data is read through L2.

Signed-off-by: Alex Smith <asmith@feralinteractive.com>
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Cc: "17.0" <mesa-stable@lists.freedesktop.org>
[Bas: patch is a backport for 17.0 of the cherry-pick below]
(cherry picked from commit bc5d587a80b64fb3e0a5ea8067e6317fbca2bbc5)

Change Summary

Incremental Difference

--- a/src/amd/vulkan/radv_cmd_buffer.c
+++ b/src/amd/vulkan/radv_cmd_buffer.c
@@ -2580,7 +2580,8 @@ void radv_CmdPipelineBarrier(
25802580 flush_bits |= RADV_CMD_FLAG_FLUSH_AND_INV_DB;
25812581 break;
25822582 case VK_ACCESS_TRANSFER_WRITE_BIT:
2583- flush_bits |= RADV_CMD_FLAG_FLUSH_AND_INV_CB;
2583+ flush_bits |= RADV_CMD_FLAG_FLUSH_AND_INV_CB |
2584+ RADV_CMD_FLAG_INV_GLOBAL_L2;
25842585 break;
25852586 default:
25862587 break;
Show on old repository browser