On Sun, Mar 13, 2022 at 2:18 PM Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote: > > On Sun, Mar 13, 2022 at 02:10:12PM -0700, Eric Dumazet wrote: > > @@ -3065,6 +3062,12 @@ static int rmqueue_bulk(struct zone *zone, > > unsigned int order, > > */ > > __mod_zone_page_state(zone, NR_FREE_PAGES, -(i << order)); > > spin_unlock(&zone->lock); > > + list_for_each_entry_safe(page, tmp, list, lru) { > > + if (unlikely(check_pcp_refill(page))) { > > + list_del(&page->lru); > > + allocated--; > > + } > > + } > > ... you'd need to adjust __mod_zone_page_state() too, right? Probably ! This was only to show the basic idea, as I said, not even compiled or tested :)