diff --git a/testcases/realtime/lib/librttest.c b/testcases/realtime/lib/librttest.c index 03566f36d50..99ce78b33b0 100644 --- a/testcases/realtime/lib/librttest.c +++ b/testcases/realtime/lib/librttest.c @@ -768,11 +768,13 @@ int get_numcpus(void) { long numcpus_conf = sysconf(_SC_NPROCESSORS_CONF); size_t size = CPU_ALLOC_SIZE(numcpus_conf); + int cpu_count; cpu_set_t *cpuset = CPU_ALLOC(numcpus_conf); CPU_ZERO_S(size, cpuset); /* Get the number of cpus accessible to the current process */ sched_getaffinity(0, size, cpuset); - - return CPU_COUNT_S(size, cpuset); + cpu_count = CPU_COUNT_S(size, cpuset); + CPU_FREE(cpuset); + return cpu_count; }