unlock_ipi_call_lock(); 
static void __init start_secondary(void *unused){	/*	 * Dont put anything before smp_callin(), SMP	 * booting is too fragile that we want to limit the	 * things done here to the most necessary things.	 */	cpu_init();	smp_callin();	while (!cpu_isset(smp_processor_id(), smp_commenced_mask))		rep_nop();	setup_secondary_APIC_clock();	if (nmi_watchdog == NMI_IO_APIC) {		disable_8259A_irq(0);		enable_NMI_through_LVT0(NULL);		enable_8259A_irq(0);	}	enable_APIC_timer();	/*	 * low-memory mappings have been cleared, flush them from	 * the local TLBs too.	 */	local_flush_tlb();	cpu_set(smp_processor_id(), cpu_online_map);	/* We can take interrupts now: we're officially "up". */	local_irq_enable();	wmb();	cpu_idle();}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/6fe940d6c300886de4ff1454d8ffd363172af433/smpboot.c/clean/arch/i386/kernel/smpboot.c