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>