summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean Christopherson <seanjc@google.com>2026-07-23 17:47:55 -0700
committerSean Christopherson <seanjc@google.com>2026-07-28 13:48:44 -0700
commit6bb3493175d8002126c9d4fc84624e42db17d6d1 (patch)
tree8d9282e9658707b3655774334aef8a2ffce3c0b7
parentb717245a7b0855a8a729aa413a9d0de6baeaf35f (diff)
KVM: nVMX: Use CLASS(kvm_vcpu_map_local_readonly) for MSR bitmap merging
Convert the kvm_vcpu_map_readonly() usage in nVMX's MSR bitmap merging to the new CLASS(kvm_vcpu_map_local_readonly) implementation, to eliminate the last of the open-coded on-stack "struct kvm_host_map" declarations (in x86, PPC still has one more to convert). No functional change intended. Link: https://patch.msgid.link/20260724004757.131420-5-seanjc@google.com Signed-off-by: Sean Christopherson <seanjc@google.com>
-rw-r--r--arch/x86/kvm/vmx/nested.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/arch/x86/kvm/vmx/nested.c b/arch/x86/kvm/vmx/nested.c
index 57e02c3fa182..579203923267 100644
--- a/arch/x86/kvm/vmx/nested.c
+++ b/arch/x86/kvm/vmx/nested.c
@@ -701,7 +701,6 @@ static inline bool nested_vmx_prepare_msr_bitmap(struct kvm_vcpu *vcpu,
int msr;
unsigned long *msr_bitmap_l1;
unsigned long *msr_bitmap_l0 = vmx->nested.vmcs02.msr_bitmap;
- struct kvm_host_map map;
/* Nothing to do if the MSR bitmap is not in use. */
if (!cpu_has_vmx_msr_bitmap() ||
@@ -724,10 +723,11 @@ static inline bool nested_vmx_prepare_msr_bitmap(struct kvm_vcpu *vcpu,
return true;
}
- if (kvm_vcpu_map_readonly(vcpu, gpa_to_gfn(vmcs12->msr_bitmap), &map))
+ CLASS(kvm_vcpu_map_local_readonly, m)(vcpu, gpa_to_gfn(vmcs12->msr_bitmap));
+ if (m.ret)
return false;
- msr_bitmap_l1 = (unsigned long *)map.hva;
+ msr_bitmap_l1 = (unsigned long *)m.map.hva;
/*
* To keep the control flow simple, pay eight 8-byte writes (sixteen
@@ -807,8 +807,6 @@ static inline bool nested_vmx_prepare_msr_bitmap(struct kvm_vcpu *vcpu,
nested_vmx_merge_pmu_msr_bitmaps(vcpu, msr_bitmap_l1, msr_bitmap_l0);
- kvm_vcpu_unmap(vcpu, &map);
-
vmx->nested.force_msr_bitmap_recalc = false;
return true;