rt-tests/SOURCES/rt-tests-oslat-Allocate-mem...

48 lines
1.3 KiB
Diff

From 5821269dde6a778b0af06c172bc2f19bbe324bda Mon Sep 17 00:00:00 2001
From: John Kacur <jkacur@redhat.com>
Date: Fri, 12 Feb 2021 12:22:23 -0500
Subject: [PATCH 3/3] rt-tests: oslat: Allocate memory for cpu_set
- cpu_set is a pointer to a bitmask struct
Memory needs to be allocated for the struct, so call
numa_allocate_cpumask()
- use rt-tests fatal to exit on error conditions
Reviewed-by: Daniel Wagner <dwagner@suse.de>
Signed-off-by: John Kacur <jkacur@redhat.com>
---
src/oslat/oslat.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/oslat/oslat.c b/src/oslat/oslat.c
index 2fe550b3ee12..2a3be393a268 100644
--- a/src/oslat/oslat.c
+++ b/src/oslat/oslat.c
@@ -727,6 +727,10 @@ int main(int argc, char *argv[])
exit(1);
}
+ cpu_set = numa_allocate_cpumask();
+ if (!cpu_set)
+ fatal("oslat: Could not allocate cpumask\n");
+
g.app_name = argv[0];
g.rtprio = 0;
g.bucket_size = BUCKET_SIZE;
@@ -742,8 +746,9 @@ int main(int argc, char *argv[])
if (!g.cpu_list)
g.cpu_list = strdup("all");
- if (parse_cpumask(g.cpu_list, max_cpus, &cpu_set))
- exit(1);
+
+ if (parse_cpumask(g.cpu_list, max_cpus, &cpu_set) != 0)
+ fatal("oslat: parse_cpumask failed.\n");
n_cores = numa_bitmask_weight(cpu_set);
TEST(threads = calloc(1, n_cores * sizeof(threads[0])));
--
2.26.2