tracing: Rename kvfree_rcu() to kvfree_rcu_mightsleep()
authorUladzislau Rezki (Sony) <urezki@gmail.com>
Wed, 1 Feb 2023 15:08:10 +0000 (16:08 +0100)
committerJoel Fernandes (Google) <joel@joelfernandes.org>
Wed, 5 Apr 2023 13:48:03 +0000 (13:48 +0000)
The kvfree_rcu() macro's single-argument form is deprecated.  Therefore
switch to the new kvfree_rcu_mightsleep() variant. The goal is to
avoid accidental use of the single-argument forms, which can introduce
functionality bugs in atomic contexts and latency bugs in non-atomic
contexts.

Cc: Steven Rostedt (VMware) <rostedt@goodmis.org>
Acked-by: Daniel Bristot de Oliveira <bristot@kernel.org>
Acked-by: Paul E. McKenney <paulmck@kernel.org>
Signed-off-by: Uladzislau Rezki (Sony) <urezki@gmail.com>
Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org>
kernel/trace/trace_osnoise.c
kernel/trace/trace_probe.c

index 04f0fda..f68ca1e 100644 (file)
@@ -159,7 +159,7 @@ static void osnoise_unregister_instance(struct trace_array *tr)
        if (!found)
                return;
 
-       kvfree_rcu(inst);
+       kvfree_rcu_mightsleep(inst);
 }
 
 /*
index 20d0c4a..2d26166 100644 (file)
@@ -1172,7 +1172,7 @@ int trace_probe_remove_file(struct trace_probe *tp,
                return -ENOENT;
 
        list_del_rcu(&link->list);
-       kvfree_rcu(link);
+       kvfree_rcu_mightsleep(link);
 
        if (list_empty(&tp->event->files))
                trace_probe_clear_flag(tp, TP_FLAG_TRACE);