diff options
| author | Christian Krinitsin <mail@krinitsin.com> | 2025-05-30 16:52:07 +0200 |
|---|---|---|
| committer | Christian Krinitsin <mail@krinitsin.com> | 2025-05-30 16:52:17 +0200 |
| commit | 9260319e7411ff8281700a532caa436f40120ec4 (patch) | |
| tree | 2f6bfe5f3458dd49d328d3a9eb508595450adec0 /gitlab/issues_text/target_arm/host_missing/accel_missing/2155 | |
| parent | 225caa38269323af1bfc2daadff5ec8bd930747f (diff) | |
| download | qemu-analysis-9260319e7411ff8281700a532caa436f40120ec4.tar.gz qemu-analysis-9260319e7411ff8281700a532caa436f40120ec4.zip | |
gitlab scraper: download in toml and text format
Diffstat (limited to 'gitlab/issues_text/target_arm/host_missing/accel_missing/2155')
| -rw-r--r-- | gitlab/issues_text/target_arm/host_missing/accel_missing/2155 | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/gitlab/issues_text/target_arm/host_missing/accel_missing/2155 b/gitlab/issues_text/target_arm/host_missing/accel_missing/2155 new file mode 100644 index 000000000..3d2f8e4ef --- /dev/null +++ b/gitlab/issues_text/target_arm/host_missing/accel_missing/2155 @@ -0,0 +1,23 @@ +LoadVM assert on ARM_FEATURE_M for Cortex M3 +Description of problem: +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. +Steps to reproduce: +1. Start emulation and connect monitor +2. savevm <snapshot-name> +3. Loadvm <snapshot-name> +Additional information: +See screenshot for stack trace + + |