From: Jes Sorensen 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); } /* _