Lines Matching refs:epc_page

20 			   struct sgx_epc_page *epc_page,  in __sgx_encl_eldu()  argument
49 ret = __eldu(&pginfo, sgx_get_epc_virt_addr(epc_page), in __sgx_encl_eldu()
50 sgx_get_epc_virt_addr(encl_page->va_page->epc_page) + va_offset); in __sgx_encl_eldu()
72 struct sgx_epc_page *epc_page; in sgx_encl_eldu() local
75 epc_page = sgx_alloc_epc_page(encl_page, false); in sgx_encl_eldu()
76 if (IS_ERR(epc_page)) in sgx_encl_eldu()
77 return epc_page; in sgx_encl_eldu()
79 ret = __sgx_encl_eldu(encl_page, epc_page, secs_page); in sgx_encl_eldu()
81 sgx_encl_free_epc_page(epc_page); in sgx_encl_eldu()
88 encl_page->epc_page = epc_page; in sgx_encl_eldu()
90 return epc_page; in sgx_encl_eldu()
98 struct sgx_epc_page *epc_page; in sgx_encl_load_page() local
114 if (entry->epc_page) { in sgx_encl_load_page()
121 if (!(encl->secs.epc_page)) { in sgx_encl_load_page()
122 epc_page = sgx_encl_eldu(&encl->secs, NULL); in sgx_encl_load_page()
123 if (IS_ERR(epc_page)) in sgx_encl_load_page()
124 return ERR_CAST(epc_page); in sgx_encl_load_page()
127 epc_page = sgx_encl_eldu(entry, encl->secs.epc_page); in sgx_encl_load_page()
128 if (IS_ERR(epc_page)) in sgx_encl_load_page()
129 return ERR_CAST(epc_page); in sgx_encl_load_page()
132 sgx_mark_page_reclaimable(entry->epc_page); in sgx_encl_load_page()
168 phys_addr = sgx_get_epc_phys_addr(entry->epc_page); in sgx_vma_fault()
274 ret = __edbgrd(sgx_get_epc_virt_addr(page->epc_page) + offset, data); in sgx_encl_debug_read()
287 ret = __edbgwr(sgx_get_epc_virt_addr(page->epc_page) + offset, data); in sgx_encl_debug_write()
399 if (entry->epc_page) { in sgx_encl_release()
404 if (sgx_unmark_page_reclaimable(entry->epc_page)) in sgx_encl_release()
407 sgx_encl_free_epc_page(entry->epc_page); in sgx_encl_release()
409 entry->epc_page = NULL; in sgx_encl_release()
417 if (!encl->secs_child_cnt && encl->secs.epc_page) { in sgx_encl_release()
418 sgx_encl_free_epc_page(encl->secs.epc_page); in sgx_encl_release()
419 encl->secs.epc_page = NULL; in sgx_encl_release()
426 sgx_encl_free_epc_page(va_page->epc_page); in sgx_encl_release()
439 WARN_ON_ONCE(encl->secs.epc_page); in sgx_encl_release()
679 struct sgx_epc_page *epc_page; in sgx_alloc_va_page() local
682 epc_page = sgx_alloc_epc_page(NULL, true); in sgx_alloc_va_page()
683 if (IS_ERR(epc_page)) in sgx_alloc_va_page()
684 return ERR_CAST(epc_page); in sgx_alloc_va_page()
686 ret = __epa(sgx_get_epc_virt_addr(epc_page)); in sgx_alloc_va_page()
689 sgx_encl_free_epc_page(epc_page); in sgx_alloc_va_page()
693 return epc_page; in sgx_alloc_va_page()