From 3870527732703ca230ab00944f52a20cb91a3392 Mon Sep 17 00:00:00 2001 From: Dr-Noob Date: Tue, 27 Jul 2021 21:37:13 +0200 Subject: [PATCH] [v0.98][PPC] Refactor PowerPC udev functions --- src/ppc/udev.c | 28 ++++++++-------------------- 1 file changed, 8 insertions(+), 20 deletions(-) diff --git a/src/ppc/udev.c b/src/ppc/udev.c index c989c23..b39a3f4 100644 --- a/src/ppc/udev.c +++ b/src/ppc/udev.c @@ -3,14 +3,14 @@ #define _PATH_TOPO_CORE_ID "topology/core_id" #define _PATH_TOPO_PACKAGE_ID "topology/physical_package_id" -bool fill_core_ids_from_sys(int *core_ids, int total_cores) { +bool fill_array_from_sys(int *core_ids, int total_cores, char* SYS_PATH) { int filelen; char* buf; char* end; char path[128]; for(int i=0; i < total_cores; i++) { - sprintf(path, "%s%s/cpu%d/%s", _PATH_SYS_SYSTEM, _PATH_SYS_CPU, i, _PATH_TOPO_CORE_ID); + sprintf(path, "%s%s/cpu%d/%s", _PATH_SYS_SYSTEM, _PATH_SYS_CPU, i, SYS_PATH); if((buf = read_file(path, &filelen)) == NULL) { perror("open"); return false; @@ -28,22 +28,10 @@ bool fill_core_ids_from_sys(int *core_ids, int total_cores) { return true; } -bool fill_package_ids_from_sys(int* package_ids, int total_cores) { - int filelen; - char* buf; - char* end; - char path[128]; - - for(int i=0; i < total_cores; i++) { - sprintf(path, "%s%s/cpu%d/%s", _PATH_SYS_SYSTEM, _PATH_SYS_CPU, i, _PATH_TOPO_PACKAGE_ID); - buf = read_file(path, &filelen); - - errno = 0; - package_ids[i] = strtol(buf, &end, 10); - if(errno != 0) { - perror("strtol"); - return -1; - } - free(buf); - } +bool fill_core_ids_from_sys(int *core_ids, int total_cores) { + return fill_array_from_sys(core_ids, total_cores, _PATH_TOPO_CORE_ID); +} + +bool fill_package_ids_from_sys(int* package_ids, int total_cores) { + return fill_array_from_sys(package_ids, total_cores, _PATH_TOPO_PACKAGE_ID); }