/barrelfish-master/kernel/include/ |
H A D | paging_generic.h | 30 struct cte *ptable, cslot_t entry, size_t pte_count); 31 errval_t compile_vaddr(struct cte *ptable, size_t entry, genvaddr_t *retvaddr);
|
H A D | syscall.h | 44 sys_map(struct capability *ptable, cslot_t slot, capaddr_t source_root_cptr, 49 sys_copy_remap(struct capability *ptable, cslot_t slot, capaddr_t source_cptr,
|
/barrelfish-master/kernel/arch/x86_32/ |
H A D | debug.c | 24 uint32_t ptable :9; member in struct:lin_addr::__anon74
|
H A D | page_mappings_arch.c | 172 /// Map within a x86_32 ptable 411 // get ptable 412 union x86_32_pdir_entry *ptable = (union x86_32_pdir_entry *)pdir_lv + ptable_index; local 413 union x86_32_ptable_entry *large = (union x86_32_ptable_entry *)ptable; 414 if (!ptable->raw) { continue; } 421 genpaddr_t ptable_gp = ptable->d.base_addr << BASE_PAGE_BITS;
|
/barrelfish-master/usr/tests/nkm/ |
H A D | vnode_inherit.c | 24 struct vnode **ptable); 63 /* get struct vnode for ptable for our region */ 64 struct vnode *ptable = NULL; local 65 err = get_ptable(x86, base, &ptable); 67 assert(ptable); 69 /* allocate a empty ptable */ 74 debug_printf("cloned ptable is at %#"PRIxGENVADDR"\n", cloned_base); 81 /* clone ptable */ 83 err = vnode_inherit(cloned->v.u.vnode.invokable, ptable->v.u.vnode.invokable, 84 0, PTABLE_SIZE, ptable [all...] |
/barrelfish-master/usr/tests/nested_paging_test/ |
H A D | main.c | 48 void *ptable; local 50 err = install_user_managed_pdpt(&base, &ptable); 53 union x86_64_ptable_entry *pdpt = ptable;
|
H A D | nestedpaging.c | 14 errval_t install_user_managed_pdpt(genvaddr_t *base, void **ptable) argument 18 assert(ptable); 87 *ptable = ptable_;
|
/barrelfish-master/kernel/ |
H A D | paging_generic.c | 64 if (!mapping->ptable || mapping->ptable->cap.type == ObjType_Null) 68 *next = mapping->ptable; 101 struct cte *ptable, cslot_t entry, size_t pte_count) 104 assert(type_is_vnode(ptable->cap.type)); 111 mapping_cte->cap.u.frame_mapping.ptable = ptable; 118 * in page table 'ptable' 120 errval_t compile_vaddr(struct cte *ptable, size_t entry, genvaddr_t *retvaddr) argument 122 if (!type_is_vnode(ptable 100 create_mapping_cap(struct cte *mapping_cte, struct capability *cap, struct cte *ptable, cslot_t entry, size_t pte_count) argument [all...] |
H A D | syscall.c | 423 sys_map(struct capability *ptable, cslot_t slot, capaddr_t source_root_cptr, argument 428 assert (type_is_vnode(ptable->type)); 435 if (!(ptable->rights & CAPRIGHTS_WRITE)) { 486 return SYSRET(caps_copy_to_vnode(cte_for_cap(ptable), slot, src_cte, flags, 491 sys_copy_remap(struct capability *ptable, cslot_t slot, capaddr_t source_cptr, argument 496 assert (type_is_vnode(ptable->type)); 530 return SYSRET(paging_copy_remap(cte_for_cap(ptable), slot, src_cte, flags,
|
/barrelfish-master/usr/tests/pagetable/ |
H A D | pagetable.c | 102 genpaddr_t *ptable = NULL; local 103 err = vspace_map_one_frame((void**)&ptable, (size_t)1<<id.bits, 113 bool is_dirty = (ptable[i] & X86_64_PTABLE_DIRTY) > 0; 115 printf("retaddr[%zu] = 0x%"PRIxGENPADDR" is_dirty = %d\n", i, ptable[i], is_dirty); 168 genpaddr_t *ptable = NULL; 169 err = vspace_map_one_frame((void**)&ptable, (size_t)1<<id.bits, 179 bool is_dirty = (ptable[i] & X86_64_PTABLE_DIRTY) > 0; 181 printf("retaddr[%zu] = 0x%"PRIxGENPADDR" is_dirty = %d\n", i, ptable[i], is_dirty); 207 printf("%s:%s:%d: Hi, lets map our own ptable!\n",
|
/barrelfish-master/kernel/arch/x86_64/ |
H A D | debug.c | 25 uint64_t ptable :9; member in struct:lin_addr::__anon75 54 printf("ptable = %x\n", lin_addr.d.ptable); 83 (lin_addr.d.ptable * sizeof(union x86_64_pdir_entry)));
|
H A D | page_mappings_arch.c | 36 /// Map within a x86_64 non leaf ptable 47 if (type_is_vnode(src->type) && pte_count != 1) { // only allow single ptable mappings 277 /// Map within a x86_64 ptable 390 /// Map within a x86_64 non leaf ptable 402 // only allow single ptable mappings 756 // get ptable 757 union x86_64_ptable_entry *ptable = (union x86_64_ptable_entry *)pdir_lv + X86_64_PDIR_BASE(vaddr); local 758 if (!ptable->raw) { return 0; } 759 genpaddr_t ptable_gp = ptable->base.base_addr << BASE_PAGE_BITS; 896 struct cte *leaf_pt = info->ptable; 1080 union x86_64_pdir_entry *ptable = (union x86_64_pdir_entry *)pdir_lv + ptable_index; local [all...] |
H A D | vmx_vmkit.c | 1024 // get ptable 1025 union x86_64_pdir_entry *ptable = (union x86_64_pdir_entry *)pdir_lv + ptable_index; local 1026 pt = (union x86_64_ptable_entry *)ptable; 1027 if (!ptable->raw) { continue; } 1028 // check if ptable or large page 1038 genpaddr_t paddr = (genpaddr_t)ptable->d.base_addr << BASE_PAGE_BITS; 1041 ptable->d.read_write, ptable->d.user_supervisor, 1042 ptable->raw); 1044 genpaddr_t ptable_gp = ptable [all...] |
/barrelfish-master/usr/bench/cow/ |
H A D | pmap_cow.c | 274 size_t entry, struct vnode **ptable) 277 *ptable = find_vnode(parent, entry); 278 if (*ptable == NULL || !(*ptable)->is_cloned) { 293 if(*ptable == NULL) { 294 err = alloc_vnode(pmap, parent, type, entry, ptable); 298 } else if (!(*ptable)->is_cloned) { 299 // need to clone ptable to ensure copy on write 306 (*ptable)->v.cap, 0, PTABLE_SIZE, PTABLE_ACCESS_READONLY, 307 (*ptable) 272 find_or_clone_vnode(struct pmap_x86 *pmap, struct vnode *parent, enum objtype type, size_t entry, struct vnode **ptable) argument 375 cow_get_ptable(struct pmap_x86 *pmap, genvaddr_t base, struct vnode **ptable) argument 435 struct vnode *ptable = NULL; local [all...] |
/barrelfish-master/lib/barrelfish/arch/x86_64/ |
H A D | pmap.c | 178 struct vnode **ptable); 180 struct vnode **ptable) 191 if((*ptable = pmap_find_vnode(pdir, X86_64_PDIR_BASE(base))) == NULL) { 196 X86_64_PDIR_BASE(base), ptable, base); 199 if ((*ptable = pmap_find_vnode(pdir, X86_64_PDIR_BASE(base))) != NULL) { 204 DEBUG_ERR(err, "alloc_vnode for ptable"); 277 struct vnode *ptable = NULL; local 284 err = get_pdir(pmap, vaddr, &ptable); 288 err = get_pdpt(pmap, vaddr, &ptable); 291 //normal 4K pages, mapped into ptable 179 get_ptable(struct pmap_x86 *pmap, genvaddr_t base, struct vnode **ptable) argument 1184 struct vnode *ptable; local [all...] |
/barrelfish-master/lib/posixcompat/ |
H A D | nestedpaging.c | 106 void *ptable; local 107 err = allocate_vnode(ObjType_VNode_x86_64_pdpt, &pdpt_cap, &ptable); 111 printf("pdpt mapped at %p\n", ptable); 125 retentry->addr = ptable; 207 // get ptable 216 // map new ptable in hw pdir 218 // map new ptable in sw pdir
|
/barrelfish-master/lib/barrelfish/arch/arm/ |
H A D | pmap.c | 179 debug_printf("%s: found ptable at [%"PRIu16"--%"PRIu16"]\n", 371 struct vnode **ptable) 377 if ((*ptable = find_vnode(&pmap->root, idx)) == NULL) 391 *ptable = tmp; // Set argument to received value 397 assert(ptable); 398 struct vnode *pt = *ptable; 400 debug_printf("found section @%d, trying to get ptable for %d\n", 405 debug_printf("have ptable: %p\n", pt); 426 struct vnode *ptable; local 443 ptable 369 get_ptable(struct pmap_arm *pmap, genvaddr_t vaddr, struct vnode **ptable) argument 1075 struct vnode *ptable = find_ptable(pmap, vaddr); local [all...] |
/barrelfish-master/lib/barrelfish/arch/aarch64/ |
H A D | pmap.c | 210 struct vnode **ptable) 245 *ptable = pl3; 275 struct vnode *ptable= NULL; local 276 errval_t err = get_ptable(pmap, vaddr, &ptable); 287 bool has_page = has_vnode(ptable, idx, pte_count); 301 pmap_vnode_insert_child(ptable, page); 303 set_mapping_cap(&pmap->p, page, ptable, idx); 306 assert(!capref_is_null(ptable->v.u.vnode.invokable)); 307 err = vnode_map(ptable->v.u.vnode.invokable, frame, idx, 618 struct vnode *ptable local 208 get_ptable(struct pmap_aarch64 *pmap, genvaddr_t vaddr, struct vnode **ptable) argument [all...] |
/barrelfish-master/lib/barrelfish/arch/x86_32/ |
H A D | pmap.c | 117 struct vnode **ptable) 127 if((*ptable = find_vnode(pdir, X86_32_PDIR_BASE(base))) == NULL) { 129 X86_32_PDIR_BASE(base), ptable, base); 161 struct vnode *ptable; local 167 err = get_pdir(pmap, vaddr, &ptable); 171 err = get_ptable(pmap, vaddr, &ptable); 177 assert(ptable->is_vnode); 180 if (has_vnode(ptable, base, pte_count, false)) { 181 if (has_vnode(ptable, base, pte_count, true)) { 189 remove_empty_vnodes(pmap, ptable, bas 116 get_ptable(struct pmap_x86 *pmap, genvaddr_t base, struct vnode **ptable) argument [all...] |
/barrelfish-master/include/arch/x86_32/barrelfish/ |
H A D | invocations_arch.h | 274 invoke_vnode_map(struct capref ptable, capaddr_t slot, capaddr_t from, argument 277 static inline errval_t invoke_vnode_map(struct capref ptable, capaddr_t slot, 284 uint8_t invoke_bits = get_cap_valid_bits(ptable); 285 capaddr_t invoke_cptr = get_cap_addr(ptable) >> (CPTR_BITS - invoke_bits);
|
/barrelfish-master/include/arch/aarch64/barrelfish/ |
H A D | invocations_arch.h | 147 invoke_vnode_map(struct capref ptable, capaddr_t slot, 167 return cap_invoke9(ptable, VNodeCmd_Map, src_root, src, flags, offset,
|
/barrelfish-master/include/arch/x86_64/barrelfish/ |
H A D | invocations_arch.h | 100 static inline errval_t invoke_vnode_map(struct capref ptable, capaddr_t slot, argument 107 return cap_invoke10(ptable, VNodeCmd_Map, slot,
|
/barrelfish-master/include/arch/arm/barrelfish/ |
H A D | invocations_arch.h | 146 invoke_vnode_map(struct capref ptable, capaddr_t slot, 166 return cap_invoke9(ptable, VNodeCmd_Map, src_root, src, flags, offset,
|
/barrelfish-master/include/barrelfish/ |
H A D | invocations.h | 212 static inline errval_t invoke_vnode_copy_remap(struct capref ptable, capaddr_t slot, argument 218 return cap_invoke10(ptable, VNodeCmd_CopyRemap, slot, src, srclevel, flags,
|
/barrelfish-master/usr/eclipseclp/Kernel/src/ |
H A D | bip_db.c | 3022 pword *pw, *ptable; local 3024 ptable = pw1++; 3025 Dereference_(ptable); 3026 Check_Integer(ptable->tag); /* table address */ 3027 ptable = ptable->val.ptr; 3039 Make_Integer(&pw[3], ptable[i].val.nint); 3040 Make_Integer(&pw[4], ptable[i].tag.kernel); 3050 pword *pw, *ptable; local 3052 ptable [all...] |