Print this page
5255 uts shouldn't open-code ISP2
*** 1286,1299 ****
/*
* when we get above throttle start do an exponential
* backoff at trying large pages and reaping
*/
if (lpthrt > segkmem_lpthrottle_start &&
! (lpthrt & (lpthrt - 1))) {
lpcb->allocs_throttled++;
lpthrt--;
! if ((lpthrt & (lpthrt - 1)) == 0)
kmem_reap();
return (segkmem_alloc(vmp, size, vmflag));
}
}
--- 1286,1299 ----
/*
* when we get above throttle start do an exponential
* backoff at trying large pages and reaping
*/
if (lpthrt > segkmem_lpthrottle_start &&
! !ISP2(lpthrt)) {
lpcb->allocs_throttled++;
lpthrt--;
! if (ISP2(lpthrt))
kmem_reap();
return (segkmem_alloc(vmp, size, vmflag));
}
}
*** 1473,1491 ****
segkmem_lpsize = PAGESIZE;
return (0);
}
/* set heap_lp quantum if necessary */
! if (segkmem_heaplp_quantum == 0 ||
! (segkmem_heaplp_quantum & (segkmem_heaplp_quantum - 1)) ||
P2PHASE(segkmem_heaplp_quantum, segkmem_lpsize)) {
segkmem_heaplp_quantum = segkmem_lpsize;
}
/* set kmem_lp quantum if necessary */
! if (segkmem_kmemlp_quantum == 0 ||
! (segkmem_kmemlp_quantum & (segkmem_kmemlp_quantum - 1)) ||
segkmem_kmemlp_quantum > segkmem_heaplp_quantum) {
segkmem_kmemlp_quantum = segkmem_heaplp_quantum;
}
/* set total amount of memory allowed for large page kernel heap */
--- 1473,1489 ----
segkmem_lpsize = PAGESIZE;
return (0);
}
/* set heap_lp quantum if necessary */
! if (segkmem_heaplp_quantum == 0 || !ISP2(segkmem_heaplp_quantum) ||
P2PHASE(segkmem_heaplp_quantum, segkmem_lpsize)) {
segkmem_heaplp_quantum = segkmem_lpsize;
}
/* set kmem_lp quantum if necessary */
! if (segkmem_kmemlp_quantum == 0 || !ISP2(segkmem_kmemlp_quantum) ||
segkmem_kmemlp_quantum > segkmem_heaplp_quantum) {
segkmem_kmemlp_quantum = segkmem_heaplp_quantum;
}
/* set total amount of memory allowed for large page kernel heap */