From 44056f1c85ffd268171ee8bbd7a40f1fc90e0958 Mon Sep 17 00:00:00 2001 From: Carter Li Date: Wed, 8 Jul 2026 18:14:06 +0800 Subject: [PATCH] GPU (Linux): fixes accurate AMD GPU names are not queried in `driverSpecific` mode --- src/detection/gpu/gpu_linux.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/detection/gpu/gpu_linux.c b/src/detection/gpu/gpu_linux.c index 7183b903b..2f96d8ea7 100644 --- a/src/detection/gpu/gpu_linux.c +++ b/src/detection/gpu/gpu_linux.c @@ -419,17 +419,17 @@ static const char* detectPci(const FFGPUOptions* options, FFlist* gpus, FFstrbuf if (!ok) { pciDetectAmdSpecific(options, gpu, deviceDir, buffer); ffStrbufSubstrBefore(deviceDir, drmDirPathLength); - - ffStrbufAppendS(deviceDir, "/revision"); - if (ffReadFileBuffer(deviceDir->chars, buffer)) { - char* pend; - uint64_t revision = strtoul(buffer->chars, &pend, 16); - if (pend != buffer->chars) { - ffGPUQueryAmdGpuName((uint16_t) deviceId, (uint8_t) revision, gpu); - } - } - ffStrbufSubstrBefore(deviceDir, drmDirPathLength); } + + ffStrbufAppendS(deviceDir, "/revision"); + if (ffReadFileBuffer(deviceDir->chars, buffer)) { + char* pend; + uint64_t revision = strtoul(buffer->chars, &pend, 16); + if (pend != buffer->chars) { + ffGPUQueryAmdGpuName((uint16_t) deviceId, (uint8_t) revision, gpu); + } + } + ffStrbufSubstrBefore(deviceDir, drmDirPathLength); } else if (gpu->vendor.chars == FF_GPU_VENDOR_NAME_INTEL) { pciDetectIntelSpecific(options, gpu, deviceDir, buffer, drmKey); ffStrbufSubstrBefore(deviceDir, drmDirPathLength);