|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-3.2-testing] x86/mm: Use l1e_get_pfn() in destroy_g
# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1224178010 -3600
# Node ID 988ca65bb09f2736661b3e26d2821b605974e59a
# Parent 0f94971c87e68f54ccecce76e9fb926a1a42e4cc
x86/mm: Use l1e_get_pfn() in destroy_grant_pte_mapping().
On x86_64 system, (pte >> PAGE_SHIFT) is not always equal to page
frame number because high bits (63:52) of pte may be used as
flags. This patch corrects the conversion and errors as below
disappear when applied.
(XEN) mm.c:3074:d0 PTE entry 200000a2ec6167 for address a1f09958
doesn't match frame a2ec6
Signed-off-by: Yosuke Iwamatsu <y-iwamatsu@xxxxxxxxxxxxx>
xen-unstable changeset: 18580:d1e57d593614
xen-unstable date: Thu Oct 09 10:15:30 2008 +0100
---
xen/arch/x86/mm.c | 2 +-
1 files changed, 1 insertion(+), 1 deletion(-)
diff -r 0f94971c87e6 -r 988ca65bb09f xen/arch/x86/mm.c
--- a/xen/arch/x86/mm.c Thu Oct 16 18:26:15 2008 +0100
+++ b/xen/arch/x86/mm.c Thu Oct 16 18:26:50 2008 +0100
@@ -2718,7 +2718,7 @@ static int destroy_grant_pte_mapping(
}
/* Check that the virtual address supplied is actually mapped to frame. */
- if ( unlikely((l1e_get_intpte(ol1e) >> PAGE_SHIFT) != frame) )
+ if ( unlikely(l1e_get_pfn(ol1e) != frame) )
{
MEM_LOG("PTE entry %lx for address %"PRIx64" doesn't match frame %lx",
(unsigned long)l1e_get_intpte(ol1e), addr, frame);
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] [xen-3.2-testing] x86/mm: Use l1e_get_pfn() in destroy_grant_pte_mapping().,
Xen patchbot-3.2-testing <=
|
|
|
|
|