Re: [PATCH bpf-next v7 2/6] bpf: Attribute async callback instructions to verification roots
| Newsgroups | org.kernel.vger.bpf |
|---|---|
| Message-ID | <effd4af12a0a3d5fe02023495163575df8e8ef3f61d4ab63e061c3d798312034@mail.kernel.org> |
> diff --git a/kernel/bpf/verifier.c b/kernel/bpf/verifier.c
> index 855f245e7468..9b76851dcf54 100644
> --- a/kernel/bpf/verifier.c
> +++ b/kernel/bpf/verifier.c
> @@ -18762,6 +18762,7 @@ static int do_check_subprogs(struct bpf_verifier_env *env)
> struct bpf_prog_aux *aux = env->prog->aux;
> struct bpf_func_info_aux *sub_aux;
> int i, ret, new_cnt;
> + u32 insn_processed;
>
> if (!aux->func_info)
> return 0;
> @@ -18780,9 +18781,11 @@ static int do_check_subprogs(struct bpf_verifier_env *env)
> if (!sub_aux->called || sub_aux->verified)
> continue;
>
> + insn_processed = env->insn_processed;
> env->insn_idx = env->subprog_info[i].start;
> WARN_ON_ONCE(env->insn_idx == 0);
> ret = do_check_common(env, i);
> + env->subprog_info[i].insns_total = env->insn_processed - insn_processed;
This isn't a bug, but looking at the parent commit 01220a5c1336
("bpf: Track verifier instruction stats for each subprogram"), it deleted
the insn_processed snapshot and delta assignment from both do_check_subprogs()
and do_check_main(), and now this patch adds them back with only the field
name changed (insn_processed to insns_total).
Could the parent patch have kept these lines (with the rename) rather than
deleting and restoring them across two commits?
> if (ret) {
> return ret;
> } else if (env->log.level & BPF_LOG_LEVEL) {
[ ... ]
> @@ -18809,10 +18812,12 @@ static int do_check_subprogs(struct bpf_verifier_env *env)
>
> static int do_check_main(struct bpf_verifier_env *env)
> {
> + u32 insn_processed = env->insn_processed;
> int ret;
>
> env->insn_idx = 0;
> ret = do_check_common(env, 0);
> + env->subprog_info[0].insns_total = env->insn_processed - insn_processed;
> if (!ret)
> env->prog->aux->stack_depth = env->subprog_info[0].stack_depth;
> return ret;
---
AI reviewed your patch. Please fix the bug or email reply why it's not a bug.
See: https://github.com/kernel-patches/vmtest/blob/master/ci/claude/README.md
CI run summary: https://github.com/kernel-patches/bpf/actions/runs/31244455347