l2_pgentry_t l2e, *l2t;
l1_pgentry_t l1e, *l1t;
unsigned long cr3 = (pgd3val ? pgd3val : dp->vcpu[0]->arch.cr3);
- mfn_t mfn = _mfn(cr3 >> PAGE_SHIFT);
+ mfn_t mfn = maddr_to_mfn(cr3);
DBGP2("vaddr:%lx domid:%d cr3:%lx pgd3:%lx\n", vaddr, dp->domain_id,
cr3, pgd3val);
ASSERT(sh_type_has_up_pointer(d, sp->u.sh.type));
if (sp->up == 0) return 0;
- pmfn = _mfn(sp->up >> PAGE_SHIFT);
+ pmfn = maddr_to_mfn(sp->up);
ASSERT(mfn_valid(pmfn));
vaddr = map_domain_page(pmfn);
ASSERT(vaddr);
sp = mfn_to_page(smfn);
if ( sp->u.sh.count != 1 || !sp->up )
return 0;
- smfn = _mfn(sp->up >> PAGE_SHIFT);
+ smfn = maddr_to_mfn(sp->up);
ASSERT(mfn_valid(smfn));
#if (SHADOW_PAGING_LEVELS == 4)
ASSERT(sh_type_has_up_pointer(d, SH_type_l2_shadow));
if ( sp->u.sh.count != 1 || !sp->up )
return 0;
- smfn = _mfn(sp->up >> PAGE_SHIFT);
+ smfn = maddr_to_mfn(sp->up);
ASSERT(mfn_valid(smfn));
/* up to l4 */
if ( sp->u.sh.count != 1
|| !sh_type_has_up_pointer(d, SH_type_l3_64_shadow) || !sp->up )
return 0;
- smfn = _mfn(sp->up >> PAGE_SHIFT);
+ smfn = maddr_to_mfn(sp->up);
ASSERT(mfn_valid(smfn));
#endif
{
struct page_info *page;
- page = mfn_to_page(entry >> PAGE_SHIFT);
+ page = maddr_to_page(entry);
free_domheap_page(page);
}
if ( old )
{
/* If so move it. */
- mfn_t old_mfn = _mfn(*old >> PAGE_SHIFT);
- mfn_t mfn = _mfn(addr >> PAGE_SHIFT);
+ mfn_t old_mfn = maddr_to_mfn(*old);
+ mfn_t mfn = maddr_to_mfn(addr);
copy_domain_page(mfn, old_mfn);
clear_domain_page(old_mfn);