Message ID | 461baaa98c6b8c324ee297b76717d623d92bc510.1625186503.git.isaku.yamahata@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | KVM: X86: TDX support | expand |
On 03/07/21 00:05, isaku.yamahata@intel.com wrote: > From: Sean Christopherson <sean.j.christopherson@intel.com> > > Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com> > Signed-off-by: Isaku Yamahata <isaku.yamahata@intel.com> > --- > arch/x86/kvm/vmx/main.c | 6 ++++-- > arch/x86/kvm/vmx/vmx.c | 12 ------------ > 2 files changed, 4 insertions(+), 14 deletions(-) > > diff --git a/arch/x86/kvm/vmx/main.c b/arch/x86/kvm/vmx/main.c > index b619615f77de..8e03cb72b910 100644 > --- a/arch/x86/kvm/vmx/main.c > +++ b/arch/x86/kvm/vmx/main.c > @@ -311,7 +311,8 @@ static int vt_set_efer(struct kvm_vcpu *vcpu, u64 efer) > > static void vt_get_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) > { > - vmx_get_idt(vcpu, dt); > + dt->size = vmread32(vcpu, GUEST_IDTR_LIMIT); > + dt->address = vmreadl(vcpu, GUEST_IDTR_BASE); > } > > static void vt_set_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) > @@ -321,7 +322,8 @@ static void vt_set_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) > > static void vt_get_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) > { > - vmx_get_gdt(vcpu, dt); > + dt->size = vmread32(vcpu, GUEST_GDTR_LIMIT); > + dt->address = vmreadl(vcpu, GUEST_GDTR_BASE); > } > > static void vt_set_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) > diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c > index 40843ca2fb33..d69d4dc7c071 100644 > --- a/arch/x86/kvm/vmx/vmx.c > +++ b/arch/x86/kvm/vmx/vmx.c > @@ -3302,24 +3302,12 @@ static void vmx_get_cs_db_l_bits(struct kvm_vcpu *vcpu, int *db, int *l) > *l = (ar >> 13) & 1; > } > > -static void vmx_get_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) > -{ > - dt->size = vmcs_read32(GUEST_IDTR_LIMIT); > - dt->address = vmcs_readl(GUEST_IDTR_BASE); > -} > - > static void vmx_set_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) > { > vmcs_write32(GUEST_IDTR_LIMIT, dt->size); > vmcs_writel(GUEST_IDTR_BASE, dt->address); > } > > -static void vmx_get_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) > -{ > - dt->size = vmcs_read32(GUEST_GDTR_LIMIT); > - dt->address = vmcs_readl(GUEST_GDTR_BASE); > -} > - > static void vmx_set_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) > { > vmcs_write32(GUEST_GDTR_LIMIT, dt->size); > Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
diff --git a/arch/x86/kvm/vmx/main.c b/arch/x86/kvm/vmx/main.c index b619615f77de..8e03cb72b910 100644 --- a/arch/x86/kvm/vmx/main.c +++ b/arch/x86/kvm/vmx/main.c @@ -311,7 +311,8 @@ static int vt_set_efer(struct kvm_vcpu *vcpu, u64 efer) static void vt_get_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) { - vmx_get_idt(vcpu, dt); + dt->size = vmread32(vcpu, GUEST_IDTR_LIMIT); + dt->address = vmreadl(vcpu, GUEST_IDTR_BASE); } static void vt_set_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) @@ -321,7 +322,8 @@ static void vt_set_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) static void vt_get_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) { - vmx_get_gdt(vcpu, dt); + dt->size = vmread32(vcpu, GUEST_GDTR_LIMIT); + dt->address = vmreadl(vcpu, GUEST_GDTR_BASE); } static void vt_set_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c index 40843ca2fb33..d69d4dc7c071 100644 --- a/arch/x86/kvm/vmx/vmx.c +++ b/arch/x86/kvm/vmx/vmx.c @@ -3302,24 +3302,12 @@ static void vmx_get_cs_db_l_bits(struct kvm_vcpu *vcpu, int *db, int *l) *l = (ar >> 13) & 1; } -static void vmx_get_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) -{ - dt->size = vmcs_read32(GUEST_IDTR_LIMIT); - dt->address = vmcs_readl(GUEST_IDTR_BASE); -} - static void vmx_set_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) { vmcs_write32(GUEST_IDTR_LIMIT, dt->size); vmcs_writel(GUEST_IDTR_BASE, dt->address); } -static void vmx_get_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) -{ - dt->size = vmcs_read32(GUEST_GDTR_LIMIT); - dt->address = vmcs_readl(GUEST_GDTR_BASE); -} - static void vmx_set_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) { vmcs_write32(GUEST_GDTR_LIMIT, dt->size);