qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] target/arm: Fix v8 AArch32 RAZ ID regs; implement FEAT_ETS
@ 2022-08-19 11:00 Peter Maydell
  2022-08-19 11:00 ` [PATCH 1/6] target/arm: Make cpregs 0, c0, c{3-15}, {0-7} correctly RAZ in v8 Peter Maydell
                   ` (6 more replies)
  0 siblings, 7 replies; 15+ messages in thread
From: Peter Maydell @ 2022-08-19 11:00 UTC (permalink / raw)
  To: qemu-arm, qemu-devel

The main aim of this patchset is to implement FEAT_ETS.
FEAT_ETS provides tighter guarantees on some memory orderings
involving translation table walks that permit guest code to
skip the context-synchronization event they would otherwise
need to do after a TLB maintenance operation. QEMU already
provides the tighter guarantees this feature requires, so
all we need to do is advertise it in the ID registers...

...except that it turns out that for AArch32 this is done
in ID_MMFR5, which is a new-in-v8.6 register that we don't
implement yet. So we need to provide it. And while I was
doing that I noticed that we accidentally forgot to
implement a big chunk of the "reserved for future ID
registers, must RAZ" cp15 space for v8 AArch32. So the
big bit of the patchset is sorting that out :-)

thanks
-- PMM

Peter Maydell (6):
  target/arm: Make cpregs 0, c0, c{3-15}, {0-7} correctly RAZ in v8
  target/arm: Sort KVM reads of AArch32 ID registers into encoding order
  target/arm: Implement ID_MMFR5
  target/arm: Implement ID_DFR1
  target/arm: Advertise FEAT_ETS for '-cpu max'
  target/arm: Add missing space in comment

 docs/system/arm/emulation.rst |  1 +
 target/arm/cpu.h              |  2 +
 target/arm/cpu64.c            |  1 +
 target/arm/cpu_tcg.c          |  6 ++-
 target/arm/helper.c           | 69 +++++++++++++++++++++++++++++++----
 target/arm/kvm64.c            |  8 +++-
 6 files changed, 77 insertions(+), 10 deletions(-)

-- 
2.25.1



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

end of thread, other threads:[~2022-08-23 21:49 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-08-19 11:00 [PATCH 0/6] target/arm: Fix v8 AArch32 RAZ ID regs; implement FEAT_ETS Peter Maydell
2022-08-19 11:00 ` [PATCH 1/6] target/arm: Make cpregs 0, c0, c{3-15}, {0-7} correctly RAZ in v8 Peter Maydell
2022-08-20  2:37   ` Richard Henderson
2022-08-22  8:48     ` Peter Maydell
2022-08-19 11:00 ` [PATCH 2/6] target/arm: Sort KVM reads of AArch32 ID registers into encoding order Peter Maydell
2022-08-20  2:37   ` Richard Henderson
2022-08-19 11:00 ` [PATCH 3/6] target/arm: Implement ID_MMFR5 Peter Maydell
2022-08-20  2:38   ` Richard Henderson
2022-08-19 11:00 ` [PATCH 4/6] target/arm: Implement ID_DFR1 Peter Maydell
2022-08-20  5:19   ` Richard Henderson
2022-08-19 11:00 ` [PATCH 5/6] target/arm: Advertise FEAT_ETS for '-cpu max' Peter Maydell
2022-08-20  5:21   ` Richard Henderson
2022-08-19 11:00 ` [PATCH 6/6] target/arm: Add missing space in comment Peter Maydell
2022-08-20  5:22   ` Richard Henderson
2022-08-23 21:48 ` [PATCH 0/6] target/arm: Fix v8 AArch32 RAZ ID regs; implement FEAT_ETS 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).