Home
last modified time | relevance | path

Searched refs:encl_mm (Results 1 – 3 of 3) sorted by relevance

/arch/x86/kernel/cpu/sgx/
Dencl.c609 struct sgx_encl_mm *encl_mm = container_of(mn, struct sgx_encl_mm, mmu_notifier); in sgx_mmu_notifier_release() local
616 spin_lock(&encl_mm->encl->mm_lock); in sgx_mmu_notifier_release()
617 list_for_each_entry(tmp, &encl_mm->encl->mm_list, list) { in sgx_mmu_notifier_release()
618 if (tmp == encl_mm) { in sgx_mmu_notifier_release()
619 list_del_rcu(&encl_mm->list); in sgx_mmu_notifier_release()
623 spin_unlock(&encl_mm->encl->mm_lock); in sgx_mmu_notifier_release()
625 if (tmp == encl_mm) { in sgx_mmu_notifier_release()
626 synchronize_srcu(&encl_mm->encl->srcu); in sgx_mmu_notifier_release()
633 struct sgx_encl_mm *encl_mm = container_of(mn, struct sgx_encl_mm, mmu_notifier); in sgx_mmu_notifier_free() local
636 kref_put(&encl_mm->encl->refcount, sgx_encl_release); in sgx_mmu_notifier_free()
[all …]
Ddriver.c47 struct sgx_encl_mm *encl_mm; in sgx_release() local
59 encl_mm = NULL; in sgx_release()
61 encl_mm = list_first_entry(&encl->mm_list, in sgx_release()
63 list_del_rcu(&encl_mm->list); in sgx_release()
69 if (!encl_mm) in sgx_release()
73 mmu_notifier_unregister(&encl_mm->mmu_notifier, encl_mm->mm); in sgx_release()
74 kfree(encl_mm); in sgx_release()
Dmain.c92 struct sgx_encl_mm *encl_mm; in sgx_reclaimer_age() local
98 list_for_each_entry_rcu(encl_mm, &encl->mm_list, list) { in sgx_reclaimer_age()
99 if (!mmget_not_zero(encl_mm->mm)) in sgx_reclaimer_age()
102 mmap_read_lock(encl_mm->mm); in sgx_reclaimer_age()
103 ret = !sgx_encl_test_and_clear_young(encl_mm->mm, page); in sgx_reclaimer_age()
104 mmap_read_unlock(encl_mm->mm); in sgx_reclaimer_age()
106 mmput_async(encl_mm->mm); in sgx_reclaimer_age()
126 struct sgx_encl_mm *encl_mm; in sgx_reclaimer_block() local
138 list_for_each_entry_rcu(encl_mm, &encl->mm_list, list) { in sgx_reclaimer_block()
139 if (!mmget_not_zero(encl_mm->mm)) in sgx_reclaimer_block()
[all …]