Skip to content

Commit 422c218

Browse files
borkmannrtg-canonical
authored andcommitted
bpf, samples: Use bpf_probe_read_user where appropriate
BugLink: https://bugs.launchpad.net/bugs/1990009 Use bpf_probe_read_user() helper instead of bpf_probe_read() for samples that attach to kprobes probing on user addresses. Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Acked-by: Andrii Nakryiko <andriin@fb.com> Link: https://lore.kernel.org/bpf/5b0144b3f8e031ec5e2438bd7de8d7877e63bf2f.1572649915.git.daniel@iogearbox.net (cherry picked from commit 251e2d3) Signed-off-by: Tim Gardner <tim.gardner@canonical.com> Acked-by: Cengiz Can <cengiz.can@canonical.com> Acked-by: Joseph Salisbury <joseph.salisbury@canonical.com> Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
1 parent 7590e7c commit 422c218

File tree

3 files changed

+5
-5
lines changed

3 files changed

+5
-5
lines changed

samples/bpf/map_perf_test_kern.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -179,8 +179,8 @@ int stress_lru_hmap_alloc(struct pt_regs *ctx)
179179
if (addrlen != sizeof(*in6))
180180
return 0;
181181

182-
ret = bpf_probe_read(test_params.dst6, sizeof(test_params.dst6),
183-
&in6->sin6_addr);
182+
ret = bpf_probe_read_user(test_params.dst6, sizeof(test_params.dst6),
183+
&in6->sin6_addr);
184184
if (ret)
185185
goto done;
186186

samples/bpf/test_map_in_map_kern.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ int trace_sys_connect(struct pt_regs *ctx)
116116
if (addrlen != sizeof(*in6))
117117
return 0;
118118

119-
ret = bpf_probe_read(dst6, sizeof(dst6), &in6->sin6_addr);
119+
ret = bpf_probe_read_user(dst6, sizeof(dst6), &in6->sin6_addr);
120120
if (ret) {
121121
inline_ret = ret;
122122
goto done;
@@ -127,7 +127,7 @@ int trace_sys_connect(struct pt_regs *ctx)
127127

128128
test_case = dst6[7];
129129

130-
ret = bpf_probe_read(&port, sizeof(port), &in6->sin6_port);
130+
ret = bpf_probe_read_user(&port, sizeof(port), &in6->sin6_port);
131131
if (ret) {
132132
inline_ret = ret;
133133
goto done;

samples/bpf/test_probe_write_user_kern.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ int bpf_prog1(struct pt_regs *ctx)
3636
if (sockaddr_len > sizeof(orig_addr))
3737
return 0;
3838

39-
if (bpf_probe_read(&orig_addr, sizeof(orig_addr), sockaddr_arg) != 0)
39+
if (bpf_probe_read_user(&orig_addr, sizeof(orig_addr), sockaddr_arg) != 0)
4040
return 0;
4141

4242
mapped_addr = bpf_map_lookup_elem(&dnat_map, &orig_addr);

0 commit comments

Comments
 (0)