diff --git a/kernel/bpf/verifier.c b/kernel/bpf/verifier.c index 630a7bac1e513e330785283e38aa1dfbe9eb5c50..66bec36ec1ecc121557b6a38c0ad899a5d65e663 100644 --- a/kernel/bpf/verifier.c +++ b/kernel/bpf/verifier.c @@ -1397,7 +1397,8 @@ static int check_cfg(struct verifier_env *env) /* tell verifier to check for equivalent states * after every call and jump */ - env->explored_states[t + 1] = STATE_LIST_MARK; + if (t + 1 < insn_cnt) + env->explored_states[t + 1] = STATE_LIST_MARK; } else { /* conditional jump with two edges */ ret = push_insn(t, t + 1, FALLTHROUGH, env);