summaryrefslogtreecommitdiffstats
path: root/arch/arm64/kvm/emulate-nested.c
diff options
context:
space:
mode:
authorMarc Zyngier <maz@kernel.org>2024-02-14 13:18:18 +0000
committerOliver Upton <oliver.upton@linux.dev>2024-02-19 17:13:01 +0000
commit2fd8f31c32f061822c18d13d17c1ea6a531cc443 (patch)
tree654328fdcf1c9cfe40cc945b7b5fb8faa36697e7 /arch/arm64/kvm/emulate-nested.c
parent085eabaa74a12345b7dd083b160519fe3a52f2ce (diff)
downloadlinux-stable-2fd8f31c32f061822c18d13d17c1ea6a531cc443.tar.gz
linux-stable-2fd8f31c32f061822c18d13d17c1ea6a531cc443.tar.bz2
linux-stable-2fd8f31c32f061822c18d13d17c1ea6a531cc443.zip
KVM: arm64: Add Fine-Grained UNDEF tracking information
In order to efficiently handle system register access being disabled, and this resulting in an UNDEF exception being injected, we introduce the (slightly dubious) concept of Fine-Grained UNDEF, modeled after the architectural Fine-Grained Traps. For each FGT group, we keep a 64 bit word that has the exact same bit assignment as the corresponding FGT register, where a 1 indicates that trapping this register should result in an UNDEF exception being reinjected. So far, nothing populates this information, nor sets the corresponding trap bits. Signed-off-by: Marc Zyngier <maz@kernel.org> Link: https://lore.kernel.org/r/20240214131827.2856277-18-maz@kernel.org Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
Diffstat (limited to 'arch/arm64/kvm/emulate-nested.c')
-rw-r--r--arch/arm64/kvm/emulate-nested.c12
1 files changed, 0 insertions, 12 deletions
diff --git a/arch/arm64/kvm/emulate-nested.c b/arch/arm64/kvm/emulate-nested.c
index 4f2a32a8f247..b67078b8271b 100644
--- a/arch/arm64/kvm/emulate-nested.c
+++ b/arch/arm64/kvm/emulate-nested.c
@@ -1009,18 +1009,6 @@ static const struct encoding_to_trap_config encoding_to_cgt[] __initconst = {
static DEFINE_XARRAY(sr_forward_xa);
-enum fgt_group_id {
- __NO_FGT_GROUP__,
- HFGxTR_GROUP,
- HDFGRTR_GROUP,
- HDFGWTR_GROUP = HDFGRTR_GROUP,
- HFGITR_GROUP,
- HAFGRTR_GROUP,
-
- /* Must be last */
- __NR_FGT_GROUP_IDS__
-};
-
enum fg_filter_id {
__NO_FGF__,
HCRX_FGTnXS,