[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 07/29] tests/avocado: update the tcg_plugins test
From: |
Alex Bennée |
Subject: |
[PATCH 07/29] tests/avocado: update the tcg_plugins test |
Date: |
Fri, 3 Nov 2023 19:59:34 +0000 |
There are a number of things that are broken on the test currently so
lets fix that up:
- replace retired Debian kernel for tuxrun_baseline one
- remove "detected repeat instructions test" since ea185a55
- log total counted instructions/memory accesses
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
tests/avocado/tcg_plugins.py | 28 ++++++++++++++++++----------
1 file changed, 18 insertions(+), 10 deletions(-)
diff --git a/tests/avocado/tcg_plugins.py b/tests/avocado/tcg_plugins.py
index 642d2e49e3..15fd87b2c1 100644
--- a/tests/avocado/tcg_plugins.py
+++ b/tests/avocado/tcg_plugins.py
@@ -54,13 +54,11 @@ def run_vm(self, kernel_path, kernel_command_line,
class PluginKernelNormal(PluginKernelBase):
def _grab_aarch64_kernel(self):
- kernel_url = ('http://security.debian.org/'
- 'debian-security/pool/updates/main/l/linux-signed-arm64/'
- 'linux-image-4.19.0-12-arm64_4.19.152-1_arm64.deb')
- kernel_sha1 = '2036c2792f80ac9c4ccaae742b2e0a28385b6010'
- kernel_deb = self.fetch_asset(kernel_url, asset_hash=kernel_sha1)
- kernel_path = self.extract_from_deb(kernel_deb,
- "/boot/vmlinuz-4.19.0-12-arm64")
+ kernel_url = ('https://storage.tuxboot.com/20230331/arm64/Image')
+ kernel_sha256 =
'ce95a7101a5fecebe0fe630deee6bd97b32ba41bc8754090e9ad8961ea8674c7'
+ kernel_path = self.fetch_asset(kernel_url,
+ asset_hash=kernel_sha256,
+ algorithm = "sha256")
return kernel_path
def test_aarch64_virt_insn(self):
@@ -88,6 +86,10 @@ def test_aarch64_virt_insn(self):
m = re.search(br"insns: (?P<count>\d+)", s)
if "count" not in m.groupdict():
self.fail("Failed to find instruction count")
+ else:
+ count = int(m.group("count"))
+ self.log.info(f"Counted: {count} instructions")
+
def test_aarch64_virt_insn_icount(self):
"""
@@ -111,9 +113,13 @@ def test_aarch64_virt_insn_icount(self):
with plugin_log as lf, \
mmap.mmap(lf.fileno(), 0, access=mmap.ACCESS_READ) as s:
- m = re.search(br"detected repeat execution @
(?P<addr>0x[0-9A-Fa-f]+)", s)
- if m is not None and "addr" in m.groupdict():
- self.fail("detected repeated instructions")
+
+ m = re.search(br"insns: (?P<count>\d+)", s)
+ if "count" not in m.groupdict():
+ self.fail("Failed to find instruction count")
+ else:
+ count = int(m.group("count"))
+ self.log.info(f"Counted: {count} instructions")
def test_aarch64_virt_mem_icount(self):
"""
@@ -145,3 +151,5 @@ def test_aarch64_virt_mem_icount(self):
callback = int(m[1])
if inline != callback:
self.fail("mismatched access counts")
+ else:
+ self.log.info(f"Counted {inline} memory accesses")
--
2.39.2
- [PATCH 09/29] gdbstub: Introduce gdb_find_static_feature(), (continued)
- [PATCH 09/29] gdbstub: Introduce gdb_find_static_feature(), Alex Bennée, 2023/11/03
- [PATCH 14/29] gdbstub: Use GDBFeature for gdb_register_coprocessor, Alex Bennée, 2023/11/03
- [PATCH 13/29] target/riscv: Use GDBFeature for dynamic XML, Alex Bennée, 2023/11/03
- [PATCH 16/29] gdbstub: Change gdb_get_reg_cb and gdb_set_reg_cb, Alex Bennée, 2023/11/03
- [PATCH 25/29] contrib/plugins: extend execlog to track register changes, Alex Bennée, 2023/11/03
- [PATCH 26/29] plugins: add dllexport and dllimport to api funcs, Alex Bennée, 2023/11/03
- [PATCH 11/29] target/arm: Use GDBFeature for dynamic XML, Alex Bennée, 2023/11/03
- [PATCH 07/29] tests/avocado: update the tcg_plugins test,
Alex Bennée <=
- [PATCH 10/29] gdbstub: Introduce GDBFeatureBuilder, Alex Bennée, 2023/11/03
- [PATCH 22/29] cpu: Call plugin hooks only when ready, Alex Bennée, 2023/11/03
- [PATCH 17/29] gdbstub: Simplify XML lookup, Alex Bennée, 2023/11/03
- [PATCH 15/29] gdbstub: Use GDBFeature for GDBRegisterState, Alex Bennée, 2023/11/03
- [PATCH 23/29] plugins: Use different helpers when reading registers, Alex Bennée, 2023/11/03
- [PATCH 28/29] plugins: disable lockstep plugin on windows, Alex Bennée, 2023/11/03
- [PATCH 24/29] plugins: add an API to read registers, Alex Bennée, 2023/11/03
- [PATCH 21/29] gdbstub: expose api to find registers, Alex Bennée, 2023/11/03