Commit b4b638c3 authored by Yonghong Song's avatar Yonghong Song Committed by Daniel Borkmann

selftests/bpf: Add a test for ptr_to_map_value on stack for helper access

Change bpf_iter_task.c such that pointer to map_value may appear
on the stack for bpf_seq_printf() to access. Without previous
verifier patch, the bpf_iter test will fail.
Signed-off-by: default avatarYonghong Song <yhs@fb.com>
Signed-off-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
Acked-by: default avatarSong Liu <songliubraving@fb.com>
Link: https://lore.kernel.org/bpf/20201210013350.943985-1-yhs@fb.com
parent cd17d38f
...@@ -11,9 +11,10 @@ int dump_task(struct bpf_iter__task *ctx) ...@@ -11,9 +11,10 @@ int dump_task(struct bpf_iter__task *ctx)
{ {
struct seq_file *seq = ctx->meta->seq; struct seq_file *seq = ctx->meta->seq;
struct task_struct *task = ctx->task; struct task_struct *task = ctx->task;
static char info[] = " === END ===";
if (task == (void *)0) { if (task == (void *)0) {
BPF_SEQ_PRINTF(seq, " === END ===\n"); BPF_SEQ_PRINTF(seq, "%s\n", info);
return 0; return 0;
} }
......
...@@ -108,8 +108,9 @@ ...@@ -108,8 +108,9 @@
BPF_EXIT_INSN(), BPF_EXIT_INSN(),
}, },
.fixup_map_hash_8b = { 3 }, .fixup_map_hash_8b = { 3 },
.errstr = "invalid indirect read from stack off -8+0 size 8", .errstr_unpriv = "invalid indirect read from stack off -8+0 size 8",
.result = REJECT, .result_unpriv = REJECT,
.result = ACCEPT,
}, },
{ {
"unpriv: mangle pointer on stack 1", "unpriv: mangle pointer on stack 1",
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment