]> git.ipfire.org Git - people/ms/pakfire.git/commitdiff
os: Fetch the number of CPUs
authorMichael Tremer <michael.tremer@ipfire.org>
Tue, 31 Oct 2023 10:51:34 +0000 (10:51 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 31 Oct 2023 10:51:34 +0000 (10:51 +0000)
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
src/libpakfire/include/pakfire/os.h
src/libpakfire/os.c

index a8a28cac76e9f351ba01b4d331c171b1824761a1..838726662dd9ffb70536123ac5eef704fcc63d9c 100644 (file)
@@ -33,6 +33,7 @@
 struct pakfire_cpuinfo {
        char vendor[CPU_VENDOR_MAX];
        char model[CPU_MODEL_MAX];
+       unsigned int count;
 };
 
 int pakfire_cpuinfo(struct pakfire_cpuinfo* cpuinfo);
index 7c19018b4898c2e1809d57f95e26c842602e1f0b..09031f8a4f7fc702a263263319114f2e803949c6 100644 (file)
@@ -139,7 +139,17 @@ static int pakfire_parse_cpuinfo(char* line, size_t length, void* data) {
 }
 
 int pakfire_cpuinfo(struct pakfire_cpuinfo* cpuinfo) {
-       return pakfire_parse_file("/proc/cpuinfo", pakfire_parse_cpuinfo, cpuinfo);
+       int r;
+
+       // Parse /proc/cpuinfo
+       r = pakfire_parse_file("/proc/cpuinfo", pakfire_parse_cpuinfo, cpuinfo);
+       if (r)
+               return r;
+
+       // Fetch the number of processors
+       cpuinfo->count = sysconf(_SC_NPROCESSORS_CONF);
+
+       return 0;
 }
 
 // CPU Stats