Skip to content

Commit f882173

Browse files
committed
tracing/uprobe: Adopt guard() and scoped_guard()
Use guard() or scoped_guard() in uprobe events for critical sections rather than discrete lock/unlock pairs. Link: https://lore.kernel.org/all/173289889911.73724.12457932738419630525.stgit@devnote2/ Signed-off-by: Masami Hiramatsu (Google) <[email protected]>
1 parent 2cba007 commit f882173

File tree

1 file changed

+5
-10
lines changed

1 file changed

+5
-10
lines changed

kernel/trace/trace_uprobe.c

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -498,11 +498,11 @@ static int register_trace_uprobe(struct trace_uprobe *tu)
498498
struct trace_uprobe *old_tu;
499499
int ret;
500500

501-
mutex_lock(&event_mutex);
501+
guard(mutex)(&event_mutex);
502502

503503
ret = validate_ref_ctr_offset(tu);
504504
if (ret)
505-
goto end;
505+
return ret;
506506

507507
/* register as an event */
508508
old_tu = find_probe_event(trace_probe_name(&tu->tp),
@@ -511,11 +511,9 @@ static int register_trace_uprobe(struct trace_uprobe *tu)
511511
if (is_ret_probe(tu) != is_ret_probe(old_tu)) {
512512
trace_probe_log_set_index(0);
513513
trace_probe_log_err(0, DIFF_PROBE_TYPE);
514-
ret = -EEXIST;
515-
} else {
516-
ret = append_trace_uprobe(tu, old_tu);
514+
return -EEXIST;
517515
}
518-
goto end;
516+
return append_trace_uprobe(tu, old_tu);
519517
}
520518

521519
ret = register_uprobe_event(tu);
@@ -525,14 +523,11 @@ static int register_trace_uprobe(struct trace_uprobe *tu)
525523
trace_probe_log_err(0, EVENT_EXIST);
526524
} else
527525
pr_warn("Failed to register probe event(%d)\n", ret);
528-
goto end;
526+
return ret;
529527
}
530528

531529
dyn_event_add(&tu->devent, trace_probe_event_call(&tu->tp));
532530

533-
end:
534-
mutex_unlock(&event_mutex);
535-
536531
return ret;
537532
}
538533

0 commit comments

Comments
 (0)