Messages in this thread Patch in this message | | | From | Xiangyang Zhang <> | Subject | [PATCH] tracing/kprobes: 'nmissed' not showed correctly for kretprobe | Date | Sat, 11 Dec 2021 23:00:32 +0800 |
| |
The 'nmissed' column of the 'kprobe_profile' file for kretprobe is always zero, because 'nmissed' for kretprobe is maintained in 'tk->rp.nmissed' but not in 'tk->rp.kp.nmissed'
Fixes: c31ffb3ff633 ("tracing/kprobes: Factor out struct trace_probe") Signed-off-by: Xiangyang Zhang <xyz.sun.ok@gmail.com> --- kernel/trace/trace_kprobe.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c index d10c01948e68..2b9de6826e94 100644 --- a/kernel/trace/trace_kprobe.c +++ b/kernel/trace/trace_kprobe.c @@ -1175,15 +1175,17 @@ static int probes_profile_seq_show(struct seq_file *m, void *v) { struct dyn_event *ev = v; struct trace_kprobe *tk; + unsigned long nmissed = 0; if (!is_trace_kprobe(ev)) return 0; tk = to_trace_kprobe(ev); + nmissed = tk->rp.handler ? tk->rp.nmissed : tk->rp.kp.nmissed; seq_printf(m, " %-44s %15lu %15lu\n", trace_probe_name(&tk->tp), trace_kprobe_nhit(tk), - tk->rp.kp.nmissed); + nmissed); return 0; } -- 2.25.1
| |