|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-unstable] [XEN] Remove code from writable-pagetable
# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 8eab9f3cdb1ad1bf84e1f325a15dfdb9774a8ac8
# Parent 7713276d159e85bb2339e305560c80ed27172b7a
[XEN] Remove code from writable-pagetable emulation path which
does not appear to be necessary. Replace with assertions for now,
pending total removal or me being proved wrong.
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
---
xen/arch/x86/mm.c | 7 +++++++
1 files changed, 7 insertions(+)
diff -r 7713276d159e -r 8eab9f3cdb1a xen/arch/x86/mm.c
--- a/xen/arch/x86/mm.c Sun Jun 18 19:44:13 2006 +0100
+++ b/xen/arch/x86/mm.c Sun Jun 18 19:49:31 2006 +0100
@@ -3366,6 +3366,7 @@ static int ptwr_emulated_update(
old |= full;
}
+#if 0 /* XXX KAF: I don't think this can happen. */
/*
* We must not emulate an update to a PTE that is temporarily marked
* writable by the batched ptwr logic, else we can corrupt page refcnts!
@@ -3376,6 +3377,12 @@ static int ptwr_emulated_update(
if ( ((l1va = d->arch.ptwr[PTWR_PT_INACTIVE].l1va) != 0) &&
(l1_linear_offset(l1va) == l1_linear_offset(addr)) )
ptwr_flush(d, PTWR_PT_INACTIVE);
+#else
+ ASSERT(((l1va = d->arch.ptwr[PTWR_PT_ACTIVE].l1va) == 0) ||
+ (l1_linear_offset(l1va) != l1_linear_offset(addr)));
+ ASSERT(((l1va = d->arch.ptwr[PTWR_PT_INACTIVE].l1va) == 0) ||
+ (l1_linear_offset(l1va) != l1_linear_offset(addr)));
+#endif
/* Read the PTE that maps the page being updated. */
if ( __copy_from_user(&pte, &linear_pg_table[l1_linear_offset(addr)],
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] [xen-unstable] [XEN] Remove code from writable-pagetable emulation path which,
Xen patchbot-unstable <=
|
|
|
|
|