On 2024/12/5 14:33, Barry Song wrote:
On Thu, Dec 5, 2024 at 7:06 PM Baolin Wang
<baolin.wang@xxxxxxxxxxxxxxxxx> wrote:
On 2024/12/5 13:00, Barry Song wrote:
On Thu, Dec 5, 2024 at 4:54 PM Baolin Wang
<baolin.wang@xxxxxxxxxxxxxxxxx> wrote:
Commit 5d65c8d758f2 ("mm: count the number of anonymous THPs per size") adds
a new anonymous counter per THP size, however, when folio_mapping() is not NULL
during folio migration, it means this is not an anonymous folio, so remove the
redundant anonymous statistics in this case.
why? Are you sure anon folios won't call __folio_migrate_mapping()?
folio->mapping is PAGE_MAPPING_ANON for anon folios.
static __always_inline bool folio_test_anon(const struct folio *folio)
{
return ((unsigned long)folio->mapping & PAGE_MAPPING_ANON) != 0;
}
Ah, sorry for noise. This just caught my eyes when reading the code, and
I did not think about it deeply before sending a quick patch. Thanks to
Barry and Ying for the reminder.
No worries. I recall encountering a negative count during the development of
the original patch and eventually realizing it was due to forgetting
to increment
the migrated anon folios. Your patch seems to reintroduce the bug I encountered
back then :-)
Right. I was blind and need a cup of coffee:)