On Fri, 16 Feb 2024 12:04:28 -0500 Zi Yan <zi.yan@xxxxxxxx> wrote: > Baolin's patch Baolin writes many patches and patches have names, please use them! > on nr_migratepages was based on this one, a better fixup > for it might be below. Since before my patchset, compaction only deals with > order-0 pages. I don't understand what this means. The patchset you sent applies OK to mm-unstable so what else is there to do? > diff --git a/mm/compaction.c b/mm/compaction.c > index 01ec85cfd623f..e60135e2019d6 100644 > --- a/mm/compaction.c > +++ b/mm/compaction.c > @@ -1798,7 +1798,7 @@ static struct folio *compaction_alloc(struct folio *src, unsigned long data) > dst = list_entry(cc->freepages.next, struct folio, lru); > list_del(&dst->lru); > cc->nr_freepages--; > - cc->nr_migratepages -= 1 << order; > + cc->nr_migratepages--; > > return dst; > } > @@ -1814,7 +1814,7 @@ static void compaction_free(struct folio *dst, unsigned long data) > > list_add(&dst->lru, &cc->freepages); > cc->nr_freepages++; > - cc->nr_migratepages += 1 << order; > + cc->nr_migratepages++; > }