summaryrefslogtreecommitdiffstats
path: root/src/hardware/lscpu.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/hardware/lscpu.c')
-rw-r--r--src/hardware/lscpu.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/hardware/lscpu.c b/src/hardware/lscpu.c
index 124ed7b..d4546cb 100644
--- a/src/hardware/lscpu.c
+++ b/src/hardware/lscpu.c
@@ -29,7 +29,8 @@ void init_lscpuprocessor_struct(LscpuProcessor *cpu)
{
cpu->data_width = 0;
cpu->processors = 0;
- cpu->cores = 0;
+ cpu->cores = 1;
+ cpu->threads_per_core = 1;
cpu->stepping = NULL;
cpu->current_speed = 0;
}
@@ -88,6 +89,14 @@ short lscpu_get_processor(LscpuProcessor *cpu)
buf = NULL;
continue;
}
+ /* Threads per core */
+ buf = copy_string_part_after_delim(buffer[i], "Thread(s) per core:");
+ if (buf) {
+ sscanf(buf, "%u", &cpu->threads_per_core);
+ free(buf);
+ buf = NULL;
+ continue;
+ }
/* Cores per processor */
buf = copy_string_part_after_delim(buffer[i], "Core(s) per socket:");
if (buf) {