static void asmlinkage ap_init(unsigned int cpu)
{
	struct cpu_info *info;

	/* Ensure the local APIC is enabled */
	enable_lapic();

	info = cpu_info();
	info->index = cpu;
	info->cpu = cpus_dev[cpu];

	cpu_add_map_entry(info->index);
	thread_init_cpu_info_non_bsp(info);

	/* Fix up APIC id with reality. */
	info->cpu->path.apic.apic_id = lapicid();

	printk(BIOS_INFO, "AP: slot %d apic_id %x.\n", cpu,
		info->cpu->path.apic.apic_id);

	/* Walk the flight plan */
	ap_do_flight_plan();

	/* Park the AP. */
	park_this_cpu(NULL);
}
static void asmlinkage ap_init(unsigned int cpu)
{
	struct cpu_info *info;

	 
	enable_lapic();

	info = cpu_info();
	info->index = cpu;
	info->cpu = cpus_dev[cpu];

	cpu_add_map_entry(info->index);
	thread_init_cpu_info_non_bsp(info);

	 
	info->cpu->path.apic.apic_id = lapicid();

	printk(BIOS_INFO, "AP: slot %d apic_id %x.\n", cpu,
		info->cpu->path.apic.apic_id);

	 
	ap_do_flight_plan();

	 
	park_this_cpu(NULL);
}