rethook: Fix to use WRITE_ONCE() for rethook:: Handler
Since the function pointered by rethook::handler never be removed when the rethook is alive, it doesn't need to use rcu_assign_pointer() to update it. Just use WRITE_ONCE(). Reported-by: Alexei Starovoitov <alexei.starovoitov@gmail.com> Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Link: https://lore.kernel.org/bpf/164868907688.21983.1606862921419988152.stgit@devnote2
This commit is contained in:
committed by
Alexei Starovoitov
parent
2609f635a2
commit
a2fb49833c
@@ -65,7 +65,7 @@ static void rethook_free_rcu(struct rcu_head *head)
|
|||||||
*/
|
*/
|
||||||
void rethook_free(struct rethook *rh)
|
void rethook_free(struct rethook *rh)
|
||||||
{
|
{
|
||||||
rcu_assign_pointer(rh->handler, NULL);
|
WRITE_ONCE(rh->handler, NULL);
|
||||||
|
|
||||||
call_rcu(&rh->rcu, rethook_free_rcu);
|
call_rcu(&rh->rcu, rethook_free_rcu);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user