radv: emit pending flushes after late decompressions with fbfetch

If the rendering state is inherited in the secondary, otherwise nothing
wait for the pending flushes after a decompression pass. One more
argument to stop delaying this.

Fixes
dEQP-VK.renderpasses.dynamic_rendering.partial_secondary_cmd_buff.local_read.*

Cc: mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39678>
(cherry picked from commit 13c9e529bd)
This commit is contained in:
Samuel Pitoiset 2026-02-03 14:59:49 +01:00 committed by Eric Engestrom
parent 870140c527
commit 1e415d1bdf
2 changed files with 4 additions and 1 deletions

View file

@ -14,7 +14,7 @@
"description": "radv: emit pending flushes after late decompressions with fbfetch",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": null,
"notes": null

View file

@ -9694,6 +9694,9 @@ radv_CmdExecuteCommands(VkCommandBuffer commandBuffer, uint32_t commandBufferCou
if (primary->state.dirty & RADV_CMD_DIRTY_FBFETCH_OUTPUT) {
radv_handle_fbfetch_output(primary);
primary->state.dirty &= ~RADV_CMD_DIRTY_FBFETCH_OUTPUT;
/* Emit pending flushes if a late decompression was performed. */
radv_emit_cache_flush(primary);
}
if (primary->state.render.active && (primary->state.dirty & RADV_CMD_DIRTY_FRAMEBUFFER)) {