Re: [PATCH] tracing: Replace BUG_ON with lockdep_assert_held in uprobe_buffer functions
From: Masami Hiramatsu (Google) <mhiramat@kernel.org>
Date: 2026-05-25 07:42:14
Also in:
lkml
On Thu, 21 May 2026 18:16:01 -0400 Steven Rostedt [off-list ref] wrote:
On Fri, 22 May 2026 00:58:46 +0530 Yash Suthar [off-list ref] wrote:quoted
Replace BUG_ON(!mutex_is_locked(&event_mutex)) with lockdep_assert_held(&event_mutex) in uprobe_buffer_enable() and uprobe_buffer_disable(). BUG_ON() will crash the kernel. mutex_is_locked() only checks if any task holds lock,but not the caller task. lockdep_assert_held() also check current task for lock and no crash on true condition. Signed-off-by: Yash Suthar <redacted>This looks good to me. Acked-by: Steven Rostedt <rostedt@goodmis.org> Masami, do you want to take this?
Yeah, let me pick this. Thanks!
-- Stevequoted
--- kernel/trace/trace_uprobe.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)diff --git a/kernel/trace/trace_uprobe.c b/kernel/trace/trace_uprobe.c index 2cabf8a23ec5..aee0960d0cf7 100644 --- a/kernel/trace/trace_uprobe.c +++ b/kernel/trace/trace_uprobe.c@@ -912,7 +912,7 @@ static int uprobe_buffer_enable(void) { int ret = 0; - BUG_ON(!mutex_is_locked(&event_mutex)); + lockdep_assert_held(&event_mutex); if (uprobe_buffer_refcnt++ == 0) { ret = uprobe_buffer_init();@@ -927,7 +927,7 @@ static void uprobe_buffer_disable(void) { int cpu; - BUG_ON(!mutex_is_locked(&event_mutex)); + lockdep_assert_held(&event_mutex); if (--uprobe_buffer_refcnt == 0) { for_each_possible_cpu(cpu)
-- Masami Hiramatsu (Google) [off-list ref]