mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 20:18:12 +02:00
anv: add missing push descriptor flush on ray tracing pipelines
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Rohan Garg <rohan.garg@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25897>
This commit is contained in:
parent
f26e83b6a4
commit
4608de6645
1 changed files with 12 additions and 0 deletions
|
|
@ -2352,6 +2352,8 @@ flush_push_descriptor_set(struct anv_cmd_buffer *cmd_buffer,
|
|||
set->desc_addr,
|
||||
layout->descriptor_buffer_size, 1);
|
||||
}
|
||||
|
||||
state->push_descriptor.set_used_on_gpu = true;
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
@ -6458,6 +6460,16 @@ cmd_buffer_trace_rays(struct anv_cmd_buffer *cmd_buffer,
|
|||
|
||||
genX(cmd_buffer_apply_pipe_flushes)(cmd_buffer);
|
||||
|
||||
const VkShaderStageFlags push_descriptor_dirty =
|
||||
cmd_buffer->state.push_descriptors_dirty &
|
||||
pipeline->base.use_push_descriptor;
|
||||
if (push_descriptor_dirty) {
|
||||
flush_push_descriptor_set(cmd_buffer,
|
||||
&cmd_buffer->state.rt.base,
|
||||
&pipeline->base);
|
||||
cmd_buffer->state.push_descriptors_dirty &= ~push_descriptor_dirty;
|
||||
}
|
||||
|
||||
/* Add these to the reloc list as they're internal buffers that don't
|
||||
* actually have relocs to pick them up manually.
|
||||
*
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue