Support soft-mode disabling on uprobe-based dynamic events.
Soft-disabling is just ignoring recording if the soft disabled
flag is set.
Signed-off-by: zhangwei(Jovi) <[email protected]>
Cc: Masami Hiramatsu <[email protected]>
Cc: Frederic Weisbecker <[email protected]>
Cc: Oleg Nesterov <[email protected]>
Cc: Srikar Dronamraju <[email protected]>
---
kernel/trace/trace_uprobe.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/kernel/trace/trace_uprobe.c b/kernel/trace/trace_uprobe.c
index 2fc9931..94f180d 100644
--- a/kernel/trace/trace_uprobe.c
+++ b/kernel/trace/trace_uprobe.c
@@ -530,6 +530,9 @@ static void uprobe_trace_print(struct trace_uprobe *tu,
WARN_ON(call != ftrace_file->event_call);
+ if (test_bit(FTRACE_EVENT_FL_SOFT_DISABLED_BIT, &ftrace_file->flags))
+ return;
+
size = SIZEOF_TRACE_ENTRY(is_ret_probe(tu));
event = trace_event_buffer_lock_reserve(&buffer, ftrace_file,
call->event.type,
--
1.7.9.7