Skip to content

Commit deb8940

Browse files
author
Tyler Neely
committed
have proprocessor choose correct mmap args
1 parent f41cde3 commit deb8940

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

util/arena.cc

+5-4
Original file line numberDiff line numberDiff line change
@@ -84,12 +84,13 @@ char* Arena::AllocateAligned(size_t bytes, size_t huge_page_tlb_size,
8484
((bytes - 1U) / huge_page_tlb_size + 1U) * huge_page_tlb_size;
8585
assert(reserved_size >= bytes);
8686

87+
#ifdef MAP_HUGETLB
88+
void* addr = mmap(nullptr, reserved_size, (PROT_READ | PROT_WRITE),
89+
(MAP_PRIVATE | MAP_ANONYMOUS | MAP_HUGETLB), 0, 0);
90+
#else
8791
void* addr = mmap(nullptr, reserved_size, (PROT_READ | PROT_WRITE),
8892
(MAP_PRIVATE | MAP_ANONYMOUS), 0, 0);
89-
90-
// only supported in kernel's 2.6.34 and above
91-
// void* addr = mmap(nullptr, reserved_size, (PROT_READ | PROT_WRITE),
92-
// (MAP_PRIVATE | MAP_ANONYMOUS | MAP_HUGETLB), 0, 0);
93+
#endif
9394

9495
if (addr == MAP_FAILED) {
9596
Warn(logger, "AllocateAligned fail to allocate huge TLB pages: %s",

0 commit comments

Comments
 (0)