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 */