x86: Fix teardown of relocated vcpu_info structures.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
This commit is contained in:
Keir Fraser committed 2008-06-01 09:16:26 +01:00
1 parent 5024576315
commit 893ee9de18
1 file changed
+9 -10
+9 -10
View File
@@ -59,8 +59,6 @@ DEFINE_PER_CPU(unsigned long, cr4);
static void default_idle(void);
void (*pm_idle) (void) = default_idle;
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);
@@ -433,8 +431,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);
}
@@ -1864,17 +1860,20 @@ int domain_relinquish_resources(struct domain *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 */
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.