|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] In shadow-external mode, every VCPU must free its own
# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 549130374cfad466e526bed31199c7a5eee5eb38
# Parent d46553f73c6f8ebef2b4a2d1605957c47550792b
In shadow-external mode, every VCPU must free its own
monitor pagetable.
Signed-off-by: Xin Li <xin.b.li@xxxxxxxxx>
diff -r d46553f73c6f -r 549130374cfa xen/arch/x86/shadow32.c
--- a/xen/arch/x86/shadow32.c Fri Nov 25 16:53:41 2005
+++ b/xen/arch/x86/shadow32.c Fri Nov 25 16:58:36 2005
@@ -800,13 +800,10 @@
/*
* Then free monitor_table.
- * Note: for VMX guest, only BSP need do this free.
*/
- if (!(VMX_DOMAIN(v) && v->vcpu_id)) {
- mfn = pagetable_get_pfn(v->arch.monitor_table);
- unmap_domain_page(v->arch.monitor_vtable);
- free_domheap_page(&frame_table[mfn]);
- }
+ mfn = pagetable_get_pfn(v->arch.monitor_table);
+ unmap_domain_page(v->arch.monitor_vtable);
+ free_domheap_page(&frame_table[mfn]);
v->arch.monitor_table = mk_pagetable(0);
v->arch.monitor_vtable = 0;
diff -r d46553f73c6f -r 549130374cfa xen/arch/x86/shadow_public.c
--- a/xen/arch/x86/shadow_public.c Fri Nov 25 16:53:41 2005
+++ b/xen/arch/x86/shadow_public.c Fri Nov 25 16:58:36 2005
@@ -297,13 +297,11 @@
/*
* free monitor_table.
- * Note: for VMX guest, only BSP need do this free.
*/
- if (!(VMX_DOMAIN(v) && v->vcpu_id)) {
- mfn = pagetable_get_pfn(v->arch.monitor_table);
- unmap_domain_page(v->arch.monitor_vtable);
- free_domheap_page(&frame_table[mfn]);
- }
+ mfn = pagetable_get_pfn(v->arch.monitor_table);
+ unmap_domain_page(v->arch.monitor_vtable);
+ free_domheap_page(&frame_table[mfn]);
+
v->arch.monitor_table = mk_pagetable(0);
v->arch.monitor_vtable = 0;
}
@@ -396,18 +394,15 @@
/*
* Then free monitor_table.
- * Note: for VMX guest, only BSP need do this free.
*/
- if (!(VMX_DOMAIN(v) && v->vcpu_id)) {
- mfn = pagetable_get_pfn(v->arch.monitor_table);
- unmap_domain_page(v->arch.monitor_vtable);
- free_domheap_page(&frame_table[mfn]);
- }
+ mfn = pagetable_get_pfn(v->arch.monitor_table);
+ unmap_domain_page(v->arch.monitor_vtable);
+ free_domheap_page(&frame_table[mfn]);
v->arch.monitor_table = mk_pagetable(0);
v->arch.monitor_vtable = 0;
}
-#endif
+#endif
static void
shadow_free_snapshot(struct domain *d, struct out_of_sync_entry *entry)
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] In shadow-external mode, every VCPU must free its own,
Xen patchbot -unstable <=
|
|
|
|
|