24 lines
848 B
Diff
24 lines
848 B
Diff
|
# Commit e1ab5c77b44b7bd835a2c032fa4963b36545fdb3
|
||
|
# Date 2013-08-06 17:22:35 +0200
|
||
|
# Author Yang Zhang <yang.z.zhang@Intel.com>
|
||
|
# Committer Jan Beulich <jbeulich@suse.com>
|
||
|
Nested VMX: Flush TLBs and Caches if paging mode changed
|
||
|
|
||
|
According to SDM, if paging mode is changed, then whole TLBs and caches will
|
||
|
be flushed. This is missed in nested handle logic. Also this fixed the issue
|
||
|
that 64 bits windows cannot boot up on top of L1 kvm.
|
||
|
|
||
|
Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
|
||
|
Acked-by: Keir Fraser <keir@xen.org>
|
||
|
|
||
|
--- a/xen/arch/x86/mm/paging.c
|
||
|
+++ b/xen/arch/x86/mm/paging.c
|
||
|
@@ -709,6 +709,7 @@ void paging_update_nestedmode(struct vcp
|
||
|
else
|
||
|
/* TODO: shadow-on-shadow */
|
||
|
v->arch.paging.nestedmode = NULL;
|
||
|
+ hvm_asid_flush_vcpu(v);
|
||
|
}
|
||
|
|
||
|
void paging_write_p2m_entry(struct p2m_domain *p2m, unsigned long gfn,
|