summary refs log tree commit diff stats
path: root/gitlab/issues/target_arm/host_missing/accel_missing/2155.toml
diff options
context:
space:
mode:
Diffstat (limited to 'gitlab/issues/target_arm/host_missing/accel_missing/2155.toml')
-rw-r--r--gitlab/issues/target_arm/host_missing/accel_missing/2155.toml31
1 files changed, 31 insertions, 0 deletions
diff --git a/gitlab/issues/target_arm/host_missing/accel_missing/2155.toml b/gitlab/issues/target_arm/host_missing/accel_missing/2155.toml
new file mode 100644
index 000000000..5d0dc63e7
--- /dev/null
+++ b/gitlab/issues/target_arm/host_missing/accel_missing/2155.toml
@@ -0,0 +1,31 @@
+id = 2155
+title = "LoadVM assert on ARM_FEATURE_M for Cortex M3"
+state = "closed"
+created_at = "2024-02-07T18:22:10.940Z"
+closed_at = "2024-02-16T10:58:42.355Z"
+labels = ["kind::Bug", "target: arm", "workflow::Patch available"]
+url = "https://gitlab.com/qemu-project/qemu/-/issues/2155"
+host-os = "Ubuntu 20.04"
+host-arch = "x86_64"
+qemu-version = "v8.0.0 through v8.2.0"
+guest-os = "-"
+guest-arch = "ARM Cortex M3"
+description = """This appears to be a similar issue to https://gitlab.com/qemu-project/qemu/-/issues/1775 and https://gitlab.com/qemu-project/qemu/-/issues/1658
+
+When running `loadvm`  qemu aborts with this error:
+
+"qemu/target/arm/helper.c:12383: arm_security_space_below_el3: Assertion `!arm_feature(env, ARM_FEATURE_M)' failed."
+
+I've traced the error to `pmu_counter_enabled` in `qemu\\target\\arm\\helper.c:1172`   
+ [uint64_t mdcr_el2 = arm_mdcr_el2_eff(env)](https://gitlab.com/qemu-project/qemu/-/blob/v8.2.0/target/arm/helper.c?ref_type=tags#L1172)  (link is to 8.2.0 release tag)
+
+
+The issue is caused by attempting to get the MDCR_EL2 register  prior to checking if the CPU has ARM_FEATURE_PMU support. 
+
+A simple fix seems to be to check for `ARM_PMU_ENABLED` and returning early if it is not enabled."""
+reproduce = """1. Start emulation and connect monitor
+2. savevm <snapshot-name>
+3. Loadvm <snapshot-name>"""
+additional = """See screenshot for stack trace
+
+![armCortexM3LoadVMStackTrace](/uploads/fcfd927f4d373922715c8787dbb9cc26/armCortexM3LoadVMStackTrace.png)"""