Re: [PATCH bpf-next 3/3] bpf/bpftool: handle libbpf_probe_prog_type errors

From: Andrii Nakryiko
Date: Fri Apr 01 2022 - 14:42:41 EST


On Fri, Apr 1, 2022 at 9:05 AM Quentin Monnet <quentin@xxxxxxxxxxxxx> wrote:
>
> 2022-03-31 11:45 UTC-0400 ~ Milan Landaverde <milan@xxxxxxxxxxxx>
> > Previously [1], we were using bpf_probe_prog_type which returned a
> > bool, but the new libbpf_probe_bpf_prog_type can return a negative
> > error code on failure. This change decides for bpftool to declare
> > a program type is not available on probe failure.
> >
> > [1] https://lore.kernel.org/bpf/20220202225916.3313522-3-andrii@xxxxxxxxxx/
> >
> > Signed-off-by: Milan Landaverde <milan@xxxxxxxxxxxx>
> > ---
> > tools/bpf/bpftool/feature.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/tools/bpf/bpftool/feature.c b/tools/bpf/bpftool/feature.c
> > index c2f43a5d38e0..b2fbaa7a6b15 100644
> > --- a/tools/bpf/bpftool/feature.c
> > +++ b/tools/bpf/bpftool/feature.c
> > @@ -564,7 +564,7 @@ probe_prog_type(enum bpf_prog_type prog_type, bool *supported_types,
> >
> > res = probe_prog_type_ifindex(prog_type, ifindex);
> > } else {
> > - res = libbpf_probe_bpf_prog_type(prog_type, NULL);
> > + res = libbpf_probe_bpf_prog_type(prog_type, NULL) > 0;
> > }
> >
> > #ifdef USE_LIBCAP
>

A completely unrelated question to you, Quentin. How hard is bpftool's
dependency on libcap? We've recently removed libcap from selftests, I
wonder if it would be possible to do that for bpftool as well to
reduce amount of shared libraries bpftool depends on.

> Reviewed-by: Quentin Monnet <quentin@xxxxxxxxxxxxx>
>
> Thanks!