mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-12-27 11:06:41 -05:00
* kvm-arm64/nv-xnx-haf: (22 commits)
: Support for FEAT_XNX and FEAT_HAF in nested
:
: Add support for a couple of MMU-related features that weren't
: implemented by KVM's software page table walk:
:
: - FEAT_XNX: Allows the hypervisor to describe execute permissions
: separately for EL0 and EL1
:
: - FEAT_HAF: Hardware update of the Access Flag, which in the context of
: nested means software walkers must also set the Access Flag.
:
: The series also adds some basic support for testing KVM's emulation of
: the AT instruction, including the implementation detail that AT sets the
: Access Flag in KVM.
KVM: arm64: at: Update AF on software walk only if VM has FEAT_HAFDBS
KVM: arm64: at: Use correct HA bit in TCR_EL2 when regime is EL2
KVM: arm64: Document KVM_PGTABLE_PROT_{UX,PX}
KVM: arm64: Fix spelling mistake "Unexpeced" -> "Unexpected"
KVM: arm64: Add break to default case in kvm_pgtable_stage2_pte_prot()
KVM: arm64: Add endian casting to kvm_swap_s[12]_desc()
KVM: arm64: Fix compilation when CONFIG_ARM64_USE_LSE_ATOMICS=n
KVM: arm64: selftests: Add test for AT emulation
KVM: arm64: nv: Expose hardware access flag management to NV guests
KVM: arm64: nv: Implement HW access flag management in stage-2 SW PTW
KVM: arm64: Implement HW access flag management in stage-1 SW PTW
KVM: arm64: Propagate PTW errors up to AT emulation
KVM: arm64: Add helper for swapping guest descriptor
KVM: arm64: nv: Use pgtable definitions in stage-2 walk
KVM: arm64: Handle endianness in read helper for emulated PTW
KVM: arm64: nv: Stop passing vCPU through void ptr in S2 PTW
KVM: arm64: Call helper for reading descriptors directly
KVM: arm64: nv: Advertise support for FEAT_XNX
KVM: arm64: Teach ptdump about FEAT_XNX permissions
KVM: arm64: nv: Forward FEAT_XNX permissions to the shadow stage-2
...
Signed-off-by: Oliver Upton <oupton@kernel.org>
126 lines
2.1 KiB
Plaintext
126 lines
2.1 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0
|
|
#
|
|
# Internal CPU capabilities constants, keep this list sorted
|
|
|
|
ALWAYS_BOOT
|
|
ALWAYS_SYSTEM
|
|
BTI
|
|
# Unreliable: use system_supports_32bit_el0() instead.
|
|
HAS_32BIT_EL0_DO_NOT_USE
|
|
HAS_32BIT_EL1
|
|
HAS_ADDRESS_AUTH
|
|
HAS_ADDRESS_AUTH_ARCH_QARMA3
|
|
HAS_ADDRESS_AUTH_ARCH_QARMA5
|
|
HAS_ADDRESS_AUTH_IMP_DEF
|
|
HAS_AMU_EXTN
|
|
HAS_ARMv8_4_TTL
|
|
HAS_CACHE_DIC
|
|
HAS_CACHE_IDC
|
|
HAS_CNP
|
|
HAS_CRC32
|
|
HAS_DCPODP
|
|
HAS_DCPOP
|
|
HAS_DIT
|
|
HAS_E0PD
|
|
HAS_ECV
|
|
HAS_ECV_CNTPOFF
|
|
HAS_EPAN
|
|
HAS_EVT
|
|
HAS_FPMR
|
|
HAS_FGT
|
|
HAS_FGT2
|
|
HAS_FPSIMD
|
|
HAS_GCS
|
|
HAS_GENERIC_AUTH
|
|
HAS_GENERIC_AUTH_ARCH_QARMA3
|
|
HAS_GENERIC_AUTH_ARCH_QARMA5
|
|
HAS_GENERIC_AUTH_IMP_DEF
|
|
HAS_GICV3_CPUIF
|
|
HAS_GICV5_CPUIF
|
|
HAS_GICV5_LEGACY
|
|
HAS_GIC_PRIO_MASKING
|
|
HAS_GIC_PRIO_RELAXED_SYNC
|
|
HAS_ICH_HCR_EL2_TDIR
|
|
HAS_HCR_NV1
|
|
HAS_HCX
|
|
HAS_LDAPR
|
|
HAS_LPA2
|
|
HAS_LSE_ATOMICS
|
|
HAS_MOPS
|
|
HAS_NESTED_VIRT
|
|
HAS_BBML2_NOABORT
|
|
HAS_PAN
|
|
HAS_PMUV3
|
|
HAS_S1PIE
|
|
HAS_S1POE
|
|
HAS_SCTLR2
|
|
HAS_RAS_EXTN
|
|
HAS_RASV1P1_EXTN
|
|
HAS_RNG
|
|
HAS_SB
|
|
HAS_STAGE2_FWB
|
|
HAS_TCR2
|
|
HAS_TIDCP1
|
|
HAS_TLB_RANGE
|
|
HAS_VA52
|
|
HAS_VIRT_HOST_EXTN
|
|
HAS_WFXT
|
|
HAS_XNX
|
|
HAFT
|
|
HW_DBM
|
|
KVM_HVHE
|
|
KVM_PROTECTED_MODE
|
|
MISMATCHED_CACHE_TYPE
|
|
MPAM
|
|
MPAM_HCR
|
|
MTE
|
|
MTE_ASYMM
|
|
MTE_FAR
|
|
MTE_STORE_ONLY
|
|
SME
|
|
SME_FA64
|
|
SME2
|
|
SPECTRE_V2
|
|
SPECTRE_V3A
|
|
SPECTRE_V4
|
|
SPECTRE_BHB
|
|
SSBS
|
|
SVE
|
|
UNMAP_KERNEL_AT_EL0
|
|
WORKAROUND_834220
|
|
WORKAROUND_843419
|
|
WORKAROUND_845719
|
|
WORKAROUND_858921
|
|
WORKAROUND_1418040
|
|
WORKAROUND_1463225
|
|
WORKAROUND_1508412
|
|
WORKAROUND_1542419
|
|
WORKAROUND_1742098
|
|
WORKAROUND_1902691
|
|
WORKAROUND_2038923
|
|
WORKAROUND_2064142
|
|
WORKAROUND_2077057
|
|
WORKAROUND_2457168
|
|
WORKAROUND_2645198
|
|
WORKAROUND_2658417
|
|
WORKAROUND_AMPERE_AC03_CPU_38
|
|
WORKAROUND_AMPERE_AC04_CPU_23
|
|
WORKAROUND_TRBE_OVERWRITE_FILL_MODE
|
|
WORKAROUND_TSB_FLUSH_FAILURE
|
|
WORKAROUND_TRBE_WRITE_OUT_OF_RANGE
|
|
WORKAROUND_CAVIUM_23154
|
|
WORKAROUND_CAVIUM_27456
|
|
WORKAROUND_CAVIUM_30115
|
|
WORKAROUND_CAVIUM_TX2_219_PRFM
|
|
WORKAROUND_CAVIUM_TX2_219_TVM
|
|
WORKAROUND_CLEAN_CACHE
|
|
WORKAROUND_DEVICE_LOAD_ACQUIRE
|
|
WORKAROUND_NVIDIA_CARMEL_CNP
|
|
WORKAROUND_PMUV3_IMPDEF_TRAPS
|
|
WORKAROUND_QCOM_FALKOR_E1003
|
|
WORKAROUND_QCOM_ORYON_CNTVOFF
|
|
WORKAROUND_REPEAT_TLBI
|
|
WORKAROUND_SPECULATIVE_AT
|
|
WORKAROUND_SPECULATIVE_SSBS
|
|
WORKAROUND_SPECULATIVE_UNPRIV_LOAD
|