kvm: Service events in the instruction event queues

This changset adds calls to the service the instruction event queues
that accidentally went missing from commit [0063c7dd18ec]. The
original commit only included the code needed to schedule instruction
stops from KVM and missed the functionality to actually service the
events.
This commit is contained in:
Andreas Sandberg
2013-10-03 11:00:18 +02:00
parent 05ed2deda6
commit 0dd6f87e63

View File

@@ -540,6 +540,12 @@ BaseKvmCPU::tick()
_status = Running;
}
// Service any pending instruction events. The vCPU should
// have exited in time for the event using the instruction
// counter configured by setupInstStop().
comInstEventQueue[0]->serviceEvents(ctrInsts);
system->instEventQueue.serviceEvents(system->totalNumInsts);
if (tryDrain())
_status = Idle;
} break;
@@ -1179,7 +1185,6 @@ BaseKvmCPU::ioctlRun()
void
BaseKvmCPU::setupInstStop()
{
if (comInstEventQueue[0]->empty()) {
setupInstCounter(0);
} else {