Remove the pageset notifier since it only marks that a processor
exists on a specific node. Move that code into the vmstat notifier.
Signed-off-by: Christoph Lameter <[email protected]>
---
mm/page_alloc.c | 27 ---------------------------
mm/vmstat.c | 1 +
2 files changed, 1 insertion(+), 27 deletions(-)
Index: linux-2.6/mm/vmstat.c
===================================================================
--- linux-2.6.orig/mm/vmstat.c 2009-12-18 13:15:32.000000000 -0600
+++ linux-2.6/mm/vmstat.c 2009-12-18 13:37:41.000000000 -0600
@@ -908,6 +908,7 @@ static int __cpuinit vmstat_cpuup_callba
case CPU_ONLINE:
case CPU_ONLINE_FROZEN:
start_cpu_timer(cpu);
+ node_set_state(cpu_to_node(cpu), N_CPU);
break;
case CPU_DOWN_PREPARE:
case CPU_DOWN_PREPARE_FROZEN:
Index: linux-2.6/mm/page_alloc.c
===================================================================
--- linux-2.6.orig/mm/page_alloc.c 2009-12-18 13:34:02.000000000 -0600
+++ linux-2.6/mm/page_alloc.c 2009-12-18 13:39:19.000000000 -0600
@@ -3122,27 +3122,6 @@ static void setup_pagelist_highmark(stru
pcp->batch = PAGE_SHIFT * 8;
}
-
-static int __cpuinit pageset_cpuup_callback(struct notifier_block *nfb,
- unsigned long action,
- void *hcpu)
-{
- int cpu = (long)hcpu;
-
- switch (action) {
- case CPU_UP_PREPARE:
- case CPU_UP_PREPARE_FROZEN:
- node_set_state(cpu_to_node(cpu), N_CPU);
- break;
- default:
- break;
- }
- return ret;
-}
-
-static struct notifier_block __cpuinitdata pageset_notifier =
- { &pageset_cpuup_callback, NULL, 0 };
-
/*
* Allocate per cpu pagesets and initialize them.
* Before this call only boot pagesets were available.
@@ -3168,12 +3147,6 @@ void __init setup_per_cpu_pageset(void)
percpu_pagelist_fraction));
}
}
- /*
- * The boot cpu is always the first active.
- * The boot node has a processor.
- */
- node_set_state(cpu_to_node(smp_processor_id()), N_CPU);
- register_cpu_notifier(&pageset_notifier);
}
static noinline __init_refok
--