Re: [LSF/MM TOPIC] CMA and larger page sizes

Michal Hocko
2018-04-18T08:17:28Z

On Tue 17-04-18 08:01:53, Laura Abbott wrote:
> On 04/17/2018 04:36 AM, Michal Hocko wrote:
> > On Fri 26-01-18 02:08:14, Laura Abbott wrote:
> > > CMA as it's currently designed requires alignment to the pageblock size c.f.
> > >
> > > /*
> > > * Sanitise input arguments.
> > > * Pages both ends in CMA area could be merged into adjacent unmovable
> > > * migratetype page by page allocator's buddy algorithm. In the case,
> > > * you couldn't get a contiguous memory, which is not what we want.
> > > */
> > > alignment = max(alignment, (phys_addr_t)PAGE_SIZE <<
> > > max_t(unsigned long, MAX_ORDER - 1, pageblock_order));
> > >
> > >
> > > On arm64 with 64K page size and transparent huge page, this gives an alignment
> > > of 512MB. This is quite restrictive and can eat up significant portions of
> > > memory on smaller memory targets. Adjusting the configuration options really
> > > isn't ideal for distributions that aim to have a single image which runs on
> > > all targets.
> > >
> > > Approaches I've thought about:
> > > - Making CMA alignment less restrictive (and dealing with the fallout from
> > > the comment above)
> > > - Command line option to force a reasonable alignment
> >
> > Laura, are you still interested discussing this or other CMA related
> > topic?
> >
>
> In light of Joonsoo's patches, I don't think we need a lot of time
> but I'd still like some chance to discuss. I think there was some
> other interest in CMA topics so it can be combined with those if
> they are happening as well.

OK, so I've put a placeholder for a CMA discussion. You have won the
lead on that session ;) We can change that later of course.
--
Michal Hocko
SUSE Labs