x86: allow machine_crash_shutdown to be replaced
This patch a llows machine_crash_shutdown to be replaced, just like any of the other functions in machine_ops Signed-off-by: Glauber Costa <gcosta@redhat.com> Signed-off-by: Avi Kivity <avi@qumranet.com>
This commit is contained in:
committed by
Avi Kivity
parent
096d14a3b5
commit
ed23dc6f5b
@@ -25,6 +25,7 @@
|
|||||||
#include <asm/hpet.h>
|
#include <asm/hpet.h>
|
||||||
#include <linux/kdebug.h>
|
#include <linux/kdebug.h>
|
||||||
#include <asm/smp.h>
|
#include <asm/smp.h>
|
||||||
|
#include <asm/reboot.h>
|
||||||
|
|
||||||
#include <mach_ipi.h>
|
#include <mach_ipi.h>
|
||||||
|
|
||||||
@@ -117,7 +118,7 @@ static void nmi_shootdown_cpus(void)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void machine_crash_shutdown(struct pt_regs *regs)
|
void native_machine_crash_shutdown(struct pt_regs *regs)
|
||||||
{
|
{
|
||||||
/* This function is only called after the system
|
/* This function is only called after the system
|
||||||
* has panicked or is otherwise in a critical state.
|
* has panicked or is otherwise in a critical state.
|
||||||
|
@@ -470,7 +470,10 @@ struct machine_ops machine_ops = {
|
|||||||
.shutdown = native_machine_shutdown,
|
.shutdown = native_machine_shutdown,
|
||||||
.emergency_restart = native_machine_emergency_restart,
|
.emergency_restart = native_machine_emergency_restart,
|
||||||
.restart = native_machine_restart,
|
.restart = native_machine_restart,
|
||||||
.halt = native_machine_halt
|
.halt = native_machine_halt,
|
||||||
|
#ifdef CONFIG_KEXEC
|
||||||
|
.crash_shutdown = native_machine_crash_shutdown,
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
void machine_power_off(void)
|
void machine_power_off(void)
|
||||||
@@ -498,3 +501,9 @@ void machine_halt(void)
|
|||||||
machine_ops.halt();
|
machine_ops.halt();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef CONFIG_KEXEC
|
||||||
|
void machine_crash_shutdown(struct pt_regs *regs)
|
||||||
|
{
|
||||||
|
machine_ops.crash_shutdown(regs);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
@@ -15,5 +15,6 @@ struct machine_ops {
|
|||||||
extern struct machine_ops machine_ops;
|
extern struct machine_ops machine_ops;
|
||||||
|
|
||||||
void machine_real_restart(unsigned char *code, int length);
|
void machine_real_restart(unsigned char *code, int length);
|
||||||
|
void native_machine_crash_shutdown(struct pt_regs *regs);
|
||||||
|
|
||||||
#endif /* _ASM_REBOOT_H */
|
#endif /* _ASM_REBOOT_H */
|
||||||
|
Reference in New Issue
Block a user