aboutsummaryrefslogtreecommitdiffstats
path: root/xen
diff options
context:
space:
mode:
authorAndres Lagar-Cavilla <andres@lagarcavilla.org>2012-01-19 10:42:42 +0000
committerAndres Lagar-Cavilla <andres@lagarcavilla.org>2012-01-19 10:42:42 +0000
commit9c5f0457b2fff90b5004b5fdca2c620ca7904e5f (patch)
treea4679551ac3fc47593657d9883b798a470eba96a /xen
parent3643a961195f76ba849a213628c1979240e6fbdd (diff)
downloadxen-9c5f0457b2fff90b5004b5fdca2c620ca7904e5f.tar.gz
xen-9c5f0457b2fff90b5004b5fdca2c620ca7904e5f.tar.bz2
xen-9c5f0457b2fff90b5004b5fdca2c620ca7904e5f.zip
x86/mm: Don't ASSERT() for a valid mfn on paged p2m entries in guest_physmap_ad
Signed-off-by: Adin Scannell <adin@scannell.ca> Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org> Acked-by: Tim Deegan <tim@xen.org> Committed-by: Tim Deegan <tim@xen.org>
Diffstat (limited to 'xen')
-rw-r--r--xen/arch/x86/mm/p2m.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/xen/arch/x86/mm/p2m.c b/xen/arch/x86/mm/p2m.c
index 91851bb883..4a0ca8bb73 100644
--- a/xen/arch/x86/mm/p2m.c
+++ b/xen/arch/x86/mm/p2m.c
@@ -489,7 +489,7 @@ guest_physmap_add_entry(struct domain *d, unsigned long gfn,
return -EINVAL;
}
- else if ( p2m_is_ram(ot) )
+ else if ( p2m_is_ram(ot) && !p2m_is_paged(ot) )
{
ASSERT(mfn_valid(omfn));
set_gpfn_from_mfn(mfn_x(omfn), INVALID_M2P_ENTRY);
@@ -514,7 +514,7 @@ guest_physmap_add_entry(struct domain *d, unsigned long gfn,
P2M_DEBUG("aliased! mfn=%#lx, old gfn=%#lx, new gfn=%#lx\n",
mfn + i, ogfn, gfn + i);
omfn = p2m->get_entry(p2m, ogfn, &ot, &a, p2m_query, NULL);
- if ( p2m_is_ram(ot) )
+ if ( p2m_is_ram(ot) && !p2m_is_paged(ot) )
{
ASSERT(mfn_valid(omfn));
P2M_DEBUG("old gfn=%#lx -> mfn %#lx\n",