Lines Matching refs:notifier

257 		container_of(mn, struct nouveau_svmm, notifier);  in nouveau_svmm_invalidate_range_start()
295 kfree(container_of(mn, struct nouveau_svmm, notifier)); in nouveau_svmm_free_notifier()
311 mmu_notifier_put(&svmm->notifier); in nouveau_svmm_fini()
360 svmm->notifier.ops = &nouveau_mn_ops; in nouveau_svmm_init()
361 ret = __mmu_notifier_register(&svmm->notifier, current->mm); in nouveau_svmm_init()
503 struct mmu_interval_notifier notifier; member
512 container_of(mni, struct svm_notifier, notifier); in nouveau_svm_range_invalidate()
589 struct svm_notifier *notifier) in nouveau_atomic_range_fault() argument
593 struct mm_struct *mm = svmm->notifier.mm; in nouveau_atomic_range_fault()
599 ret = mmu_interval_notifier_insert(&notifier->notifier, mm, in nouveau_atomic_range_fault()
611 notifier_seq = mmu_interval_read_begin(&notifier->notifier); in nouveau_atomic_range_fault()
622 if (!mmu_interval_read_retry(&notifier->notifier, in nouveau_atomic_range_fault()
645 mmu_interval_notifier_remove(&notifier->notifier); in nouveau_atomic_range_fault()
653 struct svm_notifier *notifier) in nouveau_range_fault() argument
660 .notifier = &notifier->notifier, in nouveau_range_fault()
665 struct mm_struct *mm = svmm->notifier.mm; in nouveau_range_fault()
668 ret = mmu_interval_notifier_insert(&notifier->notifier, mm, in nouveau_range_fault()
674 range.start = notifier->notifier.interval_tree.start; in nouveau_range_fault()
675 range.end = notifier->notifier.interval_tree.last + 1; in nouveau_range_fault()
683 range.notifier_seq = mmu_interval_read_begin(range.notifier); in nouveau_range_fault()
694 if (mmu_interval_read_retry(range.notifier, in nouveau_range_fault()
708 mmu_interval_notifier_remove(&notifier->notifier); in nouveau_range_fault()
781 struct svm_notifier notifier; in nouveau_svm_fault() local
826 mm = svmm->notifier.mm; in nouveau_svm_fault()
832 notifier.svmm = svmm; in nouveau_svm_fault()
836 &notifier); in nouveau_svm_fault()
840 &notifier); in nouveau_svm_fault()