From d6dc02fbe47fa6b4752df7a2ed52447506d68b45 Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Tue, 20 Nov 2012 13:39:59 +0100 Subject: [PATCH 1/1] memory: wire up mmap huge page support Signed-off-by: Jens Axboe --- memory.c | 7 +++++++ os/os.h | 1 + 2 files changed, 8 insertions(+) diff --git a/memory.c b/memory.c index 82a79bd7..b4ee4752 100644 --- a/memory.c +++ b/memory.c @@ -121,6 +121,13 @@ static int alloc_mem_mmap(struct thread_data *td, size_t total_mem) td->mmapfd = 1; + if (td->o.mem_type == MEM_MMAPHUGE) { + unsigned long mask = td->o.hugepage_size - 1; + + flags |= MAP_HUGETLB; + total_mem = (total_mem + mask) & ~mask; + } + if (td->mmapfile) { td->mmapfd = open(td->mmapfile, O_RDWR|O_CREAT, 0644); diff --git a/os/os.h b/os/os.h index c6da0c3d..f783e922 100644 --- a/os/os.h +++ b/os/os.h @@ -95,6 +95,7 @@ typedef unsigned long os_cpu_mask_t; #ifndef FIO_HAVE_HUGETLB #define SHM_HUGETLB 0 +#define MAP_HUGETLB 0 #ifndef FIO_HUGE_PAGE #define FIO_HUGE_PAGE 0 #endif -- 2.25.1