[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] Fix PAE-mode HVM guests with the new shadow code.
# HG changeset patch # User Steven Hand <steven@xxxxxxxxxxxxx> # Node ID 28824bd2701c59ae6d6ecda80043986f73d199f2 # Parent f790546ecfda03193a4b8983f7bb6b0f65924603 Fix PAE-mode HVM guests with the new shadow code. Signed-off-by: Steven Hand <steven@xxxxxxxxxxxxx> --- xen/arch/x86/mm/shadow/multi.c | 14 ++++++++++++-- 1 files changed, 12 insertions(+), 2 deletions(-) diff -r f790546ecfda -r 28824bd2701c xen/arch/x86/mm/shadow/multi.c --- a/xen/arch/x86/mm/shadow/multi.c Mon Aug 28 20:22:56 2006 +0100 +++ b/xen/arch/x86/mm/shadow/multi.c Mon Aug 28 21:25:13 2006 +0100 @@ -2543,6 +2543,16 @@ static int validate_gl3e(struct vcpu *v, perfc_incrc(shadow_validate_gl3e_calls); +#if (SHADOW_PAGING_LEVELS == 3) && (GUEST_PAGING_LEVELS == 3) + { + /* If we've updated a subshadow which is unreferenced then + we don't care what value is being written - bail. */ + struct pae_l3_bookkeeping *info = sl3p_to_info(se); + if(!info->refcount) + return result; + } +#endif + if ( guest_l3e_get_flags(*new_gl3e) & _PAGE_PRESENT ) { gfn_t gl2gfn = guest_l3e_get_gfn(*new_gl3e); @@ -2634,7 +2644,7 @@ static int validate_gl1e(struct vcpu *v, /**************************************************************************/ -/* Functions which translate and install a the shadows of arbitrary guest +/* Functions which translate and install the shadows of arbitrary guest * entries that we have just seen the guest write. */ @@ -2934,7 +2944,7 @@ static int sh_page_fault(struct vcpu *v, && shadow_vcpu_mode_translate(v) && mmio_space(gfn_to_paddr(gfn)) ); - /* For MMIO, the shadow holds the *gfn*; for normal accesses, if holds + /* For MMIO, the shadow holds the *gfn*; for normal accesses, it holds * the equivalent mfn. */ if ( mmio ) gmfn = _mfn(gfn_x(gfn)); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |