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 | 2 -- kernel/cpu.c | 1 - kernel/sched.c | 4 ---- mm/page_alloc.c | 2 +- 4 files changed, 1 insertion(+), 8 deletions(-) diff -puN init/main.c~nuke-noisy-printks init/main.c --- 25/init/main.c~nuke-noisy-printks 2004-01-14 11:22:20.000000000 -0800 +++ 25-akpm/init/main.c 2004-01-14 11:22:20.000000000 -0800 @@ -346,13 +346,11 @@ static void __init smp_init(void) if (num_online_cpus() >= max_cpus) break; if (cpu_possible(i) && !cpu_online(i)) { - printk("Bringing up %i\n", i); cpu_up(i); } } /* Any cleanup work */ - printk("CPUS done %u\n", max_cpus); 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-14 11:22:20.000000000 -0800 +++ 25-akpm/kernel/cpu.c 2004-01-14 11:22:20.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 kernel/sched.c~nuke-noisy-printks kernel/sched.c --- 25/kernel/sched.c~nuke-noisy-printks 2004-01-14 11:22:20.000000000 -0800 +++ 25-akpm/kernel/sched.c 2004-01-14 11:22:20.000000000 -0800 @@ -3242,8 +3242,6 @@ static void __init arch_init_sched_domai if (cpus_empty(nodemask)) continue; - printk(KERN_INFO "NODE%d\n", i); - node->cpumask = nodemask; for_each_cpu_mask(j, node->cpumask) { @@ -3252,8 +3250,6 @@ static void __init arch_init_sched_domai cpus_clear(cpu->cpumask); cpu_set(j, cpu->cpumask); - printk(KERN_INFO "CPU%d\n", j); - if (!first_cpu) first_cpu = cpu; if (last_cpu) diff -puN mm/page_alloc.c~nuke-noisy-printks mm/page_alloc.c --- 25/mm/page_alloc.c~nuke-noisy-printks 2004-01-14 11:22:20.000000000 -0800 +++ 25-akpm/mm/page_alloc.c 2004-01-14 11:22:20.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); } /* _