Searched refs:encl (Results 1 - 10 of 10) sorted by relevance

/linux-master/tools/testing/selftests/sgx/
H A Dload.c22 void encl_delete(struct encl *encl) argument
26 if (encl->encl_base)
27 munmap((void *)encl->encl_base, encl->encl_size);
29 if (encl->bin)
30 munmap(encl->bin, encl->bin_size);
32 if (encl->fd)
33 close(encl
44 encl_map_bin(const char *path, struct encl *encl) argument
80 encl_ioc_create(struct encl *encl) argument
106 encl_ioc_add_pages(struct encl *encl, struct encl_segment *seg) argument
137 encl_get_entry(struct encl *encl, const char *symbol) argument
177 encl_load(const char *path, struct encl *encl, unsigned long heap_size) argument
318 encl_map_area(struct encl *encl) argument
339 encl_build(struct encl *encl) argument
[all...]
H A Dmain.h20 struct encl { struct
37 void encl_delete(struct encl *ctx);
38 bool encl_load(const char *path, struct encl *encl, unsigned long heap_size);
39 bool encl_measure(struct encl *encl);
40 bool encl_build(struct encl *encl);
41 uint64_t encl_get_entry(struct encl *encl, cons
[all...]
H A Dmain.c137 static off_t encl_get_tcs_offset(struct encl *encl) argument
141 for (i = 0; i < encl->nr_segments; i++) {
142 struct encl_segment *seg = &encl->segment_tbl[i];
156 static off_t encl_get_data_offset(struct encl *encl) argument
160 for (i = 1; i < encl->nr_segments; i++) {
161 struct encl_segment *seg = &encl->segment_tbl[i];
171 struct encl encl; local
175 setup_test_encl(unsigned long heap_size, struct encl *encl, struct __test_metadata *_metadata) argument
[all...]
H A Dsigstruct.c295 static bool mrenclave_segment(EVP_MD_CTX *ctx, struct encl *encl, argument
314 bool encl_measure(struct encl *encl) argument
318 struct sgx_sigstruct *sigstruct = &encl->sigstruct;
352 if (!mrenclave_ecreate(ctx, encl->src_size))
355 for (i = 0; i < encl->nr_segments; i++) {
356 struct encl_segment *seg = &encl->segment_tbl[i];
358 if (!mrenclave_segment(ctx, encl, seg))
/linux-master/arch/x86/kernel/cpu/sgx/
H A Dencl.c11 #include "encl.h"
15 static int sgx_encl_lookup_backing(struct sgx_encl *encl, unsigned long page_index,
29 * @encl: Enclave to which PCMD page belongs
58 static int reclaimer_writing_to_pcmd(struct sgx_encl *encl, argument
83 if (addr == encl->base + encl->size)
86 entry = xa_load(&encl->page_array, PFN_DOWN(addr));
110 static inline pgoff_t sgx_encl_get_backing_page_pcmd_offset(struct sgx_encl *encl, argument
113 pgoff_t epc_end_off = encl->size + sizeof(struct sgx_secs);
121 static inline void sgx_encl_truncate_backing_page(struct sgx_encl *encl, unsigne argument
137 struct sgx_encl *encl = encl_page->encl; local
216 struct sgx_encl *encl = encl_page->encl; local
243 sgx_encl_load_secs(struct sgx_encl *encl) argument
253 __sgx_encl_load_page(struct sgx_encl *encl, struct sgx_encl_page *entry) argument
280 sgx_encl_load_page_in_vma(struct sgx_encl *encl, unsigned long addr, unsigned long vm_flags) argument
302 sgx_encl_load_page(struct sgx_encl *encl, unsigned long addr) argument
327 sgx_encl_eaug_page(struct vm_area_struct *vma, struct sgx_encl *encl, unsigned long addr) argument
436 struct sgx_encl *encl; local
489 struct sgx_encl *encl = vma->vm_private_data; local
522 sgx_encl_may_map(struct sgx_encl *encl, unsigned long start, unsigned long end, unsigned long vm_flags) argument
576 sgx_encl_debug_read(struct sgx_encl *encl, struct sgx_encl_page *page, unsigned long addr, void *data) argument
590 sgx_encl_debug_write(struct sgx_encl *encl, struct sgx_encl_page *page, unsigned long addr, void *data) argument
606 sgx_encl_reserve_page(struct sgx_encl *encl, unsigned long addr, unsigned long vm_flags) argument
631 struct sgx_encl *encl = vma->vm_private_data; local
702 struct sgx_encl *encl = container_of(ref, struct sgx_encl, refcount); local
815 sgx_encl_find_mm(struct sgx_encl *encl, struct mm_struct *mm) argument
836 sgx_encl_mm_add(struct sgx_encl *encl, struct mm_struct *mm) argument
925 sgx_encl_cpumask(struct sgx_encl *encl) argument
949 sgx_encl_get_backing_page(struct sgx_encl *encl, pgoff_t index) argument
971 __sgx_encl_get_backing(struct sgx_encl *encl, unsigned long page_index, struct sgx_backing *backing) argument
1000 sgx_encl_get_mem_cgroup(struct sgx_encl *encl) argument
1062 sgx_encl_alloc_backing(struct sgx_encl *encl, unsigned long page_index, struct sgx_backing *backing) argument
1094 sgx_encl_lookup_backing(struct sgx_encl *encl, unsigned long page_index, struct sgx_backing *backing) argument
1139 struct sgx_encl *encl = page->encl; local
1158 sgx_encl_page_alloc(struct sgx_encl *encl, unsigned long offset, u64 secinfo_flags) argument
1199 sgx_zap_enclave_ptes(struct sgx_encl *encl, unsigned long addr) argument
[all...]
H A Ddriver.c11 #include "encl.h"
19 struct sgx_encl *encl; local
22 encl = kzalloc(sizeof(*encl), GFP_KERNEL);
23 if (!encl)
26 kref_init(&encl->refcount);
27 xa_init(&encl->page_array);
28 mutex_init(&encl->lock);
29 INIT_LIST_HEAD(&encl->va_pages);
30 INIT_LIST_HEAD(&encl
46 struct sgx_encl *encl = file->private_data; local
86 struct sgx_encl *encl = file->private_data; local
[all...]
H A DMakefile3 encl.o \
H A Dioctl.c17 #include "encl.h"
20 struct sgx_va_page *sgx_encl_grow(struct sgx_encl *encl, bool reclaim) argument
28 if (!(encl->page_cnt % SGX_VA_SLOT_COUNT)) {
40 WARN_ON_ONCE(encl->page_cnt % SGX_VA_SLOT_COUNT);
42 encl->page_cnt++;
46 void sgx_encl_shrink(struct sgx_encl *encl, struct sgx_va_page *va_page) argument
48 encl->page_cnt--;
57 static int sgx_encl_create(struct sgx_encl *encl, struct sgx_secs *secs) argument
67 va_page = sgx_encl_grow(encl, true);
71 list_add(&va_page->list, &encl
147 sgx_ioc_enclave_create(struct sgx_encl *encl, void __user *arg) argument
199 __sgx_encl_add_page(struct sgx_encl *encl, struct sgx_encl_page *encl_page, struct sgx_epc_page *epc_page, struct sgx_secinfo *secinfo, unsigned long src) argument
239 __sgx_encl_extend(struct sgx_encl *encl, struct sgx_epc_page *epc_page) argument
259 sgx_encl_add_page(struct sgx_encl *encl, unsigned long src, unsigned long offset, struct sgx_secinfo *secinfo, unsigned long flags) argument
349 sgx_validate_offset_length(struct sgx_encl *encl, unsigned long offset, unsigned long length) argument
407 sgx_ioc_enclave_add_pages(struct sgx_encl *encl, void __user *arg) argument
484 sgx_encl_init(struct sgx_encl *encl, struct sgx_sigstruct *sigstruct, void *token) argument
592 sgx_ioc_enclave_init(struct sgx_encl *encl, void __user *arg) argument
656 sgx_ioc_enclave_provision(struct sgx_encl *encl, void __user *arg) argument
671 sgx_ioc_sgx2_ready(struct sgx_encl *encl) argument
693 sgx_enclave_etrack(struct sgx_encl *encl) argument
735 sgx_enclave_restrict_permissions(struct sgx_encl *encl, struct sgx_enclave_restrict_permissions *modp) argument
842 sgx_ioc_enclave_restrict_permissions(struct sgx_encl *encl, void __user *arg) argument
890 sgx_enclave_modify_types(struct sgx_encl *encl, struct sgx_enclave_modify_types *modt) argument
1051 sgx_ioc_enclave_modify_types(struct sgx_encl *encl, void __user *arg) argument
1090 sgx_encl_remove_pages(struct sgx_encl *encl, struct sgx_enclave_remove_pages *params) argument
1198 sgx_ioc_enclave_remove_pages(struct sgx_encl *encl, void __user *arg) argument
1227 struct sgx_encl *encl = filep->private_data; local
[all...]
H A Dencl.h33 struct sgx_encl *encl; member in struct:sgx_encl_page
45 struct sgx_encl *encl; member in struct:sgx_encl_mm
103 int sgx_encl_may_map(struct sgx_encl *encl, unsigned long start,
108 int sgx_encl_mm_add(struct sgx_encl *encl, struct mm_struct *mm);
109 const cpumask_t *sgx_encl_cpumask(struct sgx_encl *encl);
110 int sgx_encl_alloc_backing(struct sgx_encl *encl, unsigned long page_index,
115 struct sgx_encl_page *sgx_encl_page_alloc(struct sgx_encl *encl,
118 void sgx_zap_enclave_ptes(struct sgx_encl *encl, unsigned long addr);
124 struct sgx_encl_page *sgx_encl_load_page(struct sgx_encl *encl,
126 struct sgx_va_page *sgx_encl_grow(struct sgx_encl *encl, boo
[all...]
H A Dmain.c18 #include "encl.h"
112 struct sgx_encl *encl = page->encl; local
117 idx = srcu_read_lock(&encl->srcu);
119 list_for_each_entry_rcu(encl_mm, &encl->mm_list, list) {
133 srcu_read_unlock(&encl->srcu, idx);
145 struct sgx_encl *encl = page->encl; local
148 sgx_zap_enclave_ptes(encl, addr);
150 mutex_lock(&encl
201 struct sgx_encl *encl = encl_page->encl; local
254 struct sgx_encl *encl = encl_page->encl; local
[all...]

Completed in 136 milliseconds