summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIago Toral Quiroga <itoral@igalia.com>2018-06-28 13:12:53 +0200
committerDylan Baker <dylan@pnwbakers.com>2018-07-03 10:25:26 -0700
commit52b78ae7da04f3292ed51f5448e269f020c1576c (patch)
treecab1dc0d66a699b6813ff778c29b1a91b8711d12
parentfed76b3269d1c6539eaf659983c44f691fb45d00 (diff)
anv/cmd_buffer: make descriptors dirty when emitting base state address
Every time we emit a new state base address we will need to re-emit our binding tables, since they might have been emitted with a different base state adress. Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net> CC: <mesa-stable@lists.freedesktop.org> (cherry picked from commit 1b54824687df5170e1dd5ab701b2b76da299b851)
-rw-r--r--src/intel/vulkan/genX_cmd_buffer.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c
index afccad8ef8..0f1cd769fa 100644
--- a/src/intel/vulkan/genX_cmd_buffer.c
+++ b/src/intel/vulkan/genX_cmd_buffer.c
@@ -67,6 +67,11 @@ genX(cmd_buffer_emit_state_base_address)(struct anv_cmd_buffer *cmd_buffer)
{
struct anv_device *device = cmd_buffer->device;
+ /* If we are emitting a new state base address we probably need to re-emit
+ * binding tables.
+ */
+ cmd_buffer->state.descriptors_dirty |= ~0;
+
/* Emit a render target cache flush.
*
* This isn't documented anywhere in the PRM. However, it seems to be