Re: [RFC 2/4] mm: separate memory allocation and actual work in alloc_vmap_area()
From: Matthew Wilcox
Date: Fri Dec 14 2018 - 14:45:09 EST
On Fri, Dec 14, 2018 at 11:40:45AM -0800, Joe Perches wrote:
> On Fri, 2018-12-14 at 10:13 -0800, Matthew Wilcox wrote:
> > On Fri, Dec 14, 2018 at 10:07:18AM -0800, Roman Gushchin wrote:
> > > +/*
> > > + * Allocate a region of KVA of the specified size and alignment, within the
> > > + * vstart and vend.
> > > + */
> > > +static struct vmap_area *alloc_vmap_area(unsigned long size,
> > > + unsigned long align,
> > > + unsigned long vstart,
> > > + unsigned long vend,
> > > + int node, gfp_t gfp_mask)
> > > +{
> > > + struct vmap_area *va;
> > > + int ret;
> > > +
> > > + va = kmalloc_node(sizeof(struct vmap_area),
> > > + gfp_mask & GFP_RECLAIM_MASK, node);
> > > + if (unlikely(!va))
> > > + return ERR_PTR(-ENOMEM);
> > > +
> > > + ret = init_vmap_area(va, size, align, vstart, vend, node, gfp_mask);
> > > + if (ret) {
> > > + kfree(va);
> > > + return ERR_PTR(ret);
> > > + }
> > > +
> > > + return va;
> > > }
> > >
> > > +
> >
> > Another spurious blank line?
>
> I don't think so.
>
> I think it is the better style to separate
> the error return from the normal return.
Umm ... this blank line changed the file from having one blank line
after the function to having two blank lines after the function.