File tree Expand file tree Collapse file tree 1 file changed +4
-5
lines changed Expand file tree Collapse file tree 1 file changed +4
-5
lines changed Original file line number Diff line number Diff line change @@ -3013,11 +3013,12 @@ static void rcu_torture_barrier_cbf(struct rcu_head *rcu)
3013
3013
}
3014
3014
3015
3015
/* IPI handler to get callback posted on desired CPU, if online. */
3016
- static void rcu_torture_barrier1cb (void * rcu_void )
3016
+ static int rcu_torture_barrier1cb (void * rcu_void )
3017
3017
{
3018
3018
struct rcu_head * rhp = rcu_void ;
3019
3019
3020
3020
cur_ops -> call (rhp , rcu_torture_barrier_cbf );
3021
+ return 0 ;
3021
3022
}
3022
3023
3023
3024
/* kthread function to register callbacks used to test RCU barriers. */
@@ -3043,11 +3044,9 @@ static int rcu_torture_barrier_cbs(void *arg)
3043
3044
* The above smp_load_acquire() ensures barrier_phase load
3044
3045
* is ordered before the following ->call().
3045
3046
*/
3046
- if (smp_call_function_single (myid , rcu_torture_barrier1cb ,
3047
- & rcu , 1 )) {
3048
- // IPI failed, so use direct call from current CPU.
3047
+ if (smp_call_on_cpu (myid , rcu_torture_barrier1cb , & rcu , 1 ))
3049
3048
cur_ops -> call (& rcu , rcu_torture_barrier_cbf );
3050
- }
3049
+
3051
3050
if (atomic_dec_and_test (& barrier_cbs_count ))
3052
3051
wake_up (& barrier_wq );
3053
3052
} while (!torture_must_stop ());
You can’t perform that action at this time.
0 commit comments