[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/6] target/arm: Fix v8 AArch32 RAZ ID regs; implement FEAT_ETS
From: |
Peter Maydell |
Subject: |
[PATCH 0/6] target/arm: Fix v8 AArch32 RAZ ID regs; implement FEAT_ETS |
Date: |
Fri, 19 Aug 2022 12:00:46 +0100 |
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
- [PATCH 0/6] target/arm: Fix v8 AArch32 RAZ ID regs; implement FEAT_ETS,
Peter Maydell <=
- [PATCH 1/6] target/arm: Make cpregs 0, c0, c{3-15}, {0-7} correctly RAZ in v8, Peter Maydell, 2022/08/19
- [PATCH 4/6] target/arm: Implement ID_DFR1, Peter Maydell, 2022/08/19
- [PATCH 5/6] target/arm: Advertise FEAT_ETS for '-cpu max', Peter Maydell, 2022/08/19
- [PATCH 3/6] target/arm: Implement ID_MMFR5, Peter Maydell, 2022/08/19
- [PATCH 2/6] target/arm: Sort KVM reads of AArch32 ID registers into encoding order, Peter Maydell, 2022/08/19