From: Jens Axboe Date: Tue, 20 Nov 2012 12:39:59 +0000 (+0100) Subject: memory: wire up mmap huge page support X-Git-Tag: fio-2.0.12~49 X-Git-Url: https://git.kernel.dk/?p=fio.git;a=commitdiff_plain;h=d6dc02fbe47fa6b4752df7a2ed52447506d68b45 memory: wire up mmap huge page support Signed-off-by: Jens Axboe --- 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