On Wed, Aug 21, 2024 at 12:10:17PM -0400, Zi Yan wrote: > When handling a numa page fault, task_numa_fault() should be called by a > process that restores the page table of the faulted folio to avoid > duplicated stats counting. Commit b99a342d4f11 ("NUMA balancing: reduce > TLB flush via delaying mapping on hint page fault") restructured > do_numa_page() and did not avoid task_numa_fault() call in the second page > table check after a numa migration failure. Fix it by making all > !pte_same() return immediately. > > This issue can cause task_numa_fault() being called more than necessary > and lead to unexpected numa balancing results (It is hard to tell whether > the issue will cause positive or negative performance impact due to > duplicated numa fault counting). > > Link: https://lkml.kernel.org/r/20240809145906.1513458-2-ziy@xxxxxxxxxx > Fixes: b99a342d4f11 ("NUMA balancing: reduce TLB flush via delaying mapping on hint page fault") > Signed-off-by: Zi Yan <ziy@xxxxxxxxxx> > Reported-by: "Huang, Ying" <ying.huang@xxxxxxxxx> > Closes: https://lore.kernel.org/linux-mm/87zfqfw0yw.fsf@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/ > Acked-by: David Hildenbrand <david@xxxxxxxxxx> > Cc: Baolin Wang <baolin.wang@xxxxxxxxxxxxxxxxx> > Cc: Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> > Cc: Mel Gorman <mgorman@xxxxxxx> > Cc: Yang Shi <shy828301@xxxxxxxxx> > Cc: <stable@xxxxxxxxxxxxxxx> > Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > (cherry picked from commit 40b760cfd44566bca791c80e0720d70d75382b84) > --- > mm/memory.c | 29 ++++++++++++++--------------- > 1 file changed, 14 insertions(+), 15 deletions(-) All now queued up, thanks. greg k-h