Lines Matching refs:mfn
47 mfn_t *mfn_list_pages; /* pages that make a table of mfn's */
49 mfn_t *mfn_list_pages_page; /* page of mfn's for mfn_list_pages */
228 kbm_map_ma(pfn_to_pa(xen_info->console.domU.mfn), addr, 0);
250 * Generate the pfn value to use for a foreign mfn.
253 xen_assign_pfn(mfn_t mfn)
266 pfn = mfn_to_pfn_mapping[mfn];
267 if (pfn < mfn_count && mfn_list[pfn] == mfn)
268 panic("xen_assign_pfn() mfn belongs to us");
274 if (mfn == MFN_INVALID)
276 pfn = (pfn_t)mfn | PFN_IS_FOREIGN_MFN;
277 if (pfn == mfn)
278 panic("xen_assign_pfn(mfn) PFN_IS_FOREIGN_MFN bit already set");
288 panic("mfn high bit not set");
302 mfn_t mfn = PTE2MFN(pte, l);
305 return ((pfn_t)mfn | PFN_IS_FOREIGN_MFN);
306 return (mfn_to_pfn(mfn));
331 mfn_to_pfn(mfn_t mfn)
344 if (cached_max_mfn < mfn)
345 return ((pfn_t)mfn | PFN_IS_FOREIGN_MFN);
348 pfn = (pfn_t)mfn | PFN_IS_FOREIGN_MFN;
350 pfn = mfn_to_pfn_mapping[mfn];
353 pfn_to_mfn(pfn) != mfn)
354 pfn = (pfn_t)mfn | PFN_IS_FOREIGN_MFN;
377 mfn_t mfn = pfn_to_mfn(mmu_btop(pa));
379 if (mfn == MFN_INVALID)
381 return (mfn_to_ma(mfn) + (pa & MMU_PAGEOFFSET));
417 reassign_pfn(pfn_t pfn, mfn_t mfn)
427 update_contig_pfnlist(pfn, mfn_list[pfn], mfn);
428 if (mfn == MFN_INVALID) {
432 mfn_list[pfn] = mfn;
442 mfn_list[pfn] = mfn;
444 t.ptr = mfn_to_ma(mfn) | MMU_MACHPHYS_UPDATE;