From ed452ed66489d05ece080033afaa020d7009df62 Mon Sep 17 00:00:00 2001 From: Icenowy Zheng Date: Fri, 10 Apr 2026 00:18:28 +0800 Subject: [PATCH] pvr: propagate get_vis_results flag from secondary cmdbuf gfx jobs When recording secondary command buffers with occlusion queries, the get_vis_results flag could be set for some graphics sub_cmd's job. Propagate this flag from secondary command buffer graphics sub_cmds to primary command buffer sub_cmds to ensure occlusion queries in secondary command buffers being correctly executed. Fixes: 5c34be4340f0 ("pvr: Process secondary buffer queries in vkCmdExecuteCommands.") Signed-off-by: Icenowy Zheng Reviewed-by: Frank Binns (cherry picked from commit b8c5e4794924bbfc9ecc15f58c6d616ec5b8ad44) Part-of: --- .pick_status.json | 2 +- src/imagination/vulkan/pvr_arch_cmd_buffer.c | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.pick_status.json b/.pick_status.json index 0af4f382c9b..8a167d586ab 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -5684,7 +5684,7 @@ "description": "pvr: propagate get_vis_results flag from secondary cmdbuf gfx jobs", "nominated": true, "nomination_type": 2, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "5c34be4340f00ff779b944669baf93448cd0238a", "notes": null diff --git a/src/imagination/vulkan/pvr_arch_cmd_buffer.c b/src/imagination/vulkan/pvr_arch_cmd_buffer.c index 7a061c878de..c75b19c5764 100644 --- a/src/imagination/vulkan/pvr_arch_cmd_buffer.c +++ b/src/imagination/vulkan/pvr_arch_cmd_buffer.c @@ -9061,6 +9061,9 @@ pvr_execute_graphics_cmd_buffer(struct pvr_cmd_buffer *cmd_buffer, sec_sub_cmd->gfx.job.disable_compute_overlap; } + primary_sub_cmd->gfx.job.get_vis_results |= + sec_sub_cmd->gfx.job.get_vis_results; + primary_sub_cmd->gfx.max_tiles_in_flight = MIN2(primary_sub_cmd->gfx.max_tiles_in_flight, sec_sub_cmd->gfx.max_tiles_in_flight);