Re: [Xen-devel] [RFC PATCH 3/9] x86/HVM: Call vlapic_destroy after vcpu_destroy
>>> On 19.09.16 at 07:52, wrote: > Since vlapic_init() is called before vcpu_initialise(). > We should also follow the same order here. s/same/inverse/? Also the ordering issue extends to other calls, and I think if at all possible we should then do all the teardown in reverse order of init. Jan ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] [RFC PATCH 3/9] x86/HVM: Call vlapic_destroy after vcpu_destroy
On Mon, Sep 19, 2016 at 12:52:42AM -0500, Suravee Suthikulpanit wrote: > Since vlapic_init() is called before vcpu_initialise(). > We should also follow the same order here. > > Signed-off-by: Suravee Suthikulpanit Reviewed-by: Konrad Rzeszutek Wilk But it would also be good to CC the Intel VMX maintainers in case they spot something in vmx_vcpu_destroy. > --- > xen/arch/x86/hvm/hvm.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c > index 7bad845..fb5bf6c 100644 > --- a/xen/arch/x86/hvm/hvm.c > +++ b/xen/arch/x86/hvm/hvm.c > @@ -1606,10 +1606,10 @@ void hvm_vcpu_destroy(struct vcpu *v) > tasklet_kill(&v->arch.hvm_vcpu.assert_evtchn_irq_tasklet); > hvm_vcpu_cacheattr_destroy(v); > > +hvm_funcs.vcpu_destroy(v); > + > if ( is_hvm_vcpu(v) ) > vlapic_destroy(v); > - > -hvm_funcs.vcpu_destroy(v); > } > > void hvm_vcpu_down(struct vcpu *v) > -- > 1.9.1 > > > ___ > Xen-devel mailing list > Xen-devel@lists.xen.org > https://lists.xen.org/xen-devel ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
[Xen-devel] [RFC PATCH 3/9] x86/HVM: Call vlapic_destroy after vcpu_destroy
Since vlapic_init() is called before vcpu_initialise(). We should also follow the same order here. Signed-off-by: Suravee Suthikulpanit --- xen/arch/x86/hvm/hvm.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c index 7bad845..fb5bf6c 100644 --- a/xen/arch/x86/hvm/hvm.c +++ b/xen/arch/x86/hvm/hvm.c @@ -1606,10 +1606,10 @@ void hvm_vcpu_destroy(struct vcpu *v) tasklet_kill(&v->arch.hvm_vcpu.assert_evtchn_irq_tasklet); hvm_vcpu_cacheattr_destroy(v); +hvm_funcs.vcpu_destroy(v); + if ( is_hvm_vcpu(v) ) vlapic_destroy(v); - -hvm_funcs.vcpu_destroy(v); } void hvm_vcpu_down(struct vcpu *v) -- 1.9.1 ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel