[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v3] x86/HVM: Fix teardown ordering in hvm_vcpu_destroy()
On 10/01/17 14:15, Andrew Cooper wrote: > On 10/01/17 14:03, Suravee Suthikulpanit wrote: >> The order of destroy function calls in hvm_vcpu_destroy() should be >> the reverse of init calls in hvm_vcpu_initialise(). >> >> Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@xxxxxxx> >> Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> >> Reviewed-by: Kevin Tian <kevin.tian@xxxxxxxxx> >> Cc: Jan Beulich <jbeulich@xxxxxxxx> >> Cc: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx> > Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> and queued. Wait no. The order in vcpu_initialise is hvm_vcpu_cacheattr_init() vlapic_init() hvm_funcs.vcpu_initialise() softirq_tasklet_init() setup_compat_arg_xlat() Therefore, moving the tasklet_kill() is wrong. The overall delta should be: andrewcoop@andrewcoop:/local/xen.git/xen$ git diff HEAD^ diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c index 4c0f561..9f74334 100644 --- a/xen/arch/x86/hvm/hvm.c +++ b/xen/arch/x86/hvm/hvm.c @@ -1626,12 +1626,12 @@ void hvm_vcpu_destroy(struct vcpu *v) free_compat_arg_xlat(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); + hvm_vcpu_cacheattr_destroy(v); } IIRC. If you agree, I will fold this correction in while committing. ~Andrew _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |