From 3e65002714f5b4d20ab30b01a58ddb0e243a74ac Mon Sep 17 00:00:00 2001 From: Wentao Zhang Date: Thu, 8 Dec 2022 11:55:17 +0800 Subject: [PATCH] samples/bpf: use kprobe and urandom_read_iter 14c174633f34 ("random: remove unused tracepoints") removed all the tracepoints from drivers/char/random.c, one of which, random:urandom_read. 1b388e7765f2 ("random: convert to using fops->read_iter()") replaced kernel function urandom_read with urandom_read_iter. Therefore, kprobe on urandom_read is not working any more. Use kprobing to replace the tracepoint and use urandom_read_iter to replace urandom_read to fix the breakage. Fixes: 1b388e7765f2 ("random: convert to using fops->read_iter()") Fixes: 14c174633f34 ("random: remove unused tracepoints") Signed-off-by: Wentao Zhang --- samples/bpf/test_overhead_kprobe_kern.c | 2 +- samples/bpf/test_overhead_raw_tp_kern.c | 2 +- samples/bpf/test_overhead_tp_kern.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/samples/bpf/test_overhead_kprobe_kern.c b/samples/bpf/test_overhead_kprobe_kern.c index f6d593e47..2dcb4ba0e 100644 --- a/samples/bpf/test_overhead_kprobe_kern.c +++ b/samples/bpf/test_overhead_kprobe_kern.c @@ -38,7 +38,7 @@ int prog(struct pt_regs *ctx) return 0; } -SEC("kprobe/urandom_read") +SEC("kprobe/urandom_read_iter") int prog2(struct pt_regs *ctx) { return 0; diff --git a/samples/bpf/test_overhead_raw_tp_kern.c b/samples/bpf/test_overhead_raw_tp_kern.c index 8763181a3..34a5aba61 100644 --- a/samples/bpf/test_overhead_raw_tp_kern.c +++ b/samples/bpf/test_overhead_raw_tp_kern.c @@ -9,7 +9,7 @@ int prog(struct bpf_raw_tracepoint_args *ctx) return 0; } -SEC("raw_tracepoint/urandom_read") +SEC("kprobe/urandom_read_iter") int prog2(struct bpf_raw_tracepoint_args *ctx) { return 0; diff --git a/samples/bpf/test_overhead_tp_kern.c b/samples/bpf/test_overhead_tp_kern.c index eaa32693f..d5f7abb4c 100644 --- a/samples/bpf/test_overhead_tp_kern.c +++ b/samples/bpf/test_overhead_tp_kern.c @@ -28,7 +28,7 @@ struct urandom_read { int pool_left; int input_left; }; -SEC("tracepoint/random/urandom_read") +SEC("kprobe/urandom_read_iter") int prog2(struct urandom_read *ctx) { return 0; -- 2.25.1