From d502adb309809e0fb8e6f611bf57884bfc18d4f3 Mon Sep 17 00:00:00 2001 From: Billy Laws Date: Thu, 3 Nov 2022 22:34:19 +0000 Subject: [PATCH] Avoid WRW hazard in subpass deps --- app/src/main/cpp/skyline/gpu/interconnect/command_nodes.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/main/cpp/skyline/gpu/interconnect/command_nodes.cpp b/app/src/main/cpp/skyline/gpu/interconnect/command_nodes.cpp index b135b87c..fb6cfe83 100644 --- a/app/src/main/cpp/skyline/gpu/interconnect/command_nodes.cpp +++ b/app/src/main/cpp/skyline/gpu/interconnect/command_nodes.cpp @@ -102,11 +102,11 @@ namespace skyline::gpu::interconnect::node { if (view->format->vkAspect & vk::ImageAspectFlagBits::eColor) { dependency.srcStageMask = vk::PipelineStageFlagBits::eColorAttachmentOutput; dependency.srcAccessMask = vk::AccessFlagBits::eColorAttachmentWrite; - dependency.dstAccessMask = vk::AccessFlagBits::eColorAttachmentRead; + dependency.dstAccessMask = vk::AccessFlagBits::eColorAttachmentRead | vk::AccessFlagBits::eColorAttachmentWrite; } else if (view->format->vkAspect & (vk::ImageAspectFlagBits::eDepth | vk::ImageAspectFlagBits::eStencil)) { dependency.srcStageMask = vk::PipelineStageFlagBits::eEarlyFragmentTests | vk::PipelineStageFlagBits::eLateFragmentTests; dependency.srcAccessMask = vk::AccessFlagBits::eDepthStencilAttachmentWrite; - dependency.dstAccessMask = vk::AccessFlagBits::eDepthStencilAttachmentRead; + dependency.dstAccessMask = vk::AccessFlagBits::eDepthStencilAttachmentRead | vk::AccessFlagBits::eDepthStencilAttachmentWrite; } if (std::find(subpassDependencies.begin(), subpassDependencies.end(), dependency) == subpassDependencies.end())