Lines Matching refs:encl_page
175 struct sgx_encl_page *encl_page; in sgx_encl_page_alloc() local
178 encl_page = kzalloc(sizeof(*encl_page), GFP_KERNEL); in sgx_encl_page_alloc()
179 if (!encl_page) in sgx_encl_page_alloc()
182 encl_page->desc = encl->base + offset; in sgx_encl_page_alloc()
183 encl_page->encl = encl; in sgx_encl_page_alloc()
198 encl_page->vm_max_prot_bits = calc_vm_prot_bits(prot, 0); in sgx_encl_page_alloc()
200 return encl_page; in sgx_encl_page_alloc()
231 struct sgx_encl_page *encl_page, in __sgx_encl_add_page() argument
253 pginfo.addr = encl_page->desc & PAGE_MASK; in __sgx_encl_add_page()
294 struct sgx_encl_page *encl_page; in sgx_encl_add_page() local
299 encl_page = sgx_encl_page_alloc(encl, offset, secinfo->flags); in sgx_encl_add_page()
300 if (IS_ERR(encl_page)) in sgx_encl_add_page()
301 return PTR_ERR(encl_page); in sgx_encl_add_page()
303 epc_page = sgx_alloc_epc_page(encl_page, true); in sgx_encl_add_page()
305 kfree(encl_page); in sgx_encl_add_page()
330 ret = xa_insert(&encl->page_array, PFN_DOWN(encl_page->desc), in sgx_encl_add_page()
331 encl_page, GFP_KERNEL); in sgx_encl_add_page()
335 ret = __sgx_encl_add_page(encl, encl_page, epc_page, secinfo, in sgx_encl_add_page()
345 encl_page->encl = encl; in sgx_encl_add_page()
346 encl_page->epc_page = epc_page; in sgx_encl_add_page()
355 sgx_mark_page_reclaimable(encl_page->epc_page); in sgx_encl_add_page()
361 xa_erase(&encl->page_array, PFN_DOWN(encl_page->desc)); in sgx_encl_add_page()
370 kfree(encl_page); in sgx_encl_add_page()