Commit f7e981f2 authored by Bandan Das's avatar Bandan Das Committed by Paolo Bonzini
Browse files

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: default avatarBandan Das <bsd@redhat.com>
Message-Id: <1463761717-26558-3-git-send-email-bsd@redhat.com>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent 1255166b
Loading
Loading
Loading
Loading
+0 −24
Original line number Diff line number Diff line
@@ -20,16 +20,11 @@
 */

#include "qemu/osdep.h"
#include "qom/cpu.h"
#include "hw/nmi.h"
#include "qapi/error.h"
#include "qapi/qmp/qerror.h"
#include "monitor/monitor.h"

#if defined(TARGET_I386)
#include "cpu.h"
#endif

struct do_nmi_s {
    int cpu_index;
    Error *err;
@@ -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 = {
    .name          = TYPE_NMI,
    .parent        = TYPE_INTERFACE,
+1 −1
Original line number Diff line number Diff line
@@ -143,7 +143,7 @@ void watchdog_perform_action(void)
    case WDT_NMI:
        qapi_event_send_watchdog(WATCHDOG_EXPIRATION_ACTION_INJECT_NMI,
                                 &error_abort);
        inject_nmi();
        nmi_monitor_handle(0, NULL);
        break;
    }
}
+0 −1
Original line number Diff line number Diff line
@@ -45,6 +45,5 @@ typedef struct NMIClass {
} NMIClass;

void nmi_monitor_handle(int cpu_index, Error **errp);
void inject_nmi(void);

#endif /* NMI_H */