pvr: copy sub_cmd flags except owned when executing subcmds out of pass

When executing a secondary command buffer outside a renderpass, the
sub_cmds of that secondary command buffer is simply copied into the
primary command buffer. However, the 4 flags outside the type-specific
structures are not copied. Although owned flag is intentionally set to
false, the other 3 flags should be preserved.

Copy these 3 flags when executing sub_cmds of a secondary command buffer
outside renderpasses.

Backport-to: 26.0
Signed-off-by: Icenowy Zheng <zhengxingda@iscas.ac.cn>
Reviewed-by: Nick Hamilton <nick.hamilton@imgtec.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/41002>
This commit is contained in:
Icenowy Zheng 2026-04-17 22:42:03 +08:00 committed by Marge Bot
parent 351eaffdc5
commit d7f79b34c7

View file

@ -8963,6 +8963,9 @@ static VkResult pvr_execute_sub_cmd(struct pvr_cmd_buffer *cmd_buffer,
primary_sub_cmd->type = sec_sub_cmd->type;
primary_sub_cmd->owned = false;
primary_sub_cmd->is_dynamic_render = sec_sub_cmd->is_dynamic_render;
primary_sub_cmd->is_suspend = sec_sub_cmd->is_suspend;
primary_sub_cmd->is_resume = sec_sub_cmd->is_resume;
list_addtail(&primary_sub_cmd->link, &cmd_buffer->sub_cmds);