X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=tests%2Fcommon%2Fapi.h;h=4fe6969f424652e5d18081ae285d621c74d785e4;hb=a142df4e35dcf835439bf6714e49e95a2a68f7a6;hp=14033596885bce51b77df4e5c958eb7434a6428e;hpb=f5ab766ee2c8300cb00ca5878b1cb464f960a66d;p=userspace-rcu.git diff --git a/tests/common/api.h b/tests/common/api.h index 1403359..4fe6969 100644 --- a/tests/common/api.h +++ b/tests/common/api.h @@ -1,9 +1,6 @@ #ifndef _INCLUDE_API_H #define _INCLUDE_API_H -#define _GNU_SOURCE -#include "config.h" - /* * common.h: Common Linux kernel-isms. * @@ -29,7 +26,6 @@ #include #include -#include "cpuset.h" /* * Machine parameters. @@ -111,7 +107,7 @@ static void spin_unlock(spinlock_t *sp) typedef pthread_t thread_id_t; -#define NR_THREADS 128 +#define NR_THREADS 4096 #define __THREAD_ID_MAP_EMPTY ((thread_id_t) 0) #define __THREAD_ID_MAP_WAITING ((thread_id_t) 1) @@ -232,25 +228,26 @@ static void wait_all_threads(void) } } +#ifdef HAVE_SCHED_SETAFFINITY static void run_on(int cpu) { -#if HAVE_SCHED_SETAFFINITY cpu_set_t mask; CPU_ZERO(&mask); CPU_SET(cpu, &mask); -#if SCHED_SETAFFINITY_ARGS == 2 - sched_setaffinity(0, &mask); -#else sched_setaffinity(0, sizeof(mask), &mask); -#endif -#endif /* HAVE_SCHED_SETAFFINITY */ } +#else + +static void run_on(int cpu __attribute__((unused))) +{} +#endif /* HAVE_SCHED_SETAFFINITY */ /* * timekeeping -- very crude -- should use MONOTONIC... */ +static inline long long get_microseconds(void) { struct timeval tv; @@ -268,7 +265,7 @@ long long get_microseconds(void) struct { \ __typeof__(type) v \ __attribute__((__aligned__(CAA_CACHE_LINE_SIZE))); \ - } __per_thread_##name[NR_THREADS]; + } __per_thread_##name[NR_THREADS] #define DECLARE_PER_THREAD(type, name) extern DEFINE_PER_THREAD(type, name) #define per_thread(name, thread) __per_thread_##name[thread].v