From: Jes Sorensen <jes@trained-monkey.org>

I'd like to propose the following for 2.6.1-mm/2.6.2. On systems with a
large number of CPUs the number of printk's flowing by for each CPU
booting starts becoming a real console hog.

The following patch eliminates a couple of them (already sent a patch to
David for the ia64 specific ones) as well as changes the 
"Building zonelist : X" in "Built Y zonelists". IMHO it doesn't make any
sense to print for each zonelist since it's run in a for loop running
from 0 to Y-1 anyway.

The patch nukes a few new printk's that were introduced with the
scheduler changes to the NUMA code in -mm3, if these are still needed
then I won't fight for that part of the patch.



---

 init/main.c     |    6 +++---
 kernel/cpu.c    |    1 -
 mm/page_alloc.c |    2 +-
 3 files changed, 4 insertions(+), 5 deletions(-)

diff -puN init/main.c~nuke-noisy-printks init/main.c
--- 25/init/main.c~nuke-noisy-printks	2004-01-23 20:41:39.000000000 -0800
+++ 25-akpm/init/main.c	2004-01-23 20:42:38.000000000 -0800
@@ -339,21 +339,21 @@ static void __init setup_per_cpu_areas(v
 /* Called by boot processor to activate the rest. */
 static void __init smp_init(void)
 {
-	unsigned int i, j=0;
+	unsigned int i;
+	unsigned j = 0;
 
 	/* FIXME: This should be done in userspace --RR */
 	for (i = 0; i < NR_CPUS; i++) {
 		if (num_online_cpus() >= max_cpus)
 			break;
 		if (cpu_possible(i) && !cpu_online(i)) {
-			printk("Bringing up %i\n", i);
 			cpu_up(i);
 			j++;
 		}
 	}
 
 	/* Any cleanup work */
-	printk("CPUS done %u\n", j);
+	printk("Brought up %u CPUs\n", j);
 	smp_cpus_done(max_cpus);
 #if 0
 	/* Get other processors into their bootup holding patterns. */
diff -puN kernel/cpu.c~nuke-noisy-printks kernel/cpu.c
--- 25/kernel/cpu.c~nuke-noisy-printks	2004-01-23 20:41:39.000000000 -0800
+++ 25-akpm/kernel/cpu.c	2004-01-23 20:41:39.000000000 -0800
@@ -55,7 +55,6 @@ int __devinit cpu_up(unsigned int cpu)
 		BUG();
 
 	/* Now call notifier in preparation. */
-	printk("CPU %u IS NOW UP!\n", cpu);
 	notifier_call_chain(&cpu_chain, CPU_ONLINE, hcpu);
 
 out_notify:
diff -puN mm/page_alloc.c~nuke-noisy-printks mm/page_alloc.c
--- 25/mm/page_alloc.c~nuke-noisy-printks	2004-01-23 20:41:39.000000000 -0800
+++ 25-akpm/mm/page_alloc.c	2004-01-23 20:41:39.000000000 -0800
@@ -1080,7 +1080,6 @@ static void __init build_zonelists(pg_da
 	int i, j, k, node, local_node;
 
 	local_node = pgdat->node_id;
-	printk("Building zonelist for node : %d\n", local_node);
 	for (i = 0; i < MAX_NR_ZONES; i++) {
 		struct zonelist *zonelist;
 
@@ -1118,6 +1117,7 @@ void __init build_all_zonelists(void)
 
 	for(i = 0 ; i < numnodes ; i++)
 		build_zonelists(NODE_DATA(i));
+	printk("Built %i zonelists\n", numnodes);
 }
 
 /*

_