From 25acd26a0f4100c2dd560713eda9e809a1bbf026 Mon Sep 17 00:00:00 2001 From: Mel Henning Date: Mon, 19 Jan 2026 17:14:51 -0500 Subject: [PATCH] nvk: Use layout->vk.dynamic_descriptor_count Reviewed-by: Aitor Camacho Reviewed-by: Mary Guillemard Tested-by: Mary Guillemard Part-of: --- src/nouveau/vulkan/nvk_cmd_buffer.c | 10 +++++----- src/nouveau/vulkan/nvk_descriptor_set.c | 2 +- src/nouveau/vulkan/nvk_descriptor_set_layout.c | 4 ++-- src/nouveau/vulkan/nvk_descriptor_set_layout.h | 3 --- src/nouveau/vulkan/nvk_nir_lower_descriptors.c | 2 +- 5 files changed, 9 insertions(+), 12 deletions(-) diff --git a/src/nouveau/vulkan/nvk_cmd_buffer.c b/src/nouveau/vulkan/nvk_cmd_buffer.c index 84e0b15894d..16e0ef5f008 100644 --- a/src/nouveau/vulkan/nvk_cmd_buffer.c +++ b/src/nouveau/vulkan/nvk_cmd_buffer.c @@ -868,7 +868,7 @@ nvk_bind_descriptor_sets(struct nvk_cmd_buffer *cmd, const struct nvk_descriptor_set_layout *set_layout = vk_to_nvk_descriptor_set_layout(pipeline_layout->set_layouts[i]); if (set_layout) - dyn_buffer_end += set_layout->dynamic_buffer_count; + dyn_buffer_end += set_layout->vk.dynamic_descriptor_count; } const uint8_t dyn_buffer_start = dyn_buffer_end; @@ -898,8 +898,8 @@ nvk_bind_descriptor_sets(struct nvk_cmd_buffer *cmd, const struct nvk_descriptor_set_layout *set_layout = vk_to_nvk_descriptor_set_layout(pipeline_layout->set_layouts[s]); - if (set != NULL && set_layout->dynamic_buffer_count > 0) { - for (uint32_t j = 0; j < set_layout->dynamic_buffer_count; j++) { + if (set != NULL && set_layout->vk.dynamic_descriptor_count > 0) { + for (uint32_t j = 0; j < set_layout->vk.dynamic_descriptor_count; j++) { union nvk_buffer_descriptor db = set->dynamic_buffers[j]; uint32_t offset = info->pDynamicOffsets[next_dyn_offset + j]; if (BITSET_TEST(set_layout->dynamic_ubos, j) && @@ -915,10 +915,10 @@ nvk_bind_descriptor_sets(struct nvk_cmd_buffer *cmd, } dynamic_buffers[dyn_buffer_end + j] = db; } - next_dyn_offset += set->layout->dynamic_buffer_count; + next_dyn_offset += set->layout->vk.dynamic_descriptor_count; } - dyn_buffer_end += set_layout->dynamic_buffer_count; + dyn_buffer_end += set_layout->vk.dynamic_descriptor_count; } else { assert(set == NULL); } diff --git a/src/nouveau/vulkan/nvk_descriptor_set.c b/src/nouveau/vulkan/nvk_descriptor_set.c index 651aab18d9c..b9dcbe08426 100644 --- a/src/nouveau/vulkan/nvk_descriptor_set.c +++ b/src/nouveau/vulkan/nvk_descriptor_set.c @@ -807,7 +807,7 @@ nvk_descriptor_set_create(struct nvk_device *dev, VkResult result; uint32_t mem_size = sizeof(struct nvk_descriptor_set) + - layout->dynamic_buffer_count * sizeof(struct nvk_buffer_address); + layout->vk.dynamic_descriptor_count * sizeof(struct nvk_buffer_address); set = vk_object_zalloc(&dev->vk, NULL, mem_size, VK_OBJECT_TYPE_DESCRIPTOR_SET); diff --git a/src/nouveau/vulkan/nvk_descriptor_set_layout.c b/src/nouveau/vulkan/nvk_descriptor_set_layout.c index 268bb770b87..55720aa6c97 100644 --- a/src/nouveau/vulkan/nvk_descriptor_set_layout.c +++ b/src/nouveau/vulkan/nvk_descriptor_set_layout.c @@ -329,14 +329,14 @@ nvk_CreateDescriptorSetLayout(VkDevice device, layout->non_variable_descriptor_buffer_size = buffer_size; layout->max_buffer_size = buffer_size + max_variable_descriptor_size; - layout->dynamic_buffer_count = dynamic_buffer_count; + layout->vk.dynamic_descriptor_count = dynamic_buffer_count; struct mesa_blake3 blake3_ctx; _mesa_blake3_init(&blake3_ctx); #define BLAKE3_UPDATE_VALUE(x) _mesa_blake3_update(&blake3_ctx, &(x), sizeof(x)); BLAKE3_UPDATE_VALUE(layout->non_variable_descriptor_buffer_size); - BLAKE3_UPDATE_VALUE(layout->dynamic_buffer_count); + BLAKE3_UPDATE_VALUE(layout->vk.dynamic_descriptor_count); BLAKE3_UPDATE_VALUE(layout->binding_count); for (uint32_t b = 0; b < num_bindings; b++) { diff --git a/src/nouveau/vulkan/nvk_descriptor_set_layout.h b/src/nouveau/vulkan/nvk_descriptor_set_layout.h index 642b11ebae0..1948687c6d2 100644 --- a/src/nouveau/vulkan/nvk_descriptor_set_layout.h +++ b/src/nouveau/vulkan/nvk_descriptor_set_layout.h @@ -54,9 +54,6 @@ struct nvk_descriptor_set_layout { /* Maximum possible buffer size for this descriptor set */ uint32_t max_buffer_size; - /* Number of dynamic UBO bindings in this set */ - uint8_t dynamic_buffer_count; - /* Which dynamic buffers are UBOs */ BITSET_DECLARE(dynamic_ubos, NVK_MAX_DYNAMIC_BUFFERS); diff --git a/src/nouveau/vulkan/nvk_nir_lower_descriptors.c b/src/nouveau/vulkan/nvk_nir_lower_descriptors.c index 93d0e37311c..8dd9681d20f 100644 --- a/src/nouveau/vulkan/nvk_nir_lower_descriptors.c +++ b/src/nouveau/vulkan/nvk_nir_lower_descriptors.c @@ -587,7 +587,7 @@ load_dynamic_buffer_start(nir_builder *b, uint32_t set, break; } - dynamic_buffer_start_imm += ctx->set_layouts[s]->dynamic_buffer_count; + dynamic_buffer_start_imm += ctx->set_layouts[s]->vk.dynamic_descriptor_count; } if (dynamic_buffer_start_imm >= 0) {