mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-07 20:08:06 +02:00
radv: stop using conditional rendering internally when preprocessing DGC
Preprocess and execute can be executed on different queue families. If preprocess is executed on GFX and the indirect count optimization is enabled, this will generate an empty cmdbuf. Expect GPU hangs if this DGC IB is then executed on ACE. Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27658>
This commit is contained in:
parent
893780b362
commit
5b0e4dd6e8
1 changed files with 0 additions and 16 deletions
|
|
@ -1628,23 +1628,7 @@ radv_CmdPreprocessGeneratedCommandsNV(VkCommandBuffer commandBuffer,
|
|||
if (!radv_dgc_can_preprocess(layout, pipeline))
|
||||
return;
|
||||
|
||||
const bool use_predication = radv_use_dgc_predication(cmd_buffer, pGeneratedCommandsInfo);
|
||||
|
||||
if (use_predication) {
|
||||
VK_FROM_HANDLE(radv_buffer, seq_count_buffer, pGeneratedCommandsInfo->sequencesCountBuffer);
|
||||
const uint64_t va = radv_buffer_get_va(seq_count_buffer->bo) + seq_count_buffer->offset +
|
||||
pGeneratedCommandsInfo->sequencesCountOffset;
|
||||
|
||||
radv_begin_conditional_rendering(cmd_buffer, va, true);
|
||||
cmd_buffer->state.predicating = true;
|
||||
}
|
||||
|
||||
radv_prepare_dgc(cmd_buffer, pGeneratedCommandsInfo);
|
||||
|
||||
if (use_predication) {
|
||||
cmd_buffer->state.predicating = false;
|
||||
radv_end_conditional_rendering(cmd_buffer);
|
||||
}
|
||||
}
|
||||
|
||||
/* Always need to call this directly before draw due to dependence on bound state. */
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue