mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-08 17:42:12 +03:00
Enable THP on arenas
This commit is contained in:
@@ -444,10 +444,13 @@ alloc_new_heap (size_t size, size_t top_pad, size_t pagesize,
|
||||
static heap_info *
|
||||
new_heap (size_t size, size_t top_pad)
|
||||
{
|
||||
if (mp_.hp_pagesize != 0 && mp_.hp_pagesize <= heap_max_size ())
|
||||
bool use_hugepage = mp_.hp_pagesize != 0;
|
||||
size_t pagesize = use_hugepage ? mp_.hp_pagesize : mp_.thp_pagesize;
|
||||
|
||||
if (pagesize != 0 && pagesize <= heap_max_size ())
|
||||
{
|
||||
heap_info *h = alloc_new_heap (size, top_pad, mp_.hp_pagesize,
|
||||
mp_.hp_flags);
|
||||
heap_info *h = alloc_new_heap (size, top_pad, pagesize,
|
||||
use_hugepage ? mp_.hp_flags : 0);
|
||||
if (h != NULL)
|
||||
return h;
|
||||
}
|
||||
@@ -479,6 +482,8 @@ grow_heap (heap_info *h, long diff)
|
||||
h->mprotect_size = new_size;
|
||||
}
|
||||
|
||||
madvise_thp (h, new_size);
|
||||
|
||||
h->size = new_size;
|
||||
LIBC_PROBE (memory_heap_more, 2, h, h->size);
|
||||
return 0;
|
||||
|
Reference in New Issue
Block a user