The current core_id related sysfs parsing code does not work on Linux. It looks like we have parsed a non-existing sysfs entry since we introduced this code (around 2012). We should have parsed the cpuX/topology entries, which have been around since 2006. Even on 2.6.32 which is the RedHat 6.x kernel toplogy is around and not the other nodes we attempt to read.
Signed-off-by: Roderick Colenbrander thunderbird2k@gmail.com --- dlls/ntdll/nt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/ntdll/nt.c b/dlls/ntdll/nt.c index 8995c362a9..c3f5df337f 100644 --- a/dlls/ntdll/nt.c +++ b/dlls/ntdll/nt.c @@ -1497,7 +1497,7 @@ static inline BOOL logical_proc_info_add_group(SYSTEM_LOGICAL_PROCESSOR_INFORMAT static NTSTATUS create_logical_proc_info(SYSTEM_LOGICAL_PROCESSOR_INFORMATION **data, SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX **dataex, DWORD *max_len) { - static const char core_info[] = "/sys/devices/system/cpu/cpu%u/%s"; + static const char core_info[] = "/sys/devices/system/cpu/cpu%u/topology/%s"; static const char cache_info[] = "/sys/devices/system/cpu/cpu%u/cache/index%u/%s"; static const char numa_info[] = "/sys/devices/system/node/node%u/cpumap";