qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] arm: Avoid asserting in cpu_address_space_init()
@ 2021-08-16 13:58 Peter Maydell
  2021-08-16 13:58 ` [PATCH 1/3] raspi: Use error_fatal for SoC realize errors, not error_abort Peter Maydell
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Peter Maydell @ 2021-08-16 13:58 UTC (permalink / raw)
  To: qemu-arm, qemu-devel; +Cc: Philippe Mathieu-Daudé, Andrew Baumann

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



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-08-16 18:02 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-08-16 13:58 [PATCH 0/3] arm: Avoid asserting in cpu_address_space_init() Peter Maydell
2021-08-16 13:58 ` [PATCH 1/3] raspi: Use error_fatal for SoC realize errors, not error_abort Peter Maydell
2021-08-16 15:10   ` Philippe Mathieu-Daudé
2021-08-16 13:58 ` [PATCH 2/3] target/arm: Avoid assertion trying to use KVM and multiple ASes Peter Maydell
2021-08-16 15:12   ` Philippe Mathieu-Daudé
2021-08-16 13:58 ` [PATCH 3/3] hw/arm/virt: Delete EL3 error checksnow provided in CPU realize Peter Maydell
2021-08-16 15:10   ` Philippe Mathieu-Daudé
2021-08-16 18:00 ` [PATCH 0/3] arm: Avoid asserting in cpu_address_space_init() Richard Henderson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).