Lines Matching refs:npages
624 int req, vm_page_t mpred, u_long npages, vm_paddr_t low, vm_paddr_t high, in vm_reserv_alloc_contig() argument
636 KASSERT(npages != 0, ("vm_reserv_alloc_contig: npages is 0")); in vm_reserv_alloc_contig()
642 pindex + npages > object->size) in vm_reserv_alloc_contig()
656 size = npages << PAGE_SHIFT; in vm_reserv_alloc_contig()
669 if (index + npages > VM_LEVEL_0_NPAGES) in vm_reserv_alloc_contig()
683 if (!bit_ntest(rv->popmap, index, index + npages - 1, 0)) in vm_reserv_alloc_contig()
685 if (!vm_domain_allocate(vmd, req, npages)) in vm_reserv_alloc_contig()
687 for (i = 0; i < npages; i++) in vm_reserv_alloc_contig()
706 minpages = VM_RESERV_INDEX(object, pindex) + npages; in vm_reserv_alloc_contig()
764 if (vm_domain_allocate(vmd, req, npages)) { in vm_reserv_alloc_contig()
771 vm_domain_freecnt_inc(vmd, npages); in vm_reserv_alloc_contig()
794 n = ulmin(VM_LEVEL_0_NPAGES - index, npages); in vm_reserv_alloc_contig()
797 npages -= n; in vm_reserv_alloc_contig()
1126 vm_reserv_is_populated(vm_page_t m, int npages) in vm_reserv_is_populated() argument
1131 KASSERT(npages <= VM_LEVEL_0_NPAGES, in vm_reserv_is_populated()
1132 ("%s: npages %d exceeds VM_LEVEL_0_NPAGES", __func__, npages)); in vm_reserv_is_populated()
1133 KASSERT(powerof2(npages), in vm_reserv_is_populated()
1134 ("%s: npages %d is not a power of 2", __func__, npages)); in vm_reserv_is_populated()
1138 index = rounddown2(m - rv->pages, npages); in vm_reserv_is_populated()
1139 return (bit_ntest(rv->popmap, index, index + npages - 1, 1)); in vm_reserv_is_populated()
1255 vm_reserv_find_contig(vm_reserv_t rv, int npages, int lo, in vm_reserv_find_contig() argument
1260 KASSERT(npages <= VM_LEVEL_0_NPAGES - 1, in vm_reserv_find_contig()
1264 KASSERT(npages <= ppn_bound, in vm_reserv_find_contig()
1270 while (bit_ffc_area_at(rv->popmap, lo, hi, npages, &lo), lo != -1) { in vm_reserv_find_contig()
1274 } else if (roundup2(lo + 1, ppn_bound) >= lo + npages) in vm_reserv_find_contig()
1276 if (roundup2(lo + 1, ppn_bound) < lo + npages) { in vm_reserv_find_contig()
1291 vm_reserv_reclaim_contig(int domain, u_long npages, vm_paddr_t low, in vm_reserv_reclaim_contig() argument
1300 KASSERT(npages > 0, ("npages is 0")); in vm_reserv_reclaim_contig()
1303 if (npages > VM_LEVEL_0_NPAGES - 1) in vm_reserv_reclaim_contig()
1305 size = npages << PAGE_SHIFT; in vm_reserv_reclaim_contig()
1363 posn = vm_reserv_find_contig(rv, (int)npages, lo, hi, in vm_reserv_reclaim_contig()
1368 rv->popcnt += npages; in vm_reserv_reclaim_contig()
1369 bit_nset(rv->popmap, posn, posn + npages - 1); in vm_reserv_reclaim_contig()