提交 f7e981f2 编写于 作者: B Bandan Das 提交者: Paolo Bonzini

nmi: remove x86 specific nmi handling

nmi_monitor_handle is wired to call the x86 nmi
handler. So, we can directly use it at call sites.
Signed-off-by: NBandan Das <bsd@redhat.com>
Message-Id: <1463761717-26558-3-git-send-email-bsd@redhat.com>
Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
上级 1255166b
...@@ -20,16 +20,11 @@ ...@@ -20,16 +20,11 @@
*/ */
#include "qemu/osdep.h" #include "qemu/osdep.h"
#include "qom/cpu.h"
#include "hw/nmi.h" #include "hw/nmi.h"
#include "qapi/error.h" #include "qapi/error.h"
#include "qapi/qmp/qerror.h" #include "qapi/qmp/qerror.h"
#include "monitor/monitor.h" #include "monitor/monitor.h"
#if defined(TARGET_I386)
#include "cpu.h"
#endif
struct do_nmi_s { struct do_nmi_s {
int cpu_index; int cpu_index;
Error *err; Error *err;
...@@ -78,25 +73,6 @@ void nmi_monitor_handle(int cpu_index, Error **errp) ...@@ -78,25 +73,6 @@ void nmi_monitor_handle(int cpu_index, Error **errp)
} }
} }
void inject_nmi(void)
{
#if defined(TARGET_I386)
CPUState *cs;
CPU_FOREACH(cs) {
X86CPU *cpu = X86_CPU(cs);
if (!cpu->apic_state) {
cpu_interrupt(cs, CPU_INTERRUPT_NMI);
} else {
apic_deliver_nmi(cpu->apic_state);
}
}
#else
nmi_monitor_handle(0, NULL);
#endif
}
static const TypeInfo nmi_info = { static const TypeInfo nmi_info = {
.name = TYPE_NMI, .name = TYPE_NMI,
.parent = TYPE_INTERFACE, .parent = TYPE_INTERFACE,
......
...@@ -143,7 +143,7 @@ void watchdog_perform_action(void) ...@@ -143,7 +143,7 @@ void watchdog_perform_action(void)
case WDT_NMI: case WDT_NMI:
qapi_event_send_watchdog(WATCHDOG_EXPIRATION_ACTION_INJECT_NMI, qapi_event_send_watchdog(WATCHDOG_EXPIRATION_ACTION_INJECT_NMI,
&error_abort); &error_abort);
inject_nmi(); nmi_monitor_handle(0, NULL);
break; break;
} }
} }
...@@ -45,6 +45,5 @@ typedef struct NMIClass { ...@@ -45,6 +45,5 @@ typedef struct NMIClass {
} NMIClass; } NMIClass;
void nmi_monitor_handle(int cpu_index, Error **errp); void nmi_monitor_handle(int cpu_index, Error **errp);
void inject_nmi(void);
#endif /* NMI_H */ #endif /* NMI_H */
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册