From 62a70fc3cc20890bd98068f29a8d2a9e33caa7df Mon Sep 17 00:00:00 2001 From: Giacomo Travaglini Date: Wed, 16 Oct 2019 13:08:28 +0100 Subject: [PATCH] configs: Do not assume bootmem is a System child As far as I can see bootmem is used in Arm systems only. With https://gem5-review.googlesource.com/c/public/gem5/+/21604 bootmem has been moved from system to system.realview. This patch fix things by removing the assumption that the bootmem SimObject lives under the system. It is now trying to getattr a reference of the bootmem. It is the ISA specific system builder's duty to bind the bootmem reference (_bootmem) to the real bootmem object Change-Id: I1e7405b5cb186de13c44bfd93fb4c8a1a5447f24 Signed-off-by: Giacomo Travaglini Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22001 Reviewed-by: Bobby R. Bruce Reviewed-by: Jason Lowe-Power Maintainer: Jason Lowe-Power Tested-by: kokoro --- configs/common/FSConfig.py | 1 + configs/example/fs.py | 2 +- tests/configs/base_config.py | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/configs/common/FSConfig.py b/configs/common/FSConfig.py index fa383bb93..1a4e3810b 100644 --- a/configs/common/FSConfig.py +++ b/configs/common/FSConfig.py @@ -236,6 +236,7 @@ def makeArmSystem(mem_mode, machine_type, num_cpus=1, mdesc=None, # variable might have been an alias. machine_type = platform_class.__name__ self.realview = platform_class() + self._bootmem = self.realview.bootmem if isinstance(self.realview, VExpress_EMM64): if os.path.split(mdesc.disk())[-1] == 'linux-aarch32-ael.img': diff --git a/configs/example/fs.py b/configs/example/fs.py index 9216f704c..c9273198b 100644 --- a/configs/example/fs.py +++ b/configs/example/fs.py @@ -149,7 +149,7 @@ def build_test_system(np): test_sys.kvm_vm = KvmVM() if options.ruby: - bootmem = getattr(test_sys, 'bootmem', None) + bootmem = getattr(test_sys, '_bootmem', None) Ruby.create_system(options, True, test_sys, test_sys.iobus, test_sys._dma_ports, bootmem) diff --git a/tests/configs/base_config.py b/tests/configs/base_config.py index 2bed5f661..d79496d7c 100644 --- a/tests/configs/base_config.py +++ b/tests/configs/base_config.py @@ -170,7 +170,7 @@ class BaseSystem(object): options.num_cpus = self.num_cpus options.num_dirs = 2 - bootmem = getattr(system, 'bootmem', None) + bootmem = getattr(system, '_bootmem', None) Ruby.create_system(options, True, system, system.iobus, system._dma_ports, bootmem) -- 2.30.2