On Wed, May 27, 2020 at 10:37 AM Daniel Jordan <daniel.m.jordan@xxxxxxxxxx> wrote: > > Deferred page init used to report the number of pages initialized: > > node 0 initialised, 32439114 pages in 97ms > > Tracking this makes the code more complicated when using multiple > threads. Given that the statistic probably has limited value, > especially since a zone grows on demand so that the page count can vary, > just remove it. > > The boot message now looks like > > node 0 deferred pages initialised in 97ms > > Signed-off-by: Daniel Jordan <daniel.m.jordan@xxxxxxxxxx> > Suggested-by: Alexander Duyck <alexander.h.duyck@xxxxxxxxxxxxxxx> This looks good to me. Reviewed-by: Alexander Duyck <alexander.h.duyck@xxxxxxxxxxxxxxx> > --- > mm/page_alloc.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/mm/page_alloc.c b/mm/page_alloc.c > index d0c0d9364aa6d..d64f3027fdfa6 100644 > --- a/mm/page_alloc.c > +++ b/mm/page_alloc.c > @@ -1819,7 +1819,7 @@ static int __init deferred_init_memmap(void *data) > { > pg_data_t *pgdat = data; > const struct cpumask *cpumask = cpumask_of_node(pgdat->node_id); > - unsigned long spfn = 0, epfn = 0, nr_pages = 0; > + unsigned long spfn = 0, epfn = 0; > unsigned long first_init_pfn, flags; > unsigned long start = jiffies; > struct zone *zone; > @@ -1868,15 +1868,15 @@ static int __init deferred_init_memmap(void *data) > * allocator. > */ > while (spfn < epfn) { > - nr_pages += deferred_init_maxorder(&i, zone, &spfn, &epfn); > + deferred_init_maxorder(&i, zone, &spfn, &epfn); > cond_resched(); > } > zone_empty: > /* Sanity check that the next zone really is unpopulated */ > WARN_ON(++zid < MAX_NR_ZONES && populated_zone(++zone)); > > - pr_info("node %d initialised, %lu pages in %ums\n", > - pgdat->node_id, nr_pages, jiffies_to_msecs(jiffies - start)); > + pr_info("node %d deferred pages initialised in %ums\n", > + pgdat->node_id, jiffies_to_msecs(jiffies - start)); > > pgdat_init_report_one_done(); > return 0; > -- > 2.26.2 > >