Fix: rcutorture should register thread using call_rcu
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Wed, 7 Sep 2016 21:26:25 +0000 (17:26 -0400)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Wed, 7 Sep 2016 21:54:55 +0000 (17:54 -0400)
From rcu-api.txt:

`call_rcu` should be called from registered RCU read-side threads.
For the QSBR flavor, the caller should be online.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
tests/regression/rcutorture.h

index bf20e56c8c0763541b1a95a169e68ca046db2493..053653faca37a0b3be9f649c3cf7728da4c61400 100644 (file)
@@ -368,6 +368,9 @@ void *rcu_update_stress_test(void *arg)
        struct rcu_stress *p;
        struct rcu_head rh;
 
+       rcu_register_thread();
+       rcu_thread_offline();
+
        while (goflag == GOFLAG_INIT)
                (void) poll(NULL, 0, 1);
        while (goflag == GOFLAG_RUN) {
@@ -415,6 +418,9 @@ void *rcu_update_stress_test(void *arg)
                }
                n_updates++;
        }
+
+       rcu_thread_online();
+       rcu_unregister_thread();
        return NULL;
 }
 
This page took 0.026659 seconds and 4 git commands to generate.