From 5112422644359f2abc339f3ee39855c145aad8a7 Mon Sep 17 00:00:00 2001 From: zhanghongyuan Date: Thu, 18 Dec 2025 10:15:40 +0800 Subject: [PATCH] fix: from dmidecode get cpu num error fix from dmidecode get cpu num maybe error log: fix from dmidecode get cpu num maybe error bug: https://pms.uniontech.com/bug-view-343951.html --- .../src/GenerateDevice/DeviceGenerator.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/deepin-devicemanager/src/GenerateDevice/DeviceGenerator.cpp b/deepin-devicemanager/src/GenerateDevice/DeviceGenerator.cpp index a94c8ac3..0eb2ecb5 100644 --- a/deepin-devicemanager/src/GenerateDevice/DeviceGenerator.cpp +++ b/deepin-devicemanager/src/GenerateDevice/DeviceGenerator.cpp @@ -187,10 +187,13 @@ void DeviceGenerator::generatorCpuDevice() if (dd4.contains("Thread Count")) logicalNum_dmi += dd4["Thread Count"].toInt(); } + if(coreNum_dmi > coreNum && coreNum_dmi <= 512) { //due to offline policy + // If obtaining data from /proc/cpuinfo is incorrect, refer to the content of dmidecode. + if (logicalNum != logicalNum_dmi) + coreNum = coreNum_dmi; + } if(logicalNum_dmi > logicalNum && logicalNum_dmi < 1024) //due to offline policy logicalNum = logicalNum_dmi; - if(coreNum_dmi > coreNum && coreNum_dmi <= 512) //due to offline policy - coreNum = coreNum_dmi; DeviceManager::instance()->setCpuNum(allCPUS.isEmpty() ? dmidecode4.size() : allCPUS.size());