Skip to content

Commit

Permalink
x86: fixup machine_ops reboot_{32|64}.c unification fallout
Browse files Browse the repository at this point in the history
When reboot_32.c and reboot_64.c were unified (commit 4d022e3...),
the machine_ops code was broken, leading to xen pvops kernels failing
to properly halt/poweroff/reboot etc. This fixes that up.

Signed-off-by: Jody Belka <knew-linux@pimb.org>
Cc: Miguel Boton <mboton@gmail.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
  • Loading branch information
Jody Belka authored and Ingo Molnar committed Feb 13, 2008
1 parent 1cdde19 commit 416e2d6
Showing 1 changed file with 36 additions and 10 deletions.
46 changes: 36 additions & 10 deletions arch/x86/kernel/reboot.c
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,7 @@ static inline void kb_wait(void)
}
}

void machine_emergency_restart(void)
static void native_machine_emergency_restart(void)
{
int i;

Expand Down Expand Up @@ -376,7 +376,7 @@ void machine_emergency_restart(void)
}
}

void machine_shutdown(void)
static void native_machine_shutdown(void)
{
/* Stop the cpus and apics */
#ifdef CONFIG_SMP
Expand Down Expand Up @@ -420,7 +420,7 @@ void machine_shutdown(void)
#endif
}

void machine_restart(char *__unused)
static void native_machine_restart(char *__unused)
{
printk("machine restart\n");

Expand All @@ -429,11 +429,11 @@ void machine_restart(char *__unused)
machine_emergency_restart();
}

void machine_halt(void)
static void native_machine_halt(void)
{
}

void machine_power_off(void)
static void native_machine_power_off(void)
{
if (pm_power_off) {
if (!reboot_force)
Expand All @@ -443,9 +443,35 @@ void machine_power_off(void)
}

struct machine_ops machine_ops = {
.power_off = machine_power_off,
.shutdown = machine_shutdown,
.emergency_restart = machine_emergency_restart,
.restart = machine_restart,
.halt = machine_halt
.power_off = native_machine_power_off,
.shutdown = native_machine_shutdown,
.emergency_restart = native_machine_emergency_restart,
.restart = native_machine_restart,
.halt = native_machine_halt
};

void machine_power_off(void)
{
machine_ops.power_off();
}

void machine_shutdown(void)
{
machine_ops.shutdown();
}

void machine_emergency_restart(void)
{
machine_ops.emergency_restart();
}

void machine_restart(char *cmd)
{
machine_ops.restart(cmd);
}

void machine_halt(void)
{
machine_ops.halt();
}

0 comments on commit 416e2d6

Please sign in to comment.