Lines Matching refs:mid_mfn
538 unsigned long *top_mfn_p, *mid_mfn; in xen_alloc_p2m_entry() local
559 mid_mfn = READ_ONCE(p2m_top_mfn_p[topidx]); in xen_alloc_p2m_entry()
561 BUG_ON(virt_to_mfn(mid_mfn) != *top_mfn_p); in xen_alloc_p2m_entry()
563 if (mid_mfn == p2m_mid_missing_mfn) { in xen_alloc_p2m_entry()
569 mid_mfn = alloc_p2m_page(); in xen_alloc_p2m_entry()
570 if (!mid_mfn) in xen_alloc_p2m_entry()
573 p2m_mid_mfn_init(mid_mfn, p2m_missing); in xen_alloc_p2m_entry()
576 mid_mfn_mfn = virt_to_mfn(mid_mfn); in xen_alloc_p2m_entry()
579 free_p2m_page(mid_mfn); in xen_alloc_p2m_entry()
580 mid_mfn = mfn_to_virt(old_mfn); in xen_alloc_p2m_entry()
582 p2m_top_mfn_p[topidx] = mid_mfn; in xen_alloc_p2m_entry()
586 mid_mfn = NULL; in xen_alloc_p2m_entry()
613 if (mid_mfn) in xen_alloc_p2m_entry()
614 mid_mfn[p2m_mid_index(pfn)] = virt_to_mfn(p2m); in xen_alloc_p2m_entry()