Re: [PATCH 07/11] KVM: nVMX: Release shadow vmcs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Apr 18, 2013 at 01:16:34PM +0300, Abel Gordon wrote:
> 
> 
> Gleb Natapov <gleb@xxxxxxxxxx> wrote on 18/04/2013 12:12:18 PM:
> 
> > On Thu, Apr 18, 2013 at 11:37:59AM +0300, Abel Gordon wrote:
> > > Unmap vmcs12 and release the corresponding shadow vmcs
> > >
> > > Signed-off-by: Abel Gordon <abelg@xxxxxxxxxx>
> > > ---
> > >  arch/x86/kvm/vmx.c |   20 ++++++++++++--------
> > >  1 file changed, 12 insertions(+), 8 deletions(-)
> > >
> > > --- .before/arch/x86/kvm/vmx.c   2013-04-18 11:28:23.000000000 +0300
> > > +++ .after/arch/x86/kvm/vmx.c   2013-04-18 11:28:23.000000000 +0300
> > > @@ -5607,6 +5607,12 @@ static int nested_vmx_check_permission(s
> > >     return 1;
> > >  }
> > >
> > > +static inline void nested_release_vmcs12(struct vcpu_vmx *vmx)
> > > +{
> > > +   kunmap(vmx->nested.current_vmcs12_page);
> > > +   nested_release_page(vmx->nested.current_vmcs12_page);
> > > +}
> > > +
> > >  /*
> > >   * Free whatever needs to be freed from vmx->nested when L1 goes down,
> or
> > >   * just stops using VMX.
> > > @@ -5617,8 +5623,9 @@ static void free_nested(struct vcpu_vmx
> > >        return;
> > >     vmx->nested.vmxon = false;
> > >     if (vmx->nested.current_vmptr != -1ull) {
> > > -      kunmap(vmx->nested.current_vmcs12_page);
> > > -      nested_release_page(vmx->nested.current_vmcs12_page);
> > > +      nested_release_vmcs12(vmx);
> > > +      if (enable_shadow_vmcs)
> > > +         free_vmcs(vmx->nested.current_shadow_vmcs);
> > Should be freed even if vmx->nested.current_vmptr == -1, no?
> 
> Yes you are right. Now that we re-use the shadow vmcs we MUST free also
> if there is no current vmcs. I will fix this.
> Do you have any other comments before I send v5 (hopefully the last
> version) ?
Nope, no other comments from me.

--
			Gleb.
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux