mirror of https://github.com/golang/go.git
runtime: grow heap by 64K instead of 128K
When we've switched to 8K pages, heap started to grow by 128K instead of 64K, because it was implicitly assuming that pages are 4K. Fix that and make the code more robust. LGTM=khr R=golang-codereviews, dave, khr CC=golang-codereviews, rsc https://golang.org/cl/106450044
This commit is contained in:
parent
a5f8e8f99c
commit
0622e13b4d
|
|
@ -310,8 +310,8 @@ MHeap_Grow(MHeap *h, uintptr npage)
|
|||
// Ask for a big chunk, to reduce the number of mappings
|
||||
// the operating system needs to track; also amortizes
|
||||
// the overhead of an operating system mapping.
|
||||
// Allocate a multiple of 64kB (16 pages).
|
||||
npage = (npage+15)&~15;
|
||||
// Allocate a multiple of 64kB.
|
||||
npage = ROUND(npage, (64<<10)/PageSize);
|
||||
ask = npage<<PageShift;
|
||||
if(ask < HeapAllocChunk)
|
||||
ask = HeapAllocChunk;
|
||||
|
|
|
|||
Loading…
Reference in New Issue