Re: [PATCH 1/2] bpf: Fix warning of Using plain integer as NULL pointer

Jules Irenge
2022-09-04T10:36:59Z

On Sat, Sep 03, 2022 at 09:10:31PM +0200, Kumar Kartikeya Dwivedi wrote:
> On Sat, 3 Sept 2022 at 20:59, Jules Irenge <jbi.octave@gmail.com> wrote:
> >
> > This patch fixes a warning generated by Sparse
> >
> > "Using plain integer as NULL pointer"
> >
> > by replacing the offending 0 by NULL.
> >
> > Signed-off-by: Jules Irenge <jbi.octave@gmail.com>
> > ---
> > kernel/bpf/syscall.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c
> > index 27760627370d..427b7e3829e0 100644
> > --- a/kernel/bpf/syscall.c
> > +++ b/kernel/bpf/syscall.c
> > @@ -598,7 +598,7 @@ void bpf_map_free_kptrs(struct bpf_map *map, void *map_value)
> > if (off_desc->type == BPF_KPTR_UNREF) {
> > u64 *p = (u64 *)btf_id_ptr;
> >
> > - WRITE_ONCE(p, 0);
> > + WRITE_ONCE(p, NULL);
>
> Uff, this should have been WRITE_ONCE(*p, 0) instead. Mea Culpa.
> Can you make that fix? It's not a big problem since it's just that the
> pointer won't be cleared on map value delete (and there is nothing to
> reclaim for the unref case when map is freed), so you can target
> bpf-next with a Fixes tag.
> So in your patch you will need [PATCH bpf-next] in the subject and the
> fixes tag would be:
> Fixes: 14a324f6a67e ("bpf: Wire up freeing of referenced kptr")

Thanks, already done. if there is anything I miss, please let me know. I am on a learning
journey.

Jules