Lines Matching refs:pfn
8 #include <linux/pfn.h>
56 extern int xen_alloc_p2m_entry(unsigned long pfn);
58 extern unsigned long get_phys_to_machine(unsigned long pfn);
59 extern bool set_phys_to_machine(unsigned long pfn, unsigned long mfn);
60 extern bool __set_phys_to_machine(unsigned long pfn, unsigned long mfn);
141 static inline unsigned long __pfn_to_mfn(unsigned long pfn)
145 if (pfn < xen_p2m_size)
146 mfn = xen_p2m_addr[pfn];
147 else if (unlikely(pfn < xen_max_p2m_pfn))
148 return get_phys_to_machine(pfn);
150 return IDENTITY_FRAME(pfn);
153 return get_phys_to_machine(pfn);
158 static inline unsigned long __pfn_to_mfn(unsigned long pfn)
160 return pfn;
164 static inline unsigned long pfn_to_mfn(unsigned long pfn)
174 return pfn;
176 mfn = __pfn_to_mfn(pfn);
184 static inline int phys_to_machine_mapping_valid(unsigned long pfn)
189 return __pfn_to_mfn(pfn) != INVALID_P2M_ENTRY;
194 unsigned long pfn;
205 ret = xen_safe_read_ulong(&machine_to_phys_mapping[mfn], &pfn);
209 return pfn;
214 unsigned long pfn;
224 pfn = mfn_to_pfn_no_overrides(mfn);
225 if (__pfn_to_mfn(pfn) != mfn)
226 pfn = ~0;
229 * pfn is ~0 if there are no entries in the m2p for mfn or the
232 if (pfn == ~0 && __pfn_to_mfn(mfn) == IDENTITY_FRAME(mfn))
233 pfn = mfn;
235 return pfn;
251 static inline unsigned long pfn_to_gfn(unsigned long pfn)
254 return pfn;
256 return pfn_to_mfn(pfn);
268 #define pfn_to_bfn(pfn) pfn_to_gfn(pfn)
293 unsigned long pfn;
298 pfn = mfn_to_pfn(mfn);
299 if (__pfn_to_mfn(pfn) != mfn)
301 return pfn;