From 2d4c4600113b9cec6efb374cd7500e6a255d3501 Mon Sep 17 00:00:00 2001 From: CamilleLaVey Date: Sun, 8 Mar 2026 04:38:40 -0400 Subject: [PATCH] [debug] Instrumentalization for EDS related pipeline worker failure. --- .../renderer_vulkan/vk_pipeline_cache.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp b/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp index 2aff10e15b..49d96e5223 100644 --- a/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp +++ b/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp @@ -751,6 +751,19 @@ std::unique_ptr PipelineCache::CreateGraphicsPipeline( descriptor_pool, guest_descriptor_queue, thread_worker, statistics, render_pass_cache, key, std::move(modules), infos); +} catch (const vk::Exception& exception) { + const auto hash = key.Hash(); + LOG_ERROR( + Render_Vulkan, + "Failed to create graphics pipeline 0x{:016x}: {} (result={}, eds={}, eds2={}, " + "eds2_logic_op={}, topology={}, provoking_last={}, xfb={}, conservative={})", + hash, exception.what(), static_cast(exception.GetResult()), + key.state.extended_dynamic_state != 0, key.state.extended_dynamic_state_2 != 0, + key.state.extended_dynamic_state_2_logic_op != 0, static_cast(key.state.topology), + key.state.provoking_vertex_last != 0, key.state.xfb_enabled != 0, + key.state.conservative_raster_enable != 0); + return nullptr; + } catch (const Shader::Exception& exception) { auto hash = key.Hash(); size_t env_index{0};