summaryrefslogtreecommitdiff
path: root/src/cpu/kvm/base.cc
diff options
context:
space:
mode:
authorAndreas Sandberg <andreas.sandberg@arm.com>2017-07-27 09:24:22 +0000
committerAndreas Sandberg <andreas.sandberg@arm.com>2017-08-01 16:20:24 +0000
commit1935cec529ac2ae7d9b31f1e55f333a0769184b5 (patch)
tree2f2c1db4b255a802cf519ba11b7492f9a280c393 /src/cpu/kvm/base.cc
parent9d6d3e5f7dd50e882a503ee4bb2ac7d9b8d21e30 (diff)
downloadgem5-1935cec529ac2ae7d9b31f1e55f333a0769184b5.tar.xz
kvm: Add a helper method to access device event queues
The VM's event queue is normally used for devices in multi-core KVM mode. Add a helper method, BaseKvmCPU::deviceEventQueue(), to access this queue. This makes the intention of code migrating to device event queues clearer. Change-Id: Ifb10f553a6d7445c8d562f658cf9d0b1f4c577ff Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-on: https://gem5-review.googlesource.com/4287 Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Diffstat (limited to 'src/cpu/kvm/base.cc')
-rw-r--r--src/cpu/kvm/base.cc7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/cpu/kvm/base.cc b/src/cpu/kvm/base.cc
index 6ea99ce4a..d0f7515de 100644
--- a/src/cpu/kvm/base.cc
+++ b/src/cpu/kvm/base.cc
@@ -1147,10 +1147,9 @@ BaseKvmCPU::doMMIOAccess(Addr paddr, void *data, int size, bool write)
delete pkt;
return clockPeriod() * ipr_delay;
} else {
- // Temporarily lock and migrate to the event queue of the
- // VM. This queue is assumed to "own" all devices we need to
- // access if running in multi-core mode.
- EventQueue::ScopedMigration migrate(vm.eventQueue());
+ // Temporarily lock and migrate to the device event queue to
+ // prevent races in multi-core mode.
+ EventQueue::ScopedMigration migrate(deviceEventQueue());
return dataPort.submitIO(pkt);
}