P2M_PER_PAGE
return pfn / (P2M_MID_PER_PAGE * P2M_PER_PAGE);
return (pfn / P2M_PER_PAGE) % P2M_MID_PER_PAGE;
for (i = 0; i < P2M_PER_PAGE; i++)
for (i = 0; i < P2M_PER_PAGE; i++)
pfn += P2M_PER_PAGE) {
pfn += (P2M_MID_PER_PAGE - 1) * P2M_PER_PAGE;
xen_p2m_size = ALIGN(xen_start_info->nr_pages, P2M_PER_PAGE);
chunk = (pfn & (P2M_PER_PAGE * P2M_MID_PER_PAGE - 1)) ?
P2M_PER_PAGE : P2M_PER_PAGE * P2M_MID_PER_PAGE;
chunk = P2M_PER_PAGE;
if (chunk == P2M_PER_PAGE) {
p2m_init_identity(p2m, pfn & ~(P2M_PER_PAGE - 1));
xen_p2m_last_pfn = ALIGN(pfn + 1, P2M_PER_PAGE);
#define MAX_P2M_PFN (P2M_TOP_PER_PAGE * P2M_MID_PER_PAGE * P2M_PER_PAGE)
#define REMAP_SIZE (P2M_PER_PAGE - 3)