X-Git-Url: https://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=tests%2Fregression%2Frcutorture.h;h=639fcfc19cb2bfe33f765629dd233af04e35267d;hp=db3dfad00785a5aede0aa486d2805b5ed67a8814;hb=153b081a9b007aad7bece415dc3bf1125edd2da3;hpb=0b9c513b2513c37e3ed0a5ee047b8d40eef482ab diff --git a/tests/regression/rcutorture.h b/tests/regression/rcutorture.h index db3dfad..639fcfc 100644 --- a/tests/regression/rcutorture.h +++ b/tests/regression/rcutorture.h @@ -113,13 +113,13 @@ volatile int goflag __attribute__((__aligned__(CAA_CACHE_LINE_SIZE))) #endif #ifndef mark_rcu_quiescent_state -#define mark_rcu_quiescent_state() do ; while (0) +#define mark_rcu_quiescent_state() do {} while (0) #endif /* #ifdef mark_rcu_quiescent_state */ #ifndef put_thread_offline -#define put_thread_offline() do ; while (0) -#define put_thread_online() do ; while (0) -#define put_thread_online_delay() do ; while (0) +#define put_thread_offline() do {} while (0) +#define put_thread_online() do {} while (0) +#define put_thread_online_delay() do {} while (0) #else /* #ifndef put_thread_offline */ #define put_thread_online_delay() synchronize_rcu() #endif /* #else #ifndef put_thread_offline */ @@ -128,6 +128,7 @@ volatile int goflag __attribute__((__aligned__(CAA_CACHE_LINE_SIZE))) * Performance test. */ +static void *rcu_read_perf_test(void *arg) { int i; @@ -158,7 +159,8 @@ void *rcu_read_perf_test(void *arg) return (NULL); } -void *rcu_update_perf_test(void *arg) +static +void *rcu_update_perf_test(void *arg __attribute__((unused))) { long long n_updates_local = 0; @@ -189,6 +191,7 @@ void *rcu_update_perf_test(void *arg) return NULL; } +static void perftestinit(void) { init_per_thread(n_reads_pt, 0LL); @@ -196,6 +199,7 @@ void perftestinit(void) uatomic_set(&nthreadsrunning, 0); } +static int perftestrun(int nthreads, int nreaders, int nupdaters) { int t; @@ -229,6 +233,7 @@ int perftestrun(int nthreads, int nreaders, int nupdaters) return 0; } +static int perftest(int nreaders, int cpustride) { int i; @@ -244,6 +249,7 @@ int perftest(int nreaders, int cpustride) return perftestrun(i + 1, nreaders, 1); } +static int rperftest(int nreaders, int cpustride) { int i; @@ -258,6 +264,7 @@ int rperftest(int nreaders, int cpustride) return perftestrun(i, nreaders, 0); } +static int uperftest(int nupdaters, int cpustride) { int i; @@ -283,7 +290,7 @@ struct rcu_stress { int mbtest; }; -struct rcu_stress rcu_stress_array[RCU_STRESS_PIPE_LEN] = { { 0 } }; +struct rcu_stress rcu_stress_array[RCU_STRESS_PIPE_LEN] = { { 0, 0 } }; struct rcu_stress *rcu_stress_current; int rcu_stress_idx = 0; @@ -292,7 +299,8 @@ DEFINE_PER_THREAD(long long [RCU_STRESS_PIPE_LEN + 1], rcu_stress_count); int garbage = 0; -void *rcu_read_stress_test(void *arg) +static +void *rcu_read_stress_test(void *arg __attribute__((unused))) { int i; int itercnt = 0; @@ -335,7 +343,8 @@ void *rcu_read_stress_test(void *arg) static pthread_mutex_t call_rcu_test_mutex = PTHREAD_MUTEX_INITIALIZER; static pthread_cond_t call_rcu_test_cond = PTHREAD_COND_INITIALIZER; -void rcu_update_stress_test_rcu(struct rcu_head *head) +static +void rcu_update_stress_test_rcu(struct rcu_head *head __attribute__((unused))) { int ret; @@ -362,7 +371,8 @@ void rcu_update_stress_test_rcu(struct rcu_head *head) } } -void *rcu_update_stress_test(void *arg) +static +void *rcu_update_stress_test(void *arg __attribute__((unused))) { int i; struct rcu_stress *p; @@ -435,7 +445,8 @@ void *rcu_update_stress_test(void *arg) return NULL; } -void *rcu_fake_update_stress_test(void *arg) +static +void *rcu_fake_update_stress_test(void *arg __attribute__((unused))) { if (callrcu_type == CALLRCU_PERTHREAD) { struct call_rcu_data *crdp; @@ -462,6 +473,7 @@ void *rcu_fake_update_stress_test(void *arg) return NULL; } +static int stresstest(int nreaders) { int i; @@ -519,7 +531,11 @@ int stresstest(int nreaders) * Mainprogram. */ -void usage(int argc, char *argv[]) +static +void usage(char *argv[]) __attribute__((noreturn)); + +static +void usage(char *argv[]) { diag("Usage: %s nreaders [ perf | rperf | uperf | stress ] [ stride ] [ callrcu_global | callrcu_percpu | callrcu_perthread ]\n", argv[0]); exit(-1); @@ -544,7 +560,7 @@ int main(int argc, char *argv[]) } else if (strcmp(callrcu_str, "callrcu_perthread") == 0) { callrcu_type = CALLRCU_PERTHREAD; } else { - usage(argc, argv); + usage(argv); goto end; } } @@ -574,7 +590,7 @@ int main(int argc, char *argv[]) if (argc > 1) { if (strcmp(argv[1], "-h") == 0 || strcmp(argv[1], "--help") == 0) { - usage(argc, argv); + usage(argv); goto end; } nreaders = strtoul(argv[1], NULL, 0); @@ -603,9 +619,9 @@ int main(int argc, char *argv[]) "stresstest readers: %d, stride: %d", nreaders, cpustride); else - usage(argc, argv); + usage(argv); } else { - usage(argc, argv); + usage(argv); } end: return exit_status();