Re: [PATCH RFC bpf-next v3 02/16] bpf/verifier: introduce in_sleepable() helper

From: Benjamin Tissoires
Date: Fri Feb 23 2024 - 14:46:23 EST


On Feb 22 2024, Alexei Starovoitov wrote:
> On Wed, Feb 21, 2024 at 8:25 AM Benjamin Tissoires <bentiss@xxxxxxxxxx> wrote:
> > @@ -18193,7 +18198,7 @@ static int resolve_pseudo_ldimm64(struct bpf_verifier_env *env)
> > return -E2BIG;
> > }
> >
> > - if (env->prog->aux->sleepable)
> > + if (in_sleepable(env))
> > atomic64_inc(&map->sleepable_refcnt);
>
> this one doesn't look correct.
> The verifier didn't start its main loop when resolve_pseudo_ldimm64()
> is called.
> It also loses symmetry with other sleepable_refcnt operations
> in syscall.c and core.c
>
> I reverted this hunk and applied patches 1,2,3
> with minor edits, like removing unnecessary parens in patch 3,
> and patch subject rewords.

Thanks a lot. I'll work on the rest of the series next week.

Cheers,
Benjamin