mirror of https://github.com/xqemu/xqemu.git
x86: Account for MCE in cpu_has_work
MCEs can be injected asynchronously, so they can also terminate the halt state. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> CC: Huang Ying <ying.huang@intel.com> CC: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com> CC: Jin Dongming <jin.dongming@np.css.fujitsu.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
This commit is contained in:
parent
fbc1c7e688
commit
ac09878158
|
@ -293,15 +293,12 @@ static inline void load_eflags(int eflags, int update_mask)
|
|||
|
||||
static inline int cpu_has_work(CPUState *env)
|
||||
{
|
||||
int work;
|
||||
|
||||
work = (env->interrupt_request & CPU_INTERRUPT_HARD) &&
|
||||
(env->eflags & IF_MASK);
|
||||
work |= env->interrupt_request & CPU_INTERRUPT_NMI;
|
||||
work |= env->interrupt_request & CPU_INTERRUPT_INIT;
|
||||
work |= env->interrupt_request & CPU_INTERRUPT_SIPI;
|
||||
|
||||
return work;
|
||||
return ((env->interrupt_request & CPU_INTERRUPT_HARD) &&
|
||||
(env->eflags & IF_MASK)) ||
|
||||
(env->interrupt_request & (CPU_INTERRUPT_NMI |
|
||||
CPU_INTERRUPT_INIT |
|
||||
CPU_INTERRUPT_SIPI |
|
||||
CPU_INTERRUPT_MCE));
|
||||
}
|
||||
|
||||
/* load efer and update the corresponding hflags. XXX: do consistency
|
||||
|
|
Loading…
Reference in New Issue