From: Keir Fraser Date: Tue, 5 May 2009 12:47:27 +0000 (+0100) Subject: x86 shadow: fix audit mode. X-Git-Tag: 3.3.2-rc1~9 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=281689c72b1ebfac9c62d59a3d66078d1e120c4e;p=people%2Fvhanquez%2Fxen.git x86 shadow: fix audit mode. Splintered L1s can have the dirty bit clean because of vram tracking. Signed-off-by: Gianluca Guida xen-unstable changeset: 19584:86f659545f17 xen-unstable date: Wed Apr 29 11:53:23 2009 +0100 --- diff --git a/xen/arch/x86/mm/shadow/multi.c b/xen/arch/x86/mm/shadow/multi.c index 694cf229a..0eb6199f9 100644 --- a/xen/arch/x86/mm/shadow/multi.c +++ b/xen/arch/x86/mm/shadow/multi.c @@ -5083,6 +5083,9 @@ int sh_audit_fl1_table(struct vcpu *v, mfn_t sl1mfn, mfn_t x) f = shadow_l1e_get_flags(*sl1e); f &= ~(_PAGE_AVAIL0|_PAGE_AVAIL1|_PAGE_AVAIL2); if ( !(f == 0 + || f == (_PAGE_PRESENT|_PAGE_USER|_PAGE_RW| + _PAGE_ACCESSED) + || f == (_PAGE_PRESENT|_PAGE_USER|_PAGE_ACCESSED) || f == (_PAGE_PRESENT|_PAGE_USER|_PAGE_RW| _PAGE_ACCESSED|_PAGE_DIRTY) || f == (_PAGE_PRESENT|_PAGE_USER|_PAGE_ACCESSED|_PAGE_DIRTY)