Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit eb44d0a2 authored by Glauber de Oliveira Costa's avatar Glauber de Oliveira Costa Committed by Ingo Molnar
Browse files

x86: include smpboot_hooks.h in smpboot_64.c



We do it and also fix conflicts, which makes x86_64 automatically
closer to i386

Signed-off-by: default avatarGlauber Costa <gcosta@redhat.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 8d77010f
Loading
Loading
Loading
Loading
+3 −26
Original line number Diff line number Diff line
@@ -61,6 +61,7 @@
#include <asm/numa.h>

#include <mach_wakecpu.h>
#include <smpboot_hooks.h>

/* Set when the idlers are all forked */
int smp_threads_ready;
@@ -517,14 +518,7 @@ do_rest:

	Dprintk("Setting warm reset code and vector.\n");

	CMOS_WRITE(0xa, 0xf);
	local_flush_tlb();
	Dprintk("1.\n");
	*((volatile unsigned short *) phys_to_virt(0x469)) = start_rip >> 4;
	Dprintk("2.\n");
	*((volatile unsigned short *) phys_to_virt(0x467)) = start_rip & 0xf;
	Dprintk("3.\n");

	smpboot_setup_warm_reset_vector(start_rip);
	/*
	 * Be paranoid about clearing APIC errors.
	 */
@@ -593,23 +587,6 @@ do_rest:
cycles_t cacheflush_time;
unsigned long cache_decay_ticks;

/*
 * Cleanup possible dangling ends...
 */
static __cpuinit void smp_cleanup_boot(void)
{
	/*
	 * Paranoid:  Set warm reset code and vector here back
	 * to default values.
	 */
	CMOS_WRITE(0, 0xf);

	/*
	 * Reset trampoline flag
	 */
	*((volatile int *) phys_to_virt(0x467)) = 0;
}

/*
 * Fall back to non SMP mode after errors.
 *
@@ -827,7 +804,7 @@ extern void smp_checks(void);
 */
void __init native_smp_cpus_done(unsigned int max_cpus)
{
	smp_cleanup_boot();
	smpboot_restore_warm_reset_vector();

	Dprintk("Boot done.\n");