Messages in this thread | ![/](/images/icornerl.gif) | | Date | Wed, 25 Jan 2023 11:24:16 +0100 | Subject | Re: [PATCH mm-unstable v2 1/6] mm: Add folio_estimated_mapcount() | From | David Hildenbrand <> |
| |
On 25.01.23 11:20, David Hildenbrand wrote: > On 24.01.23 02:22, Vishal Moola (Oracle) wrote: >> folio_estimated_mapcount() takes in a folio and calls page_mapcount() on >> the first page of that folio. >> >> This is necessary for folio conversions where we only care about either the >> entire_mapcount of a large folio, or the mapcount of a not large folio. >> >> This is in contrast to folio_mapcount() which calculates the total >> number of the times a folio and its subpages are mapped. >> >> Signed-off-by: Vishal Moola (Oracle) <vishal.moola@gmail.com> >> --- >> include/linux/mm.h | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git a/include/linux/mm.h b/include/linux/mm.h >> index c9db257f09b3..543c360f7ecc 100644 >> --- a/include/linux/mm.h >> +++ b/include/linux/mm.h >> @@ -875,6 +875,11 @@ static inline int page_mapcount(struct page *page) >> return mapcount; >> } >> >> +static inline int folio_estimated_mapcount(struct folio *folio) >> +{ >> + return page_mapcount(folio_page(folio, 0)); >> +} >> + >> int folio_total_mapcount(struct folio *folio); >> >> /** > > I'm sorry, but "estimated" as absolutely unclear semantics. You could > have a THP mapped into 9999 processes using THP and the estimation would > be "0".
... or would it be 9999 ? What about a PMD-mapped THP? What about a partially unmapped THP?
What are we estimating?
-- Thanks,
David / dhildenb
| ![\](/images/icornerr.gif) |