diff --git a/xen/arch/x86/alternative.c b/xen/arch/x86/alternative.c index 26ad2b935f..f735ff883d 100644 --- a/xen/arch/x86/alternative.c +++ b/xen/arch/x86/alternative.c @@ -192,7 +192,7 @@ static void __init apply_alternatives(struct alt_instr *start, struct alt_instr void __init alternative_instructions(void) { - nmi_callback_t saved_nmi_callback; + nmi_callback_t *saved_nmi_callback; arch_init_ideal_nops(); diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c index 17430e5441..c6c92271e0 100644 --- a/xen/arch/x86/traps.c +++ b/xen/arch/x86/traps.c @@ -3611,7 +3611,7 @@ static int dummy_nmi_callback(const struct cpu_user_regs *regs, int cpu) return 0; } -static nmi_callback_t nmi_callback = dummy_nmi_callback; +static nmi_callback_t *nmi_callback = dummy_nmi_callback; void do_nmi(const struct cpu_user_regs *regs) { @@ -3641,9 +3641,9 @@ void do_nmi(const struct cpu_user_regs *regs) } } -nmi_callback_t set_nmi_callback(nmi_callback_t callback) +nmi_callback_t *set_nmi_callback(nmi_callback_t *callback) { - nmi_callback_t old_nmi_callback = nmi_callback; + nmi_callback_t *old_nmi_callback = nmi_callback; nmi_callback = callback; diff --git a/xen/include/asm-x86/nmi.h b/xen/include/asm-x86/nmi.h index 2c92db97a9..fb0f57aa09 100644 --- a/xen/include/asm-x86/nmi.h +++ b/xen/include/asm-x86/nmi.h @@ -12,7 +12,7 @@ extern bool_t opt_watchdog; /* Watchdog force parameter from the command line */ extern bool_t watchdog_force; -typedef int (*nmi_callback_t)(const struct cpu_user_regs *regs, int cpu); +typedef int nmi_callback_t(const struct cpu_user_regs *regs, int cpu); /** * set_nmi_callback @@ -20,7 +20,7 @@ typedef int (*nmi_callback_t)(const struct cpu_user_regs *regs, int cpu); * Set a handler for an NMI. Only one handler may be * set. Return the old nmi callback handler. */ -nmi_callback_t set_nmi_callback(nmi_callback_t callback); +nmi_callback_t *set_nmi_callback(nmi_callback_t *callback); /** * unset_nmi_callback