[PATCH for-11.1 0/3] target/arm: Fix SEV/WFE handling for v6K and earlier

Peter Maydell <[email protected]>
Newsgroups gmane.comp.emulators.qemu
Message-ID <[email protected]>
This is an extension of my previous patch
https://patchew.org/QEMU/[email protected]/
("target/arm: Don't NOP the SEV insn on v6K CPUs") to also get the
architecture version checks right on SEV, WFE and YIELD.  (That then
means all the insns in the NOP-hint space have checks in them).  RTH
suggested that a mismatch in the condition check between WFE and SEV
was more important than I had thought, and I agree.  A guest might
choose to have spinlocks using WFE/SEV regardless of CPU architecture
version, and rely on them degrading to busy-wait loops on older CPUs
because both WFE/SEV are NOPs there; if we make WFE actually wait but
SEV a NOP then that kind of code would deadlock.

Patch 1: same as previous, already reviewed.
Patch 2: add checks to WFE, WFI and YIELD.
Patch 3: trivial comment cleanup.

thanks
-- PMM

Peter Maydell (3):
  target/arm: Don't NOP the SEV insn on v6K CPUs
  target/arm: Make YIELD, WFI and WFE be NOPs on pre-v6K
  target/arm: Remove stale comment about WFE/SEV implementation

 target/arm/cpu.h           |  1 -
 target/arm/tcg/translate.c | 48 ++++++++++++++++++++++++++++----------
 2 files changed, 36 insertions(+), 13 deletions(-)

-- 
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.