mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-04 04:06:26 +00:00
samples/bpf: Fix tracex2 error: No such file or directory
since commit c504e5c2f964("net: skb: introduce kfree_skb_reason()") kfree_skb() is replaced by kfree_skb_reason() and kfree_skb() is set to the inline function. So, we replace kprobe/kfree_skb with kprobe/kfree_skb_reason to solve the tracex2 error. $ cd samples/bpf $ sudo ./tracex2 libbpf: prog 'bpf_prog2': failed to create kprobe 'kfree_skb+0x0' perf event: No such file or directory ERROR: bpf_program__attach failed Signed-off-by: Rong Tao <rongtao@cestc.cn> Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Link: https://lore.kernel.org/bpf/tencent_0F0DAE84C0B3C42E0B550E5E9F47A9114D09@qq.com
This commit is contained in:
parent
2e20f50ff8
commit
1baa7e3800
@ -22,14 +22,14 @@ struct {
|
||||
/* kprobe is NOT a stable ABI. If kernel internals change this bpf+kprobe
|
||||
* example will no longer be meaningful
|
||||
*/
|
||||
SEC("kprobe/kfree_skb")
|
||||
SEC("kprobe/kfree_skb_reason")
|
||||
int bpf_prog2(struct pt_regs *ctx)
|
||||
{
|
||||
long loc = 0;
|
||||
long init_val = 1;
|
||||
long *value;
|
||||
|
||||
/* read ip of kfree_skb caller.
|
||||
/* read ip of kfree_skb_reason caller.
|
||||
* non-portable version of __builtin_return_address(0)
|
||||
*/
|
||||
BPF_KPROBE_READ_RET_IP(loc, ctx);
|
||||
|
@ -146,7 +146,8 @@ int main(int ac, char **argv)
|
||||
signal(SIGINT, int_exit);
|
||||
signal(SIGTERM, int_exit);
|
||||
|
||||
/* start 'ping' in the background to have some kfree_skb events */
|
||||
/* start 'ping' in the background to have some kfree_skb_reason
|
||||
* events */
|
||||
f = popen("ping -4 -c5 localhost", "r");
|
||||
(void) f;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user