Lines Matching refs:range
164 static inline struct page *hmm_pfn_to_page(const struct hmm_range *range, in hmm_pfn_to_page() argument
167 if (pfn == range->values[HMM_PFN_NONE]) in hmm_pfn_to_page()
169 if (pfn == range->values[HMM_PFN_ERROR]) in hmm_pfn_to_page()
171 if (pfn == range->values[HMM_PFN_SPECIAL]) in hmm_pfn_to_page()
173 if (!(pfn & range->flags[HMM_PFN_VALID])) in hmm_pfn_to_page()
175 return pfn_to_page(pfn >> range->pfn_shift); in hmm_pfn_to_page()
184 static inline unsigned long hmm_pfn_to_pfn(const struct hmm_range *range, in hmm_pfn_to_pfn() argument
187 if (pfn == range->values[HMM_PFN_NONE]) in hmm_pfn_to_pfn()
189 if (pfn == range->values[HMM_PFN_ERROR]) in hmm_pfn_to_pfn()
191 if (pfn == range->values[HMM_PFN_SPECIAL]) in hmm_pfn_to_pfn()
193 if (!(pfn & range->flags[HMM_PFN_VALID])) in hmm_pfn_to_pfn()
195 return (pfn >> range->pfn_shift); in hmm_pfn_to_pfn()
204 static inline uint64_t hmm_pfn_from_page(const struct hmm_range *range, in hmm_pfn_from_page() argument
207 return (page_to_pfn(page) << range->pfn_shift) | in hmm_pfn_from_page()
208 range->flags[HMM_PFN_VALID]; in hmm_pfn_from_page()
217 static inline uint64_t hmm_pfn_from_pfn(const struct hmm_range *range, in hmm_pfn_from_pfn() argument
220 return (pfn << range->pfn_shift) | in hmm_pfn_from_pfn()
221 range->flags[HMM_PFN_VALID]; in hmm_pfn_from_pfn()
356 int hmm_vma_get_pfns(struct hmm_range *range);
357 bool hmm_vma_range_done(struct hmm_range *range);
378 int hmm_vma_fault(struct hmm_range *range, bool block);