Re: [PATCH] mm: use mem_map_offset instead of mem_map_next

From: Mike Kravetz
Date: Tue Sep 06 2022 - 13:17:43 EST


On 09/04/22 22:15, Matthew Wilcox wrote:
> On Sun, Sep 04, 2022 at 02:02:41PM +0000, Cheng Li wrote:
> > To handle discontiguity case, mem_map_next() has a parameter named
> > `offset`. As a function caller, one would be confused why "get
> > next entry" needs a parameter named "offset". The other drawback of
> > mem_map_next() is that the callers must take care of the map between
> > parameter "iter" and "offset", otherwise we may get an hole or
> > duplication during iteration. So we use mem_map_offset instead of
> > mem_map_next.
>
> I think we should go further and get rid of mem_map_offset().
> nth_page() is now more efficient than mem_map_offset().

Agree.

However, IIUC nth_page() will 'almost' always be more efficient. The
only exception is unlikely configuration where CONFIG_SPARSEMEM &&
!CONFIG_SPARSEMEM_VMEMMAP. Correct?

Not arguing against replacement. Just wanting to refresh my memory.
--
Mike Kravetz