[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-3.2-testing] x86: Fix teardown of relocated vcpu_info structures.
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1212308964 -3600 # Node ID 0b5bd01884070054e12817a36b5fc071009011e4 # Parent 27351129428a63b0b4ed6e96255af18806b3d9f9 x86: Fix teardown of relocated vcpu_info structures. Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx> xen-unstable changeset: 17761:85fa199b4b7b xen-unstable date: Sun Jun 01 09:16:26 2008 +0100 --- xen/arch/x86/domain.c | 19 +++++++++---------- 1 files changed, 9 insertions(+), 10 deletions(-) diff -r 27351129428a -r 0b5bd0188407 xen/arch/x86/domain.c --- a/xen/arch/x86/domain.c Fri May 30 16:48:03 2008 +0100 +++ b/xen/arch/x86/domain.c Sun Jun 01 09:29:24 2008 +0100 @@ -55,8 +55,6 @@ DEFINE_PER_CPU(u64, efer); DEFINE_PER_CPU(u64, efer); DEFINE_PER_CPU(unsigned long, cr4); -static void unmap_vcpu_info(struct vcpu *v); - static void paravirt_ctxt_switch_from(struct vcpu *v); static void paravirt_ctxt_switch_to(struct vcpu *v); @@ -429,8 +427,6 @@ void vcpu_destroy(struct vcpu *v) { if ( is_pv_32on64_vcpu(v) ) release_compat_l4(v); - - unmap_vcpu_info(v); if ( is_hvm_vcpu(v) ) hvm_vcpu_destroy(v); @@ -1816,16 +1812,19 @@ int domain_relinquish_resources(struct d /* Tear down paging-assistance stuff. */ paging_teardown(d); - /* Drop the in-use references to page-table bases. */ for_each_vcpu ( d, v ) + { + /* Drop the in-use references to page-table bases. */ vcpu_destroy_pagetables(v); - /* - * Relinquish GDT mappings. No need for explicit unmapping of the LDT - * as it automatically gets squashed when the guest's mappings go away. - */ - for_each_vcpu(d, v) + /* + * Relinquish GDT mappings. No need for explicit unmapping of the + * LDT as it automatically gets squashed with the guest mappings. + */ destroy_gdt(v); + + unmap_vcpu_info(v); + } d->arch.relmem = RELMEM_xen_l4; /* fallthrough */ _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |