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