Module: Mesa Branch: master Commit: 0b2cfd0668e3d827a2380c8ce6bc28c51d7a49ec URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=0b2cfd0668e3d827a2380c8ce6bc28c51d7a49ec
Author: Samuel Iglesias Gonsálvez <[email protected]> Date: Thu Jun 18 11:04:50 2020 +0200 turnip: add LRZ valid tracking for secondary command buffers After a secondary command buffer is executed, LRZ is not valid until it is cleared again. Signed-off-by: Samuel Iglesias Gonsálvez <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5146> --- src/freedreno/vulkan/tu_cmd_buffer.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/freedreno/vulkan/tu_cmd_buffer.c b/src/freedreno/vulkan/tu_cmd_buffer.c index 33dc17b17fe..d1fb52ea083 100644 --- a/src/freedreno/vulkan/tu_cmd_buffer.c +++ b/src/freedreno/vulkan/tu_cmd_buffer.c @@ -2754,6 +2754,13 @@ tu_CmdExecuteCommands(VkCommandBuffer commandBuffer, } cmd->state.dirty = ~0u; /* TODO: set dirty only what needs to be */ + if (cmd->state.pass) { + /* After a secondary command buffer is executed, LRZ is not valid + * until it is cleared again. + */ + cmd->state.lrz.valid = false; + } + /* After executing secondary command buffers, there may have been arbitrary * flushes executed, so when we encounter a pipeline barrier with a * srcMask, we have to assume that we need to invalidate. Therefore we need _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
