Re: [PATCH V2] mm/page_alloc: Add alloc_contig_pages()

From: Michal Hocko
Date: Wed Oct 16 2019 - 08:41:53 EST


On Wed 16-10-19 14:29:05, David Hildenbrand wrote:
> On 16.10.19 13:51, Michal Hocko wrote:
> > On Wed 16-10-19 16:43:57, Anshuman Khandual wrote:
> > >
> > >
> > > On 10/16/2019 04:39 PM, David Hildenbrand wrote:
> > [...]
> > > > Just to make sure, you ignored my comment regarding alignment
> > > > although I explicitly mentioned it a second time? Thanks.
> > >
> > > I had asked Michal explicitly what to be included for the respin. Anyways
> > > seems like the previous thread is active again. I am happy to incorporate
> > > anything new getting agreed on there.
> >
> > Your patch is using the same alignment as the original code would do. If
> > an explicit alignement is needed then this can be added on top, right?
> >
>
> Again, the "issue" I see here is that we could now pass in numbers that are
> not a power of two. For gigantic pages it was clear that we always have a
> number of two. The alignment does not make any sense otherwise.
>
> What I'm asking for is
>
> a) Document "The resulting PFN is aligned to nr_pages" and "nr_pages should
> be a power of two".

OK, this makes sense.

> b) Eventually adding something like
>
> if (WARN_ON_ONCE(!is_power_of_2(nr_pages)))
> return NULL;

I am not sure this is really needed.

--
Michal Hocko
SUSE Labs