From 16483a27edfc1b532222ce7f4a18cb529620f3c0 Mon Sep 17 00:00:00 2001 From: CamilleLaVey Date: Sat, 26 Sep 2026 15:43:34 -0400 Subject: [PATCH] Remove PostCopyBarrier on buffers --- src/video_core/buffer_cache/buffer_cache.h | 4 +++- src/video_core/renderer_vulkan/vk_compute_pipeline.cpp | 4 ---- src/video_core/renderer_vulkan/vk_graphics_pipeline.cpp | 4 ---- 3 files changed, 3 insertions(+), 9 deletions(-) diff --git a/src/video_core/buffer_cache/buffer_cache.h b/src/video_core/buffer_cache/buffer_cache.h index 971f40922d..95610c7c14 100644 --- a/src/video_core/buffer_cache/buffer_cache.h +++ b/src/video_core/buffer_cache/buffer_cache.h @@ -1822,7 +1822,9 @@ bool BufferCache

::SynchronizeBuffer(Buffer& buffer, DAddr device_addr, u32 si } const std::span copies_span(upload_copies.data(), upload_copies.size()); UploadMemory(buffer, total_size_bytes, largest_copy, copies_span); - any_buffer_uploaded = true; + if constexpr (IS_OPENGL) { + any_buffer_uploaded = true; + } return false; } diff --git a/src/video_core/renderer_vulkan/vk_compute_pipeline.cpp b/src/video_core/renderer_vulkan/vk_compute_pipeline.cpp index 29356cfcec..840ff5897b 100644 --- a/src/video_core/renderer_vulkan/vk_compute_pipeline.cpp +++ b/src/video_core/renderer_vulkan/vk_compute_pipeline.cpp @@ -247,10 +247,6 @@ bool ComputePipeline::Configure(Tegra::Engines::KeplerCompute& kepler_compute, buffer_cache.UpdateComputeBuffers(); buffer_cache.BindHostComputeBuffers(); - if (buffer_cache.any_buffer_uploaded) { - buffer_cache.runtime.PostCopyBarrier(); - buffer_cache.any_buffer_uploaded = false; - } RescalingPushConstant rescaling; const VideoCommon::SamplerId* samplers_it{samplers.data()}; diff --git a/src/video_core/renderer_vulkan/vk_graphics_pipeline.cpp b/src/video_core/renderer_vulkan/vk_graphics_pipeline.cpp index 950757a502..5c7a88e81e 100644 --- a/src/video_core/renderer_vulkan/vk_graphics_pipeline.cpp +++ b/src/video_core/renderer_vulkan/vk_graphics_pipeline.cpp @@ -540,10 +540,6 @@ bool GraphicsPipeline::ConfigureImpl(bool is_indexed) { if constexpr (Spec::enabled_stages[4]) { prepare_stage(4); } - if (buffer_cache.any_buffer_uploaded) { - buffer_cache.runtime.PostCopyBarrier(); - buffer_cache.any_buffer_uploaded = false; - } texture_cache.UpdateRenderTargets(false); texture_cache.CheckFeedbackLoop(std::span{views.data(), views.size()});