On Mon, Mar 01, 2021 at 03:26:11PM -0500, Zi Yan wrote:
> > +static inline struct folio *next_folio(struct folio *folio)
> > +{
> > + return folio + folio_nr_pages(folio);
>
> Are you planning to make hugetlb use folio too?
Eventually, probably. It's not my focus.
> If yes, this might not work if we have CONFIG_SPARSEMEM &&
> !CONFIG_SPARSEMEM_VMEMMAP
> with a hugetlb folio > MAX_ORDER, because struct page might not be virtually
> contiguous.
> See the experiment I did in [1].
>
> [1]
> https://lore.kernel.org/linux-mm/[email protected]/
I thought we were going to forbid that configuration? ie no pages
larger than MAX_ORDER with (SPARSEMEM && !SPARSEMEM_VMEMMAP)
https://lore.kernel.org/linux-mm/[email protected]/
is somewhere else we were discussing this.