summaryrefslogtreecommitdiffstats
path: root/samples
diff options
context:
space:
mode:
authorYaqi Chen <chendotjs@gmail.com>2021-04-16 23:48:03 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-05-19 10:08:23 +0200
commit63a42044b9a12bed0ff9be276e0425203e54abad (patch)
treee2e4ed3ecb344b21a837f496d88d3263c2194570 /samples
parent9f6e107aab1477b499c3940f61212df441b0d220 (diff)
downloadlinux-stable-63a42044b9a12bed0ff9be276e0425203e54abad.tar.gz
linux-stable-63a42044b9a12bed0ff9be276e0425203e54abad.tar.bz2
linux-stable-63a42044b9a12bed0ff9be276e0425203e54abad.zip
samples/bpf: Fix broken tracex1 due to kprobe argument change
[ Upstream commit 137733d08f4ab14a354dacaa9a8fc35217747605 ] >From commit c0bbbdc32feb ("__netif_receive_skb_core: pass skb by reference"), the first argument passed into __netif_receive_skb_core has changed to reference of a skb pointer. This commit fixes by using bpf_probe_read_kernel. Signed-off-by: Yaqi Chen <chendotjs@gmail.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Acked-by: Yonghong Song <yhs@fb.com> Link: https://lore.kernel.org/bpf/20210416154803.37157-1-chendotjs@gmail.com Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'samples')
-rw-r--r--samples/bpf/tracex1_kern.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/samples/bpf/tracex1_kern.c b/samples/bpf/tracex1_kern.c
index 107da148820f..9c74b45c5720 100644
--- a/samples/bpf/tracex1_kern.c
+++ b/samples/bpf/tracex1_kern.c
@@ -20,7 +20,7 @@
SEC("kprobe/__netif_receive_skb_core")
int bpf_prog1(struct pt_regs *ctx)
{
- /* attaches to kprobe netif_receive_skb,
+ /* attaches to kprobe __netif_receive_skb_core,
* looks for packets on loobpack device and prints them
*/
char devname[IFNAMSIZ];
@@ -29,7 +29,7 @@ int bpf_prog1(struct pt_regs *ctx)
int len;
/* non-portable! works for the given kernel only */
- skb = (struct sk_buff *) PT_REGS_PARM1(ctx);
+ bpf_probe_read_kernel(&skb, sizeof(skb), (void *)PT_REGS_PARM1(ctx));
dev = _(skb->dev);
len = _(skb->len);