diff --git a/src/nouveau/vulkan/nvk_buffer.h b/src/nouveau/vulkan/nvk_buffer.h index 0628d62fe69..40437052306 100644 --- a/src/nouveau/vulkan/nvk_buffer.h +++ b/src/nouveau/vulkan/nvk_buffer.h @@ -18,9 +18,9 @@ struct nvk_buffer { VK_DEFINE_HANDLE_CASTS(nvk_buffer, vk.base, VkBuffer, VK_OBJECT_TYPE_BUFFER) static inline uint64_t -nvk_buffer_address(struct nvk_buffer *buffer) +nvk_buffer_address(struct nvk_buffer *buffer, uint64_t offset) { - return buffer->mem->bo->offset + buffer->offset; + return buffer->mem->bo->offset + buffer->offset + offset; } #endif diff --git a/src/nouveau/vulkan/nvk_descriptor_set.c b/src/nouveau/vulkan/nvk_descriptor_set.c index 52dd43e6c62..03ee11883fc 100644 --- a/src/nouveau/vulkan/nvk_descriptor_set.c +++ b/src/nouveau/vulkan/nvk_descriptor_set.c @@ -65,7 +65,7 @@ write_buffer_desc(struct nvk_descriptor_set *set, struct nvk_buffer_address *desc = desc_ubo_data(set, binding, elem); *desc = (struct nvk_buffer_address){ - .base_addr = nvk_buffer_address(buffer) + info->offset, + .base_addr = nvk_buffer_address(buffer, info->offset), .size = vk_buffer_range(&buffer->vk, info->offset, info->range), }; }