mirror of
https://github.com/torvalds/linux.git
synced 2024-11-10 14:11:52 +00:00
mm, page_alloc: remove setup_pageset()
We initialize boot-time pagesets with setup_pageset(), which sets high and batch values that effectively disable pcplists. We can remove this wrapper if we just set these values for all pagesets in pageset_init(). Non-boot pagesets then subsequently update them to the proper values. No functional change. Link: https://lkml.kernel.org/r/20201111092812.11329-4-vbabka@suse.cz Signed-off-by: Vlastimil Babka <vbabka@suse.cz> Reviewed-by: David Hildenbrand <david@redhat.com> Reviewed-by: Oscar Salvador <osalvador@suse.de> Acked-by: Michal Hocko <mhocko@suse.com> Acked-by: Pankaj Gupta <pankaj.gupta@cloud.ionos.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
0a8b4f1d5b
commit
69a8396a26
@ -5919,7 +5919,7 @@ static void build_zonelists(pg_data_t *pgdat)
|
||||
* not check if the processor is online before following the pageset pointer.
|
||||
* Other parts of the kernel may not check if the zone is available.
|
||||
*/
|
||||
static void setup_pageset(struct per_cpu_pageset *p);
|
||||
static void pageset_init(struct per_cpu_pageset *p);
|
||||
static DEFINE_PER_CPU(struct per_cpu_pageset, boot_pageset);
|
||||
static DEFINE_PER_CPU(struct per_cpu_nodestat, boot_nodestats);
|
||||
|
||||
@ -5987,7 +5987,7 @@ build_all_zonelists_init(void)
|
||||
* (a chicken-egg dilemma).
|
||||
*/
|
||||
for_each_possible_cpu(cpu)
|
||||
setup_pageset(&per_cpu(boot_pageset, cpu));
|
||||
pageset_init(&per_cpu(boot_pageset, cpu));
|
||||
|
||||
mminit_verify_zonelist();
|
||||
cpuset_init_current_mems_allowed();
|
||||
@ -6306,12 +6306,15 @@ static void pageset_init(struct per_cpu_pageset *p)
|
||||
pcp = &p->pcp;
|
||||
for (migratetype = 0; migratetype < MIGRATE_PCPTYPES; migratetype++)
|
||||
INIT_LIST_HEAD(&pcp->lists[migratetype]);
|
||||
}
|
||||
|
||||
static void setup_pageset(struct per_cpu_pageset *p)
|
||||
{
|
||||
pageset_init(p);
|
||||
pageset_update(&p->pcp, 0, 1);
|
||||
/*
|
||||
* Set batch and high values safe for a boot pageset. A true percpu
|
||||
* pageset's initialization will update them subsequently. Here we don't
|
||||
* need to be as careful as pageset_update() as nobody can access the
|
||||
* pageset yet.
|
||||
*/
|
||||
pcp->high = 0;
|
||||
pcp->batch = 1;
|
||||
}
|
||||
|
||||
/*
|
||||
|
Loading…
Reference in New Issue
Block a user