diff --git a/src/video_core/renderer_vulkan/vk_buffer_cache.cpp b/src/video_core/renderer_vulkan/vk_buffer_cache.cpp index a734bd049c..f7d6ec1c55 100644 --- a/src/video_core/renderer_vulkan/vk_buffer_cache.cpp +++ b/src/video_core/renderer_vulkan/vk_buffer_cache.cpp @@ -192,7 +192,7 @@ public: if (host_visible) { return StagingBufferRef{}; } - return staging_pool.Request(size_bytes, MemoryUsage::Upload); + return staging_pool.Request(device, size_bytes, MemoryUsage::Upload); }(); u8* staging_data = host_visible ? buffer.Mapped().data() : staging.mapped_span.data(); @@ -366,11 +366,11 @@ BufferCacheRuntime::BufferCacheRuntime(const Device& device_, MemoryAllocator& m } StagingBufferRef BufferCacheRuntime::UploadStagingBuffer(size_t size) { - return staging_pool.Request(size, MemoryUsage::Upload); + return staging_pool.Request(device, size, MemoryUsage::Upload); } StagingBufferRef BufferCacheRuntime::DownloadStagingBuffer(size_t size, bool deferred) { - return staging_pool.Request(size, MemoryUsage::Download, deferred); + return staging_pool.Request(device, size, MemoryUsage::Download, deferred); } VkFormat BufferCacheRuntime::TexelBufferFormat(VideoCore::Surface::PixelFormat format) const { diff --git a/src/video_core/renderer_vulkan/vk_buffer_cache.h b/src/video_core/renderer_vulkan/vk_buffer_cache.h index 9b3dd50eaa..480c1ec316 100644 --- a/src/video_core/renderer_vulkan/vk_buffer_cache.h +++ b/src/video_core/renderer_vulkan/vk_buffer_cache.h @@ -149,7 +149,7 @@ public: std::span BindMappedUniformBuffer([[maybe_unused]] size_t stage, [[maybe_unused]] u32 binding_index, u32 size) { - const StagingBufferRef ref = staging_pool.Request(size, MemoryUsage::Upload); + const StagingBufferRef ref = staging_pool.Request(device, size, MemoryUsage::Upload); guest_descriptor_queue.AddBuffer(ref.buffer, ref.device_address, static_cast(ref.offset), size); return ref.mapped_span; diff --git a/src/video_core/renderer_vulkan/vk_query_cache.cpp b/src/video_core/renderer_vulkan/vk_query_cache.cpp index 2b5aa24053..69a38ba182 100644 --- a/src/video_core/renderer_vulkan/vk_query_cache.cpp +++ b/src/video_core/renderer_vulkan/vk_query_cache.cpp @@ -852,7 +852,7 @@ public: void PushUnsyncedQueries() override { CloseCounter(); - auto staging_ref = staging_pool.Request( + auto staging_ref = staging_pool.Request(device, pending_flush_queries.size() * TFBQueryBank::QUERY_SIZE, MemoryUsage::Download, true); size_t offset_base = staging_ref.offset; for (auto q : pending_flush_queries) { @@ -1657,7 +1657,7 @@ void QueryCacheRuntime::SyncValues(std::span values, VkBuffer ba impl->copies_setup.clear(); impl->copies_setup.resize(impl->little_cache.size()); if constexpr (SyncValuesType::GeneratesBaseBuffer) { - ref = impl->staging_pool.Request(total_size, MemoryUsage::Upload); + ref = impl->staging_pool.Request(impl->device, total_size, MemoryUsage::Upload); size_t current_offset = ref.offset; size_t accumulated_size = 0; for (size_t i = 0; i < values.size(); i++) {