Module: Mesa Branch: master Commit: 35b53c8d47d3a0b53ee2549d73296d5db8e3cca0 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=35b53c8d47d3a0b53ee2549d73296d5db8e3cca0
Author: Jason Ekstrand <[email protected]> Date: Tue Jun 21 15:32:09 2016 -0700 anv/cmd: Dirty descriptor sets when a new pipeline is bound Ever since c2581a9375ea, the binding table layout has depended on the pipeline. This means that whenever we change pipelines we also need to re-emit binding tables for the new layout. Signed-off-by: Jason Ekstrand <[email protected]> Cc: "12.0" <[email protected]> --- src/intel/vulkan/genX_cmd_buffer.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/intel/vulkan/genX_cmd_buffer.c b/src/intel/vulkan/genX_cmd_buffer.c index 8fc09b9..95f9b48 100644 --- a/src/intel/vulkan/genX_cmd_buffer.c +++ b/src/intel/vulkan/genX_cmd_buffer.c @@ -512,6 +512,12 @@ genX(cmd_buffer_flush_state)(struct anv_cmd_buffer *cmd_buffer) anv_batch_emit_batch(&cmd_buffer->batch, &pipeline->batch); + /* The exact descriptor layout is pulled from the pipeline, so we need + * to re-emit binding tables on every pipeline change. + */ + cmd_buffer->state.descriptors_dirty |= + cmd_buffer->state.pipeline->active_stages; + /* If the pipeline changed, we may need to re-allocate push constant * space in the URB. */ _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
