ia64/xen-unstable
changeset 15199:f38f7f583f33
Unmap vcpu_info mapping in arch_domain_destroy.
We don't need to touch it in arch_vcpu_reset() because that's only used
to recover from a failed suspend, and the correct behaviour there is to
leave the mapping as-is.
We don't need to touch it in arch_vcpu_reset() because that's only used
to recover from a failed suspend, and the correct behaviour there is to
leave the mapping as-is.
author | Jeremy Fitzhardinge <jeremy@xensource.com> |
---|---|
date | Thu May 24 13:25:05 2007 +0100 (2007-05-24) |
parents | 03c213fd2360 |
children | 2c7154ea7eef |
files | xen/arch/x86/domain.c |
line diff
1.1 --- a/xen/arch/x86/domain.c Thu May 24 10:48:58 2007 +0100 1.2 +++ b/xen/arch/x86/domain.c Thu May 24 13:25:05 2007 +0100 1.3 @@ -489,6 +489,9 @@ void arch_domain_destroy(struct domain * 1.4 { 1.5 struct vcpu *v; 1.6 1.7 + for_each_vcpu( d, v ) 1.8 + unmap_vcpu_info(v); 1.9 + 1.10 if ( is_hvm_domain(d) ) 1.11 { 1.12 for_each_vcpu ( d, v ) 1.13 @@ -731,7 +734,6 @@ int arch_set_info_guest( 1.14 1.15 int arch_vcpu_reset(struct vcpu *v) 1.16 { 1.17 - unmap_vcpu_info(v); 1.18 destroy_gdt(v); 1.19 vcpu_destroy_pagetables(v); 1.20 return 0; 1.21 @@ -739,8 +741,8 @@ int arch_vcpu_reset(struct vcpu *v) 1.22 1.23 /* 1.24 * Unmap the vcpu info page if the guest decided to place it somewhere 1.25 - * else. This is only used from arch_vcpu_reset, so there's no need 1.26 - * to do anything clever. 1.27 + * else. This is only used from arch_domain_destroy, so there's no 1.28 + * need to do anything clever. 1.29 */ 1.30 static void 1.31 unmap_vcpu_info(struct vcpu *v)