Lines Matching refs:end

194 #define	VALIDATE_SLICE(base, end) { 					\
196 ASSERT(IS_P2ALIGNED(ptob(end - base + 1), TTEBYTES(TTE256M))); \
200 #define VALIDATE_SLICE(base, end)
1108 pfn_t base, end;
1184 end = ms->physmax;
1189 it->mi_mblock_end = end;
1195 ASSERT(pfn + szcpgcnt - 1 <= end);
1212 pfn_t offset, len, hole, base, end, test_end, frag;
1223 end = mem_node_config[mnode].physmax;
1226 if (end < test_base || base > test_end)
1230 *npages_out = MIN(test_end, end) - MAX(test_base, base) + 1;
1241 * Determing the intersection with a stripe is tricky. If base or end
1243 * mem_node. If base or end fall in a gap, round them to start of
1244 * nearest stripe. If they fall within a stripe, keep base or end,
1247 * multiply by stripe width, and add the start and end fragments.
1254 test_base <= (end = ms->physmax) &&
1281 if (base > end)
1287 if (test_end < end)
1288 end = test_end;
1289 end++; /* adjust to an exclusive bound */
1291 /* Round end to next multiple of stride */
1292 len = P2ROUNDUP(end - (base - offset), mnode_stride);
1294 if (nearest - end <= hole) {
1295 /* end falls in hole, use entire last stripe */
1298 /* end falls in stripe, compute fragment */
1299 frag = nearest - hole - end;
1366 uint64_t end = mb->base + mb->size - 1;
1375 if (MNODE(base + ra_to_pa) != MNODE(end + ra_to_pa)) {
1377 "MPO disabled: base = %lx, end = %lx, "
1378 "ra2pa = %lx\n", base, end, ra_to_pa);
1398 last_page_base = P2ALIGN(end, max_coalesce_len);
1404 "end = %lx, ra2pa = %lx, base = %lx, ra2pa = %lx, "
1405 "pagelen = %lx\n", end, ra_to_pa, mb[1].base,
1614 uint64_t end = base + mblock[i].size;
1615 ASSERT(end > base);
1617 mblock[i].end_pfn = btop(end - 1);
1691 pfn_t base, end;
1713 end = base + btop(mblock[i].size) - 1;
1727 if (base == ubase && end == uend) {
1733 } else if (base < ubase && end > uend) {
1739 mblock[i + 1].size = ptob(end - uend);
1745 " i=%d base=0x%lx end=0x%lx", i, base, end);
1750 mblock[i].end_pfn = end;
1751 MPO_DEBUG(" nbase=0x%lx nend=0x%lx\n", base, end);
1753 } else if (end == uend) {
1755 " i=%d base=0x%lx end=0x%lx", i, base, end);
1757 end = ubase - 1;
1759 mblock[i].end_pfn = end;
1760 MPO_DEBUG(" nbase=0x%lx nend=0x%lx\n", base, end);
1765 ASSERT(end > base);
1779 uint64_t offset, stripe_end, base, end, ra_to_pa, stride;
1812 end = base + mblock[i].size;
1831 if (base >= end)
1841 frag = (end - (base - offset)) & (stride - 1);
1855 ms->physmax = btop(end - 1 - remove);
1890 pfn_t base, end;
1915 end = ms->physmax;
1925 INTERSECT(ubase, uend, base, end);
1931 mpo_mem_node_add_slice(base, end);
1934 INTERSECT(ubase, uend, base, end);
1935 mpo_mem_node_del_slice(base, end);
2007 plat_slice_add(pfn_t base, pfn_t end)
2012 VALIDATE_SLICE(base, end);
2018 mnode_update(&new_config, base, end, U_ADD);
2025 plat_slice_del(pfn_t base, pfn_t end)
2030 VALIDATE_SLICE(base, end);
2031 mblock_update_del(&new_config, &old_config, base, end);
2035 mnode_update(&old_config, base, end, U_DEL);