Lines Matching defs:root

89 static bool has_vnode(struct vnode *root, uint16_t entry, size_t len)
91 assert(root != NULL);
92 assert(root->v.is_vnode);
97 pmap_foreach_child(root, n) {
118 static errval_t alloc_vnode(struct pmap_aarch64 *pmap_aarch64, struct vnode *root,
122 assert(root->v.is_vnode);
176 set_mapping_cap(&pmap_aarch64->p, newvnode, root, entry);
179 err = vnode_map(root->v.u.vnode.invokable, newvnode->v.cap, entry,
189 pmap_vnode_insert_child(root, newvnode);
213 struct vnode *root = &pmap->root;
215 assert(root != NULL);
218 if ((pl1 = pmap_find_vnode(root, VMSAv8_64_L0_BASE(vaddr))) == NULL) {
219 err = alloc_vnode(pmap, root, ObjType_VNode_AARCH64_l1,
252 struct vnode *root = &pmap->root;
254 assert(root != NULL);
257 if((pl1 = pmap_find_vnode(root, VMSAv8_64_L0_BASE(vaddr))) == NULL) {
762 pmap_aarch64->root.v.is_vnode = true;
763 pmap_aarch64->root.v.cap = vnode;
764 pmap_aarch64->root.v.u.vnode.invokable = vnode;
767 errval_t err = slot_alloc(&pmap_aarch64->root.v.u.vnode.invokable);
769 err = cap_copy(pmap_aarch64->root.v.u.vnode.invokable, vnode);
772 assert(!capref_is_null(pmap_aarch64->root.v.cap));
773 assert(!capref_is_null(pmap_aarch64->root.v.u.vnode.invokable));
774 pmap_vnode_init(pmap, &pmap_aarch64->root);
778 * Initialize root vnode mapping cnode
783 * provide the mapping cnode for the first half of the root page table as
787 pmap_aarch64->root.u.vnode.mcn[0].cnode = cnode_root;
788 pmap_aarch64->root.u.vnode.mcn[0].slot = ROOTCN_SLOT_ROOT_MAPPING;
789 pmap_aarch64->root.u.vnode.mcnode[0].croot = CPTR_ROOTCN;
790 pmap_aarch64->root.u.vnode.mcnode[0].cnode = ROOTCN_SLOT_ADDR(ROOTCN_SLOT_ROOT_MAPPING);
791 pmap_aarch64->root.u.vnode.mcnode[0].level = CNODE_TYPE_OTHER;
794 err = cnode_create_l2(&pmap_aarch64->root.u.vnode.mcn[0], &pmap_aarch64->root.u.vnode.mcnode[0]);
823 return &pa64->root.v;