Lines Matching refs:mid_mfn
534 unsigned long *top_mfn_p, *mid_mfn; in xen_alloc_p2m_entry() local
555 mid_mfn = READ_ONCE(p2m_top_mfn_p[topidx]); in xen_alloc_p2m_entry()
557 BUG_ON(virt_to_mfn(mid_mfn) != *top_mfn_p); in xen_alloc_p2m_entry()
559 if (mid_mfn == p2m_mid_missing_mfn) { in xen_alloc_p2m_entry()
565 mid_mfn = alloc_p2m_page(); in xen_alloc_p2m_entry()
566 if (!mid_mfn) in xen_alloc_p2m_entry()
569 p2m_mid_mfn_init(mid_mfn, p2m_missing); in xen_alloc_p2m_entry()
572 mid_mfn_mfn = virt_to_mfn(mid_mfn); in xen_alloc_p2m_entry()
575 free_p2m_page(mid_mfn); in xen_alloc_p2m_entry()
576 mid_mfn = mfn_to_virt(old_mfn); in xen_alloc_p2m_entry()
578 p2m_top_mfn_p[topidx] = mid_mfn; in xen_alloc_p2m_entry()
582 mid_mfn = NULL; in xen_alloc_p2m_entry()
609 if (mid_mfn) in xen_alloc_p2m_entry()
610 mid_mfn[p2m_mid_index(pfn)] = virt_to_mfn(p2m); in xen_alloc_p2m_entry()