# HG changeset patch
# User Steven Hand <steven@xxxxxxxxxxxxx>
# Node ID 596b0e4fbef4069bfb3ee9807f2ccfdd65052c46
# Parent a151311fa9c79c61b20797246690fb16a3a26651
Simplify + fix previous cset (remove_all_shadows() is indeed required :-)
Signed-off-by: Steven Hand <steven@xxxxxxxxxxxxx>
---
xen/arch/x86/mm.c | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
diff -r a151311fa9c7 -r 596b0e4fbef4 xen/arch/x86/mm.c
--- a/xen/arch/x86/mm.c Wed Sep 20 16:22:06 2006 +0100
+++ b/xen/arch/x86/mm.c Wed Sep 20 16:52:15 2006 +0100
@@ -1622,8 +1622,7 @@ void put_page_type(struct page_info *pag
if (shadow_lock_is_acquired(owner)) /* this is a shadow page */
return;
- if (!shadow_mode_translate(owner))
- mark_dirty(owner, page_to_mfn(page));
+ mark_dirty(owner, page_to_mfn(page));
}
}
}
@@ -1985,8 +1984,7 @@ int do_mmuext_op(
break;
}
- if ( shadow_mode_enabled(d) )
- mark_dirty(d, mfn);
+ mark_dirty(d, mfn);
break;
@@ -2005,7 +2003,12 @@ int do_mmuext_op(
put_page_and_type(page);
put_page(page);
if ( shadow_mode_enabled(d) )
+ {
+ shadow_lock(d);
+ shadow_remove_all_shadows(v, _mfn(mfn));
+ shadow_unlock(d);
mark_dirty(d, mfn);
+ }
}
else
{
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|