diff --git a/parallel-rdp-standalone/COMMIT b/parallel-rdp-standalone/COMMIT index 07424f7..09cc23a 100644 --- a/parallel-rdp-standalone/COMMIT +++ b/parallel-rdp-standalone/COMMIT @@ -1 +1 @@ -85363ec733561ab545103888f440dec500cbb96a +d95cf9b09c31e1b239eb7e90255e048ffa184360 diff --git a/parallel-rdp-standalone/vulkan/device.cpp b/parallel-rdp-standalone/vulkan/device.cpp index 134fa63..7dd19f2 100644 --- a/parallel-rdp-standalone/vulkan/device.cpp +++ b/parallel-rdp-standalone/vulkan/device.cpp @@ -785,14 +785,17 @@ void Device::init_workarounds() LOGW("Disabling pipeline cache control.\n"); workarounds.broken_pipeline_cache_control = true; } - else if ((ext.driver_properties.driverID == VK_DRIVER_ID_MESA_RADV || - ext.driver_properties.driverID == VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA || - ext.driver_properties.driverID == VK_DRIVER_ID_MESA_TURNIP) && - gpu_props.driverVersion < VK_MAKE_VERSION(23, 1, 0)) + else if (((ext.driver_properties.driverID == VK_DRIVER_ID_MESA_RADV || + ext.driver_properties.driverID == VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA || + ext.driver_properties.driverID == VK_DRIVER_ID_MESA_TURNIP) && + gpu_props.driverVersion < VK_MAKE_VERSION(23, 1, 0)) || + ext.driver_properties.driverID == VK_DRIVER_ID_AMD_PROPRIETARY || + ext.driver_properties.driverID == VK_DRIVER_ID_AMD_OPEN_SOURCE) { LOGW("Enabling workaround for sync2 access mask bugs.\n"); // https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21271 // Found bug around 23.0. Should be fixed by 23.1. + // Also observed on AMD windows. Probably fails on open source too given it shares PAL ... workarounds.force_sync1_access = true; // Avoids having to add workaround path to events as well, just fallback to plain barriers. workarounds.emulate_event_as_pipeline_barrier = true;