Re: [PATCH] mm/migrate: Putback split folios when numa hint migration fails

Zi Yan
2024-07-08T21:58:20Z

[-- Attachment #1: Type: text/plain, Size: 1474 bytes --]

On Mon Jul 8, 2024 at 5:55 PM EDT, Peter Xu wrote:
> This issue is not from any report yet, but by code observation only.
>
> This is yet another fix besides Hugh's patch [1] but on relevant code path,
> where eager split of folio can happen if the folio is already on deferred
> list during a folio migration.
>
> Here the issue is NUMA path (migrate_misplaced_folio()) may start to
> encounter such folio split now even with MR_NUMA_MISPLACED hint applied.
> Then when migrate_pages() didn't migrate all the folios, it's possible the
> split small folios be put onto the list instead of the original folio.
> Then putting back only the head page won't be enough.
>
> Fix it by putting back all the folios on the list.
>
> [1] https://lore.kernel.org/all/46c948b4-4dd8-6e03-4c7b-ce4e81cfa536@google.com/
>
> Cc: Zi Yan <ziy@nvidia.com>
> Cc: Yang Shi <shy828301@gmail.com>
> Cc: Hugh Dickins <hughd@google.com>
> Cc: Baolin Wang <baolin.wang@linux.alibaba.com>
> Cc: Huang Ying <ying.huang@intel.com>
> Cc: David Hildenbrand <david@redhat.com>
> Fixes: 7262f208ca68 ("mm/migrate: split source folio if it is on deferred split list")
> Signed-off-by: Peter Xu <peterx@redhat.com>
> ---
>
> Don't need to copy stable if this can still hit 6.10.. Only smoke tested.
> ---
> mm/migrate.c | 10 ++--------
> 1 file changed, 2 insertions(+), 8 deletions(-)

LGTM. Thanks. Reviewed-by: Zi Yan <ziy@nvidia.com>

--
Best Regards,
Yan, Zi

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 854 bytes --]