From: Steven Hand Date: Thu, 17 Aug 2006 19:30:05 +0000 (+0100) Subject: Fix live migration w/ shadow2. X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~15710^2~45 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=269ae0f7c0aa496a91aa060a2c5b81ef04fc096f;p=xen.git Fix live migration w/ shadow2. Signed-off-by: Steven Hand --- diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c index 7a5d2f868a..b25fa9d05c 100644 --- a/xen/arch/x86/traps.c +++ b/xen/arch/x86/traps.c @@ -890,8 +890,9 @@ static int fixup_page_fault(unsigned long addr, struct cpu_user_regs *regs) if ( VM_ASSIST(d, VMASST_TYPE_writable_pagetables) && guest_kernel_mode(v, regs) && - ((regs->error_code & (PGERR_write_access|PGERR_page_present)) == - (PGERR_write_access|PGERR_page_present)) && + /* Do not check if access-protection fault since the page may + legitimately be not present in shadow page tables */ + ((regs->error_code & PGERR_write_access) == PGERR_write_access) && ptwr_do_page_fault(d, addr, regs) ) return EXCRET_fault_fixed;