• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /barrelfish-2018-10-04/include/vm/

Lines Matching refs:index

136 vm_radix_slot(vm_pindex_t index, uint16_t level)
139 return ((index >> (level * VM_RADIX_WIDTH)) & VM_RADIX_MASK);
144 vm_radix_trimkey(vm_pindex_t index, uint16_t level)
148 ret = index;
200 vm_radix_addpage(struct vm_radix_node *rnode, vm_pindex_t index, uint16_t clev,
205 slot = vm_radix_slot(index, clev);
335 vm_pindex_t index, newind;
342 index = page->pindex;
359 if (m->pindex == index)
361 __func__, (uintmax_t)index);
362 clev = vm_radix_keydiff(m->pindex, index);
376 tmp = vm_radix_node_get(vm_radix_trimkey(index,
390 vm_radix_addpage(tmp, index, clev, page);
393 } else if (vm_radix_keybarr(rnode, index))
395 slot = vm_radix_slot(index, rnode->rn_clev);
398 vm_radix_addpage(rnode, index, rnode->rn_clev, page);
411 clev = vm_radix_keydiff(newind, index);
415 tmp = vm_radix_node_get(vm_radix_trimkey(index, clev + 1), 2, clev);
428 vm_radix_addpage(tmp, index, clev, page);
450 * Returns the value stored at the index. If the index is not present,
454 vm_radix_lookup(struct vm_radix *rtree, vm_pindex_t index)
464 if (m->pindex == index)
468 } else if (vm_radix_keybarr(rnode, index))
470 slot = vm_radix_slot(index, rnode->rn_clev);
477 * Look up the nearest entry at a position bigger than or equal to index.
480 vm_radix_lookup_ge(struct vm_radix *rtree, vm_pindex_t index)
496 if (m->pindex >= index)
510 if (vm_radix_keybarr(rnode, index)) {
511 if (index > rnode->rn_owner) {
525 } while (vm_radix_slot(index,
530 * because index's slot at the current level
533 index = vm_radix_trimkey(index,
535 index += VM_RADIX_UNITLEVEL(rnode->rn_clev);
537 index = rnode->rn_owner;
538 KASSERT(!vm_radix_keybarr(rnode, index),
541 slot = vm_radix_slot(index, rnode->rn_clev);
545 if (m->pindex >= index)
556 index = vm_radix_trimkey(index, rnode->rn_clev);
558 index += inc;
563 if (m->pindex >= index)
588 * Look up the nearest entry at a position less than or equal to index.
591 vm_radix_lookup_le(struct vm_radix *rtree, vm_pindex_t index)
607 if (m->pindex <= index)
621 if (vm_radix_keybarr(rnode, index)) {
622 if (index > rnode->rn_owner) {
623 index = rnode->rn_owner + VM_RADIX_COUNT *
639 } while (vm_radix_slot(index,
644 * because index's slot at the current level
647 index = vm_radix_trimkey(index,
650 index--;
651 KASSERT(!vm_radix_keybarr(rnode, index),
654 slot = vm_radix_slot(index, rnode->rn_clev);
658 if (m->pindex <= index)
669 index |= inc - 1;
671 index -= inc;
676 if (m->pindex <= index)
701 * Remove the specified index from the tree.
705 vm_radix_remove(struct vm_radix *rtree, vm_pindex_t index)
728 if (m->pindex != index)
737 slot = vm_radix_slot(index, rnode->rn_clev);
740 if (m->pindex != index)
754 slot = vm_radix_slot(index, parent->rn_clev);
792 * Panics if there is not an old page in the trie at the new page's index.
799 vm_pindex_t index;
802 index = newpage->pindex;
808 if (m->pindex != index)
815 slot = vm_radix_slot(index, rnode->rn_clev);
818 if (m->pindex == index) {
826 vm_radix_keybarr(rnode->rn_child[slot], index))