Re: [PATCH 1/6] Generic radix trees

From: Kent Overstreet
Date: Sat May 26 2018 - 01:56:19 EST


On Sat, May 26, 2018 at 11:16:42AM +0800, Liu Bo wrote:
> > +/*
> > + * Returns pointer to the specified byte @offset within @radix, allocating it if
> > + * necessary - newly allocated slots are always zeroed out:
> > + */
> > +void *__genradix_ptr_alloc(struct __genradix *radix, size_t offset,
> > + gfp_t gfp_mask)
> > +{
> > + struct genradix_node **n;
>
> Any reason that " struct genradix_node ** " is used here instead of "
> struct genradix_node * "?
>
> Looks like this function only manipulates *n, am I missing something?

It stores to *n, when it has to allocate a node (including the root)