hmm_range
struct hmm_range range;
struct hmm_range;
hmm_pfn_to_page(e->range->hmm_range.hmm_pfns[i])) {
struct hmm_range *hmm_range = &range->hmm_range;
hmm_range->notifier = notifier;
hmm_range->default_flags = HMM_PFN_REQ_FAULT;
hmm_range->default_flags |= HMM_PFN_REQ_WRITE;
hmm_range->hmm_pfns = pfns;
hmm_range->start = start;
hmm_range->dev_private_owner = owner;
hmm_range->notifier_seq = mmu_interval_read_begin(notifier);
hmm_range->end = min(hmm_range->start + max_bytes, end);
hmm_range->start, hmm_range->end);
r = hmm_range_fault(hmm_range);
if (hmm_range->end == end)
hmm_range->hmm_pfns += max_bytes >> PAGE_SHIFT;
hmm_range->start = hmm_range->end;
} while (hmm_range->end < end);
hmm_range->start = start;
hmm_range->hmm_pfns = pfns;
hmm_range->hmm_pfns = NULL;
return !mmu_interval_read_retry(range->hmm_range.notifier,
range->hmm_range.notifier_seq);
kvfree(range->hmm_range.hmm_pfns);
struct hmm_range hmm_range;
ttm->pages[i] = range ? hmm_pfn_to_page(range->hmm_range.hmm_pfns[i]) : NULL;
struct hmm_range;
range->hmm_range.hmm_pfns);
struct hmm_range hmm_range = {
hmm_range.notifier_seq = mmu_interval_read_begin(notifier);
hmm_range.hmm_pfns = pfns;
err = hmm_range_fault(&hmm_range);
hmm_range.notifier_seq =
if (mmu_interval_read_retry(notifier, hmm_range.notifier_seq)) {
svm_pages->notifier_seq = hmm_range.notifier_seq;
struct hmm_range hmm_range = {
hmm_range.hmm_pfns = pfns;
hmm_range.notifier_seq = mmu_interval_read_begin(notifier);
err = hmm_range_fault(&hmm_range);
struct hmm_range hmm_range = {
hmm_range.notifier_seq = mmu_interval_read_begin(¬ifier->notifier);
hmm_range.hmm_pfns = pfns;
err = hmm_range_fault(&hmm_range);
hmm_range.notifier_seq =
struct hmm_range hmm_range = {
hmm_range.hmm_pfns = pfns;
hmm_range.notifier_seq = mmu_interval_read_begin(notifier);
err = hmm_range_fault(&hmm_range);
hmm_range.notifier_seq =
if (mmu_interval_read_retry(notifier, hmm_range.notifier_seq)) {
struct hmm_range;
struct hmm_range *range,
struct hmm_range range = {
struct hmm_range *range)
struct hmm_range range = {
struct hmm_range range = {};
int hmm_range_fault(struct hmm_range *range);
static void dmirror_mkentry(struct dmirror *dmirror, struct hmm_range *range,
struct hmm_range *range,
struct hmm_range range = {
static int dmirror_do_fault(struct dmirror *dmirror, struct hmm_range *range)
struct hmm_range *range)
struct hmm_range range = {
struct hmm_range *range = hmm_vma_walk->range;
struct hmm_range *range = hmm_vma_walk->range;
struct hmm_range *range = hmm_vma_walk->range;
static inline unsigned long pmd_to_hmm_pfn_flags(struct hmm_range *range,
struct hmm_range *range = hmm_vma_walk->range;
static inline unsigned long pte_to_hmm_pfn_flags(struct hmm_range *range,
struct hmm_range *range = hmm_vma_walk->range;
struct hmm_range *range;
struct hmm_range *range = hmm_vma_walk->range;
struct hmm_range *range = hmm_vma_walk->range;
struct hmm_range *range = hmm_vma_walk->range;
static inline unsigned long pud_to_hmm_pfn_flags(struct hmm_range *range,
struct hmm_range *range = hmm_vma_walk->range;
struct hmm_range *range, unsigned long cpu_flags)
struct hmm_range *range = hmm_vma_walk->range;
struct hmm_range *range = hmm_vma_walk->range;
int hmm_range_fault(struct hmm_range *range)