[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/3] arm: Avoid asserting in cpu_address_space_init()
From: |
Peter Maydell |
Subject: |
[PATCH 0/3] arm: Avoid asserting in cpu_address_space_init() |
Date: |
Mon, 16 Aug 2021 14:58:39 +0100 |
KVM can't support more than one address space per CPU; if you try to
create more than one then cpu_address_space_init() will assert.
The Arm CPU realize function wasn't checking for the combination of
KVM and various features that might need multiple address spaces, so
it would just blunder on and hit the assertion failure for command
lines like:
qemu-system-aarch64 -enable-kvm -display none -cpu max -machine raspi3b
qemu-system-aarch64 -enable-kvm -display none -machine mps3-an524
This is https://gitlab.com/qemu-project/qemu/-/issues/528
This series adds the missing checks. It also fixes the raspi board
code to not assert when CPU creation fails, and removes a
now-duplicate check from the virt board code.
thanks
-- PMM
Peter Maydell (3):
raspi: Use error_fatal for SoC realize errors, not error_abort
target/arm: Avoid assertion trying to use KVM and multiple ASes
hw/arm/virt: Delete EL3 error checksnow provided in CPU realize
hw/arm/raspi.c | 2 +-
hw/arm/virt.c | 5 -----
target/arm/cpu.c | 23 +++++++++++++++++++++++
3 files changed, 24 insertions(+), 6 deletions(-)
--
2.20.1
- [PATCH 0/3] arm: Avoid asserting in cpu_address_space_init(),
Peter Maydell <=