You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
bpf_get_func_ip() for kretprobe.multitorvalds/linux@42a5712094e8 ("bpf: Add bpf_get_func_ip kprobe helper for multi kprobe link "): to get tracee's IP.
bpf_get_func_ip() for tracing torvalds/linux@9b99edcae5c8 ("bpf: Add bpf_get_func_ip helper for tracing programs"): to get tracee's IP.
bpf_get_func_ret() for tracing torvalds/linux@f92c1e183604 ("bpf: Add get_func_[arg|ret|arg_cnt] helpers "): to get tracee's return value.
It's going to trace multiple kernel functions with kretprobe.multi to get tracee's LBR records via bpf_get_branch_snapshot() helper alongside its return value.
But, the accuracy of LBR records got by bpf_get_branch_snapshot() is not good enough. bpf_read_branch_records()torvalds/linux@fff7b64355ea ("bpf: Add bpf_read_branch_records() helper") maybe is required to improve the accuracy.
The text was updated successfully, but these errors were encountered:
I've finished a PoC about LBR: bpflbr.
Then, I think it's better to introduce LBR for pwru.
As for pwru, introduce
--output-lbr
to output LBR stack, e.g. an example frombpflbr
:However,
--output-lbr
relies on some bpf features:bpf_get_branch_snapshot()
torvalds/linux@856c02dbce4f ("bpf: Introduce helper bpf_get_branch_snapshot"): to get LBR records.kretprobe.multi
torvalds/linux@0dcac2725406 ("bpf: Add multi kprobe link")bpf_get_func_ip()
forkretprobe.multi
torvalds/linux@42a5712094e8 ("bpf: Add bpf_get_func_ip kprobe helper for multi kprobe link "): to get tracee's IP.bpf_get_func_ip()
for tracing torvalds/linux@9b99edcae5c8 ("bpf: Add bpf_get_func_ip helper for tracing programs"): to get tracee's IP.bpf_get_func_ret()
for tracing torvalds/linux@f92c1e183604 ("bpf: Add get_func_[arg|ret|arg_cnt] helpers "): to get tracee's return value.It's going to trace multiple kernel functions with
kretprobe.multi
to get tracee's LBR records viabpf_get_branch_snapshot()
helper alongside its return value.But, the accuracy of LBR records got by
bpf_get_branch_snapshot()
is not good enough.bpf_read_branch_records()
torvalds/linux@fff7b64355ea ("bpf: Add bpf_read_branch_records() helper") maybe is required to improve the accuracy.The text was updated successfully, but these errors were encountered: