kvm: x86: Implicitly clear nmi_injected/pending on reset
All CPUX86State variables before CPU_COMMON are automatically cleared on reset. Reorder nmi_injected and nmi_pending to avoid having to touch them explicitly. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
This commit is contained in:
parent
b66042c722
commit
d8f771d912
@ -699,6 +699,10 @@ typedef struct CPUX86State {
|
||||
uint32_t smbase;
|
||||
int old_exception; /* exception in flight */
|
||||
|
||||
/* KVM states, automatically cleared on reset */
|
||||
uint8_t nmi_injected;
|
||||
uint8_t nmi_pending;
|
||||
|
||||
CPU_COMMON
|
||||
|
||||
/* processor features (e.g. for CPUID insn) */
|
||||
@ -726,8 +730,6 @@ typedef struct CPUX86State {
|
||||
int32_t exception_injected;
|
||||
int32_t interrupt_injected;
|
||||
uint8_t soft_interrupt;
|
||||
uint8_t nmi_injected;
|
||||
uint8_t nmi_pending;
|
||||
uint8_t has_error_code;
|
||||
uint32_t sipi_vector;
|
||||
uint32_t cpuid_kvm_features;
|
||||
|
@ -435,8 +435,6 @@ void kvm_arch_reset_vcpu(CPUState *env)
|
||||
{
|
||||
env->exception_injected = -1;
|
||||
env->interrupt_injected = -1;
|
||||
env->nmi_injected = 0;
|
||||
env->nmi_pending = 0;
|
||||
env->xcr0 = 1;
|
||||
if (kvm_irqchip_in_kernel()) {
|
||||
env->mp_state = cpu_is_bsp(env) ? KVM_MP_STATE_RUNNABLE :
|
||||
|
Loading…
Reference in New Issue
Block a user