Lines Matching refs:mmu_notifier_mm
66 hlist_for_each_entry_rcu(mn, &mm->mmu_notifier_mm->list, hlist) in __mmu_notifier_release()
76 spin_lock(&mm->mmu_notifier_mm->lock); in __mmu_notifier_release()
77 while (unlikely(!hlist_empty(&mm->mmu_notifier_mm->list))) { in __mmu_notifier_release()
78 mn = hlist_entry(mm->mmu_notifier_mm->list.first, in __mmu_notifier_release()
89 spin_unlock(&mm->mmu_notifier_mm->lock); in __mmu_notifier_release()
117 hlist_for_each_entry_rcu(mn, &mm->mmu_notifier_mm->list, hlist) { in __mmu_notifier_clear_flush_young()
133 hlist_for_each_entry_rcu(mn, &mm->mmu_notifier_mm->list, hlist) { in __mmu_notifier_test_young()
152 hlist_for_each_entry_rcu(mn, &mm->mmu_notifier_mm->list, hlist) { in __mmu_notifier_change_pte()
166 hlist_for_each_entry_rcu(mn, &mm->mmu_notifier_mm->list, hlist) { in __mmu_notifier_invalidate_page()
180 hlist_for_each_entry_rcu(mn, &mm->mmu_notifier_mm->list, hlist) { in __mmu_notifier_invalidate_range_start()
195 hlist_for_each_entry_rcu(mn, &mm->mmu_notifier_mm->list, hlist) { in __mmu_notifier_invalidate_range_end()
220 hlist_for_each_entry_rcu(mn, &mm->mmu_notifier_mm->list, hlist) { in __mmu_notifier_invalidate_range()
232 struct mmu_notifier_mm *mmu_notifier_mm; in do_mmu_notifier_register() local
244 mmu_notifier_mm = kmalloc(sizeof(struct mmu_notifier_mm), GFP_KERNEL); in do_mmu_notifier_register()
245 if (unlikely(!mmu_notifier_mm)) in do_mmu_notifier_register()
255 INIT_HLIST_HEAD(&mmu_notifier_mm->list); in do_mmu_notifier_register()
256 spin_lock_init(&mmu_notifier_mm->lock); in do_mmu_notifier_register()
258 mm->mmu_notifier_mm = mmu_notifier_mm; in do_mmu_notifier_register()
259 mmu_notifier_mm = NULL; in do_mmu_notifier_register()
271 spin_lock(&mm->mmu_notifier_mm->lock); in do_mmu_notifier_register()
272 hlist_add_head(&mn->hlist, &mm->mmu_notifier_mm->list); in do_mmu_notifier_register()
273 spin_unlock(&mm->mmu_notifier_mm->lock); in do_mmu_notifier_register()
279 kfree(mmu_notifier_mm); in do_mmu_notifier_register()
317 BUG_ON(!hlist_empty(&mm->mmu_notifier_mm->list)); in __mmu_notifier_mm_destroy()
318 kfree(mm->mmu_notifier_mm); in __mmu_notifier_mm_destroy()
319 mm->mmu_notifier_mm = LIST_POISON1; /* debug */ in __mmu_notifier_mm_destroy()
352 spin_lock(&mm->mmu_notifier_mm->lock); in mmu_notifier_unregister()
358 spin_unlock(&mm->mmu_notifier_mm->lock); in mmu_notifier_unregister()
379 spin_lock(&mm->mmu_notifier_mm->lock); in mmu_notifier_unregister_no_release()
385 spin_unlock(&mm->mmu_notifier_mm->lock); in mmu_notifier_unregister_no_release()