From 86ff28b3dab847d699eac6418857fbebe2ee82e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timur=20Krist=C3=B3f?= Date: Tue, 21 Oct 2025 15:58:00 +0200 Subject: [PATCH] radv: Allow using compute queue with CS regalloc hang bug on GFX7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Now that all larger workgroup sizes are lowered to 256, the regalloc hang cannot mess up the compute queues anymore. Still don't allow compute queues on GFX6 though, they are prone to hangs. Needs further investigation. Signed-off-by: Timur Kristóf Part-of: --- src/amd/vulkan/radv_physical_device.c | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/amd/vulkan/radv_physical_device.c b/src/amd/vulkan/radv_physical_device.c index 806a44e1867..f154bd08a09 100644 --- a/src/amd/vulkan/radv_physical_device.c +++ b/src/amd/vulkan/radv_physical_device.c @@ -124,13 +124,8 @@ radv_video_encode_queue_enabled(const struct radv_physical_device *pdev) bool radv_compute_queue_enabled(const struct radv_physical_device *pdev) { - /* Compute queues may run compute dispatches in parallel with - * the graphics queue, even from other processes/apps. - * At the moment we can't make sure that all compute shaders - * use a workgroup size of 256 to mitigate the regalloc hang, - * so disable compute queues on affected chips. - */ - if (pdev->info.has_cs_regalloc_hang_bug) + /* Compute queues may hang on GFX6, need further investigation before enabling them. */ + if (pdev->info.gfx_level == GFX6) return false; const struct radv_instance *instance = radv_physical_device_instance(pdev);