mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2025-12-24 21:50:12 +01:00
iris: Emit flushes for push constant source buffers
Push constant loading is not coherent with L3 according to the document that describes the hardware change for the vertex buffer L3 Bypass Disable field. If we've updated a push constant buffer with say, a blorp_buffer_copy, we may need to flush both the render cache and the tile cache. Reviewed-by: Francisco Jerez <currojerez@riseup.net> Reviewed-by: Rohan Garg <rohan.garg@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15275>
This commit is contained in:
parent
bbd5714a7e
commit
1c8b4940eb
1 changed files with 3 additions and 0 deletions
|
|
@ -5617,6 +5617,9 @@ setup_constant_buffers(struct iris_context *ice,
|
|||
|
||||
assert(cbuf->buffer_offset % 32 == 0);
|
||||
|
||||
if (res)
|
||||
iris_emit_buffer_barrier_for(batch, res->bo, IRIS_DOMAIN_OTHER_READ);
|
||||
|
||||
push_bos->buffers[n].length = range->length;
|
||||
push_bos->buffers[n].addr =
|
||||
res ? ro_bo(res->bo, range->start * 32 + cbuf->buffer_offset)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue