mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-03 18:20:25 +02:00 
			
		
		
		
	timers, init: Limit the number of per cpu calibration bootup messages
Limit the number of per cpu calibration messages by only printing out results for the first cpu to boot. Also, don't print "CPUx is down" as this is expected, and we don't need 4096 reminders... ;-) Signed-off-by: Mike Travis <travis@sgi.com> Cc: Heiko Carstens <heiko.carstens@de.ibm.com> Cc: Roland Dreier <rdreier@cisco.com> Cc: Randy Dunlap <rdunlap@xenotime.net> Cc: Tejun Heo <tj@kernel.org> Cc: Andi Kleen <andi@firstfloor.org> Cc: Greg Kroah-Hartman <gregkh@suse.de> Cc: Yinghai Lu <yhlu.kernel@gmail.com> Cc: David Rientjes <rientjes@google.com> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Rusty Russell <rusty@rustcorp.com.au> Cc: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com> Cc: Jack Steiner <steiner@sgi.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> LKML-Reference: <20091118002219.889552000@alcatraz.americas.sgi.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
		
							parent
							
								
									ba5ea951d0
								
							
						
					
					
						commit
						feae3203d7
					
				
					 2 changed files with 17 additions and 12 deletions
				
			
		| 
						 | 
				
			
			@ -123,23 +123,26 @@ void __cpuinit calibrate_delay(void)
 | 
			
		|||
{
 | 
			
		||||
	unsigned long ticks, loopbit;
 | 
			
		||||
	int lps_precision = LPS_PREC;
 | 
			
		||||
	static bool printed;
 | 
			
		||||
 | 
			
		||||
	if (preset_lpj) {
 | 
			
		||||
		loops_per_jiffy = preset_lpj;
 | 
			
		||||
		printk(KERN_INFO
 | 
			
		||||
			"Calibrating delay loop (skipped) preset value.. ");
 | 
			
		||||
	} else if ((smp_processor_id() == 0) && lpj_fine) {
 | 
			
		||||
		if (!printed)
 | 
			
		||||
			pr_info("Calibrating delay loop (skipped) "
 | 
			
		||||
				"preset value.. ");
 | 
			
		||||
	} else if ((!printed) && lpj_fine) {
 | 
			
		||||
		loops_per_jiffy = lpj_fine;
 | 
			
		||||
		printk(KERN_INFO
 | 
			
		||||
			"Calibrating delay loop (skipped), "
 | 
			
		||||
		pr_info("Calibrating delay loop (skipped), "
 | 
			
		||||
			"value calculated using timer frequency.. ");
 | 
			
		||||
	} else if ((loops_per_jiffy = calibrate_delay_direct()) != 0) {
 | 
			
		||||
		printk(KERN_INFO
 | 
			
		||||
			"Calibrating delay using timer specific routine.. ");
 | 
			
		||||
		if (!printed)
 | 
			
		||||
			pr_info("Calibrating delay using timer "
 | 
			
		||||
				"specific routine.. ");
 | 
			
		||||
	} else {
 | 
			
		||||
		loops_per_jiffy = (1<<12);
 | 
			
		||||
 | 
			
		||||
		printk(KERN_INFO "Calibrating delay loop... ");
 | 
			
		||||
		if (!printed)
 | 
			
		||||
			pr_info("Calibrating delay loop... ");
 | 
			
		||||
		while ((loops_per_jiffy <<= 1) != 0) {
 | 
			
		||||
			/* wait for "start of" clock tick */
 | 
			
		||||
			ticks = jiffies;
 | 
			
		||||
| 
						 | 
				
			
			@ -170,7 +173,10 @@ void __cpuinit calibrate_delay(void)
 | 
			
		|||
				loops_per_jiffy &= ~loopbit;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
	printk(KERN_CONT "%lu.%02lu BogoMIPS (lpj=%lu)\n",
 | 
			
		||||
	if (!printed)
 | 
			
		||||
		pr_cont("%lu.%02lu BogoMIPS (lpj=%lu)\n",
 | 
			
		||||
			loops_per_jiffy/(500000/HZ),
 | 
			
		||||
			(loops_per_jiffy/(5000/HZ)) % 100, loops_per_jiffy);
 | 
			
		||||
 | 
			
		||||
	printed = true;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -392,10 +392,9 @@ int disable_nonboot_cpus(void)
 | 
			
		|||
		if (cpu == first_cpu)
 | 
			
		||||
			continue;
 | 
			
		||||
		error = _cpu_down(cpu, 1);
 | 
			
		||||
		if (!error) {
 | 
			
		||||
		if (!error)
 | 
			
		||||
			cpumask_set_cpu(cpu, frozen_cpus);
 | 
			
		||||
			printk("CPU%d is down\n", cpu);
 | 
			
		||||
		} else {
 | 
			
		||||
		else {
 | 
			
		||||
			printk(KERN_ERR "Error taking CPU%d down: %d\n",
 | 
			
		||||
				cpu, error);
 | 
			
		||||
			break;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue