diff options
Diffstat (limited to 'src/allowedips.c')
-rw-r--r-- | src/allowedips.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/allowedips.c b/src/allowedips.c index bfb6020..592501e 100644 --- a/src/allowedips.c +++ b/src/allowedips.c @@ -112,7 +112,7 @@ static void walk_remove_by_peer(struct allowedips_node __rcu **top, if (!node->bit[0] || !node->bit[1]) { rcu_assign_pointer(*nptr, DEREF( &node->bit[!REF(node->bit[0])])); - call_rcu_bh(&node->rcu, node_free_rcu); + call_rcu(&node->rcu, node_free_rcu); node = DEREF(nptr); } } @@ -300,12 +300,12 @@ void wg_allowedips_free(struct allowedips *table, struct mutex *lock) RCU_INIT_POINTER(table->root6, NULL); if (rcu_access_pointer(old4)) { root_remove_peer_lists(old4); - call_rcu_bh(&rcu_dereference_protected(old4, + call_rcu(&rcu_dereference_protected(old4, lockdep_is_held(lock))->rcu, root_free_rcu); } if (rcu_access_pointer(old6)) { root_remove_peer_lists(old6); - call_rcu_bh(&rcu_dereference_protected(old6, + call_rcu(&rcu_dereference_protected(old6, lockdep_is_held(lock))->rcu, root_free_rcu); } } |