1
0
Fork 0
forked from wry/wry

vulkan/anv: align descriptor buffers to 4KB

https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33903
This commit is contained in:
Julian Orth 2025-03-05 18:39:08 +01:00
parent 3fa3b020c3
commit 4bba7b7c5d
3 changed files with 32 additions and 19 deletions

View file

@ -489,7 +489,12 @@ impl VulkanRenderer {
(&sampler_writer, &self.sampler_descriptor_buffer_cache),
(&resource_writer, &self.resource_descriptor_buffer_cache),
] {
let buffer = cache.allocate(writer.len() as DeviceSize, 1)?;
let mut min_alignment = 1;
if self.device.is_anv {
// https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33903
min_alignment = 4096;
}
let buffer = cache.allocate(writer.len() as DeviceSize, min_alignment)?;
buffer.buffer.allocation.upload(|ptr, _| unsafe {
ptr::copy_nonoverlapping(writer.as_ptr(), ptr, writer.len())
})?;