[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [XEN] Fix the "early unshadow" optimization to look at the entire pte.
# HG changeset patch # User George Dunlap <dunlapg@xxxxxxxxx> # Node ID 680b37789200cca3f076b5be623a7423e64711cb # Parent ade94aa072c51e7b0834405569436ab1eb334d9a [XEN] Fix the "early unshadow" optimization to look at the entire pte. The optimization is designed to detect pagetable destruction, but re-uses the pagetable entries to store data under certain conditions (paging, zeroing, &c); sometimes the lower 8 bits are 0. These "false positives" cause unnecessary shadowing and unshadowing. Signed-off-by: George Dunlap <gdunlap@xxxxxxxxxxxxx> --- xen/arch/x86/mm/shadow/multi.c | 2 +- 1 files changed, 1 insertion(+), 1 deletion(-) diff -r ade94aa072c5 -r 680b37789200 xen/arch/x86/mm/shadow/multi.c --- a/xen/arch/x86/mm/shadow/multi.c Tue Nov 14 11:57:53 2006 +0000 +++ b/xen/arch/x86/mm/shadow/multi.c Tue Nov 14 11:21:26 2006 -0500 @@ -3778,7 +3778,7 @@ sh_x86_emulate_write(struct vcpu *v, uns shadow_validate_guest_pt_write(v, mfn, addr, bytes_on_page); bytes -= bytes_on_page; /* If we are writing zeros to this page, might want to unshadow */ - if ( *(u8 *)addr == 0 ) + if ( *(u32 *)addr == 0 ) check_for_early_unshadow(v, mfn); sh_unmap_domain_page(addr); } _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |