ref: ddf977d25c26d1cc3e83a08d9a3f19907dff35cc
parent: e0474599ddbeafb7f2734fead8cbba62c466990a
author: cinap_lenrek <[email protected]>
date: Mon Aug 7 15:10:32 EDT 2017
vmx: fix hlt idle problem
--- a/sys/src/cmd/vmx/exith.c
+++ b/sys/src/cmd/vmx/exith.c
@@ -434,7 +434,7 @@
static void
hlt(ExitInfo *ei)
{
- if(irqactive == 0)
+ if(irqactive < 0)
state = VMHALT;
skipinstr(ei);
}
--- a/sys/src/cmd/vmx/io.c
+++ b/sys/src/cmd/vmx/io.c
@@ -282,7 +282,7 @@
case 0x20:
case 0xa0:
if((val & 1<<4) != 0){ /* ICW1 */
- if(irqactive){
+ if(irqactive >= 0){
if(ctl("irq") < 0)
sysfatal("ctl: %r");
irqactive = -1;