diff options
author | Daniel Borkmann <daniel@iogearbox.net> | 2019-01-03 02:58:27 +0300 |
---|---|---|
committer | Alexei Starovoitov <ast@kernel.org> | 2019-01-03 03:01:24 +0300 |
commit | c08435ec7f2bc8f4109401f696fd55159b4b40cb (patch) | |
tree | 3e307a1a8967ae960b5110b5972dae885c843681 /include/linux/bpf_verifier.h | |
parent | 8b6b25cf93b73e8e399adc55b0ffb9db32b881e0 (diff) | |
download | linux-c08435ec7f2bc8f4109401f696fd55159b4b40cb.tar.xz |
bpf: move {prev_,}insn_idx into verifier env
Move prev_insn_idx and insn_idx from the do_check() function into
the verifier environment, so they can be read inside the various
helper functions for handling the instructions. It's easier to put
this into the environment rather than changing all call-sites only
to pass it along. insn_idx is useful in particular since this later
on allows to hold state in env->insn_aux_data[env->insn_idx].
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'include/linux/bpf_verifier.h')
-rw-r--r-- | include/linux/bpf_verifier.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/bpf_verifier.h b/include/linux/bpf_verifier.h index c233efc106c6..3f84f3e87704 100644 --- a/include/linux/bpf_verifier.h +++ b/include/linux/bpf_verifier.h @@ -212,6 +212,8 @@ struct bpf_subprog_info { * one verifier_env per bpf_check() call */ struct bpf_verifier_env { + u32 insn_idx; + u32 prev_insn_idx; struct bpf_prog *prog; /* eBPF program being verified */ const struct bpf_verifier_ops *ops; struct bpf_verifier_stack_elem *head; /* stack of verifier states to be processed */ |