On Thu, 8 Dec 2022 12:35:02 -0800 "Vishal Moola (Oracle)" <vishal.moola@xxxxxxxxx> wrote: > This change replaces 2 calls to compound_head() with one. I hoped this to be more detailed (e.g., 2 calls from mark_page_accessed() and put_page() with 1 call from page_folio()), but it wouldn't be a blocker as we had the discussion in v1 of this patch. > This is in preparation for the conversion of deactivate_page() to > folio_deactivate(). > > Signed-off-by: Vishal Moola (Oracle) <vishal.moola@xxxxxxxxx> Reviewed-by: SeongJae Park <sj@xxxxxxxxxx> Please note that this conflicts with one of my patches that under review[1] at the moment. I will rebase and send the patch again if Andrew merge this first. [1] https://lore.kernel.org/damon/20221205230830.144349-3-sj@xxxxxxxxxx/ Thanks, SJ > --- > mm/damon/paddr.c | 11 +++++++---- > 1 file changed, 7 insertions(+), 4 deletions(-) > > diff --git a/mm/damon/paddr.c b/mm/damon/paddr.c > index e1a4315c4be6..73548bc82297 100644 > --- a/mm/damon/paddr.c > +++ b/mm/damon/paddr.c > @@ -238,15 +238,18 @@ static inline unsigned long damon_pa_mark_accessed_or_deactivate( > > for (addr = r->ar.start; addr < r->ar.end; addr += PAGE_SIZE) { > struct page *page = damon_get_page(PHYS_PFN(addr)); > + struct folio *folio; > > if (!page) > continue; > + folio = page_folio(page); > + > if (mark_accessed) > - mark_page_accessed(page); > + folio_mark_accessed(folio); > else > - deactivate_page(page); > - put_page(page); > - applied++; > + deactivate_page(&folio->page); > + folio_put(folio); > + applied += folio_nr_pages(folio); > } > return applied * PAGE_SIZE; > } > -- > 2.38.1