Re: [PATCH v2] mm/codetag: swap tags when migrate pages

From: Yu Zhao
Date: Mon Dec 02 2024 - 17:20:15 EST


On Thu, Nov 28, 2024 at 7:52 PM David Wang <00107082@xxxxxxx> wrote:
>
> Current solution to adjust codetag references during page migration is
> done in 3 steps:
> 1. sets the codetag reference of the old page as empty (not pointing
> to any codetag);
> 2. subtracts counters of the new page to compensate for its own allocation;
> 3. sets codetag reference of the new page to point to the codetag of
> the old page.
> This does not work if CONFIG_MEM_ALLOC_PROFILING_DEBUG=n because
> set_codetag_empty() becomes NOOP. Instead, let's simply swap codetag
> references so that the new page is referencing the old codetag and the
> old page is referencing the new codetag. This way accounting stays
> valid and the logic makes more sense.
>
> Fixes: e0a955bf7f61 ("mm/codetag: add pgalloc_tag_copy()")
> Signed-off-by: David Wang <00107082@xxxxxxx>
> Closes: https://lore.kernel.org/lkml/20241124074318.399027-1-00107082@xxxxxxx/
> Acked-by: Suren Baghdasaryan <surenb@xxxxxxxxxx>
> Suggested-by: Suren Baghdasaryan <surenb@xxxxxxxxxx>

Acked-by: Yu Zhao <yuzhao@xxxxxxxxxx>