aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/include/linux/rcutree.h
diff options
context:
space:
mode:
authorUladzislau Rezki (Sony) <urezki@gmail.com>2022-10-25 16:46:12 +0200
committerPaul E. McKenney <paulmck@kernel.org>2023-01-03 17:48:40 -0800
commit04a522b7da3dbc083f8ae0aa1a6184b959a8f81c (patch)
tree492ecb846a88726dbc2221b93b6217ad8200ce5c /include/linux/rcutree.h
parentLinux 6.2-rc1 (diff)
downloadwireguard-linux-04a522b7da3dbc083f8ae0aa1a6184b959a8f81c.tar.xz
wireguard-linux-04a522b7da3dbc083f8ae0aa1a6184b959a8f81c.zip
rcu: Refactor kvfree_call_rcu() and high-level helpers
Currently a kvfree_call_rcu() takes an offset within a structure as a second parameter, so a helper such as a kvfree_rcu_arg_2() has to convert rcu_head and a freed ptr to an offset in order to pass it. That leads to an extra conversion on macro entry. Instead of converting, refactor the code in way that a pointer that has to be freed is passed directly to the kvfree_call_rcu(). This patch does not make any functional change and is transparent to all kvfree_rcu() users. Signed-off-by: Uladzislau Rezki (Sony) <urezki@gmail.com> Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Diffstat (limited to 'include/linux/rcutree.h')
-rw-r--r--include/linux/rcutree.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/rcutree.h b/include/linux/rcutree.h
index 4003bf6cfa1c..56bccb5a8fde 100644
--- a/include/linux/rcutree.h
+++ b/include/linux/rcutree.h
@@ -33,7 +33,7 @@ static inline void rcu_virt_note_context_switch(void)
}
void synchronize_rcu_expedited(void);
-void kvfree_call_rcu(struct rcu_head *head, rcu_callback_t func);
+void kvfree_call_rcu(struct rcu_head *head, void *ptr);
void rcu_barrier(void);
bool rcu_eqs_special_set(int cpu);