projects
/
linux-block.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
b24fc35
)
bpftool: Display missed count for kprobe perf link
author
Jiri Olsa
<jolsa@kernel.org>
Wed, 20 Sep 2023 21:31:42 +0000
(23:31 +0200)
committer
Andrii Nakryiko
<andrii@kernel.org>
Mon, 25 Sep 2023 23:37:44 +0000
(16:37 -0700)
Adding 'missed' field to display missed counts for kprobes
attached by perf event link, like:
# bpftool link
5: perf_event prog 82
kprobe
ffffffff815203e0
ksys_write
6: perf_event prog 83
kprobe
ffffffff811d1e50
scheduler_tick missed 682217
# bpftool link -jp
[{
"id": 5,
"type": "perf_event",
"prog_id": 82,
"retprobe": false,
"addr":
18446744071584220128
,
"func": "ksys_write",
"offset": 0,
"missed": 0
},{
"id": 6,
"type": "perf_event",
"prog_id": 83,
"retprobe": false,
"addr":
18446744071580753488
,
"func": "scheduler_tick",
"offset": 0,
"missed": 693469
}
]
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Reviewed-by: Quentin Monnet <quentin@isovalent.com>
Link:
https://lore.kernel.org/bpf/20230920213145.1941596-7-jolsa@kernel.org
tools/bpf/bpftool/link.c
patch
|
blob
|
blame
|
history
diff --git
a/tools/bpf/bpftool/link.c
b/tools/bpf/bpftool/link.c
index d15d74cd1bedbbe1c67f36350406e7ca6e363d99..4b1407b0505651c9bb1d1f75d6eb8c9e9ba78a26 100644
(file)
--- a/
tools/bpf/bpftool/link.c
+++ b/
tools/bpf/bpftool/link.c
@@
-302,6
+302,7
@@
show_perf_event_kprobe_json(struct bpf_link_info *info, json_writer_t *wtr)
jsonw_string_field(wtr, "func",
u64_to_ptr(info->perf_event.kprobe.func_name));
jsonw_uint_field(wtr, "offset", info->perf_event.kprobe.offset);
+ jsonw_uint_field(wtr, "missed", info->perf_event.kprobe.missed);
}
static void
@@
-686,6
+687,8
@@
static void show_perf_event_kprobe_plain(struct bpf_link_info *info)
printf("%s", buf);
if (info->perf_event.kprobe.offset)
printf("+%#x", info->perf_event.kprobe.offset);
+ if (info->perf_event.kprobe.missed)
+ printf(" missed %llu", info->perf_event.kprobe.missed);
printf(" ");
}