mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	smpboot, idle: Optimize calls to smp_processor_id() in idle_threads_init()
While trying to initialize idle threads for all cpus, idle_threads_init() calls smp_processor_id() in a loop, which is unnecessary. The intent is to initialize idle threads for all non-boot cpus. So just use a variable to note the boot cpu and use it in the loop. Signed-off-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> Cc: suresh.b.siddha@intel.com Cc: venki@google.com Cc: nikunj@linux.vnet.ibm.com Link: http://lkml.kernel.org/r/20120524151055.2549.64309.stgit@srivatsabhat.in.ibm.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
		
							parent
							
								
									f9369910a6
								
							
						
					
					
						commit
						ee74d13229
					
				
					 1 changed files with 4 additions and 2 deletions
				
			
		| 
						 | 
					@ -52,10 +52,12 @@ static inline void idle_init(unsigned int cpu)
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
void __init idle_threads_init(void)
 | 
					void __init idle_threads_init(void)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	unsigned int cpu;
 | 
						unsigned int cpu, boot_cpu;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						boot_cpu = smp_processor_id();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for_each_possible_cpu(cpu) {
 | 
						for_each_possible_cpu(cpu) {
 | 
				
			||||||
		if (cpu != smp_processor_id())
 | 
							if (cpu != boot_cpu)
 | 
				
			||||||
			idle_init(cpu);
 | 
								idle_init(cpu);
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue