summaryrefslogtreecommitdiff
path: root/src/mem/AbstractMemory.py
diff options
context:
space:
mode:
authorDavid Hashe <david.j.hashe@gmail.com>2016-08-22 11:41:05 -0400
committerDavid Hashe <david.j.hashe@gmail.com>2016-08-22 11:41:05 -0400
commitf3ccaab1e982f4482177aefa95575f7d7dae21f7 (patch)
tree8797cdd232c0ccafa53d0601bc9da14a16f6db00 /src/mem/AbstractMemory.py
parentd80a613990935dd144a5665a875f91725ee81f78 (diff)
downloadgem5-f3ccaab1e982f4482177aefa95575f7d7dae21f7.tar.xz
cpu, mem, sim: Change how KVM maps memory
Only map memories into the KVM guest address space that are marked as usable by KVM. Create BackingStoreEntry class containing flags for is_conf_reported, in_addr_map, and kvm_map.
Diffstat (limited to 'src/mem/AbstractMemory.py')
-rw-r--r--src/mem/AbstractMemory.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mem/AbstractMemory.py b/src/mem/AbstractMemory.py
index ab1a6028c..d5b34bbd0 100644
--- a/src/mem/AbstractMemory.py
+++ b/src/mem/AbstractMemory.py
@@ -57,6 +57,12 @@ class AbstractMemory(MemObject):
# e.g. by the testers that use shadow memories as a reference
in_addr_map = Param.Bool(True, "Memory part of the global address map")
+ # When KVM acceleration is used, memory is mapped into the guest process
+ # address space and accessed directly. Some memories may need to be
+ # excluded from this mapping if they overlap with other memory ranges or
+ # are not accessible by the CPU.
+ kvm_map = Param.Bool(True, "Should KVM map this memory for the guest")
+
# Should the bootloader include this memory when passing
# configuration information about the physical memory layout to
# the kernel, e.g. using ATAG or ACPI