X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvppinfra%2Fpmalloc.c;h=41309dd1d99e9f93130a2d850a28654e323e83c6;hb=8ebd7929bdfd3ce6e9648abb76b7289056ea5114;hp=e903511ab81c814946f4b1ad97088e74048ab892;hpb=5a5a86987b1b5bd792e9615c3f26471abd4babb4;p=vpp.git diff --git a/src/vppinfra/pmalloc.c b/src/vppinfra/pmalloc.c index e903511ab81..41309dd1d99 100644 --- a/src/vppinfra/pmalloc.c +++ b/src/vppinfra/pmalloc.c @@ -295,13 +295,10 @@ pmalloc_map_pages (clib_pmalloc_main_t * pm, clib_pmalloc_arena_t * a, if ((pm->flags & CLIB_PMALLOC_F_NO_PAGEMAP) == 0) mmap_flags |= MAP_LOCKED; - if (a->log2_subpage_sz != pm->sys_log2_page_sz) - mmap_flags |= MAP_HUGETLB | MAP_LOCKED; - if (a->flags & CLIB_PMALLOC_ARENA_F_SHARED_MEM) { mmap_flags |= MAP_SHARED; - if (mmap_flags & MAP_HUGETLB) + if (a->log2_subpage_sz != pm->sys_log2_page_sz) pm->error = clib_mem_create_hugetlb_fd ((char *) a->name, &a->fd); else pm->error = clib_mem_create_fd ((char *) a->name, &a->fd); @@ -312,6 +309,9 @@ pmalloc_map_pages (clib_pmalloc_main_t * pm, clib_pmalloc_arena_t * a, } else { + if (a->log2_subpage_sz != pm->sys_log2_page_sz) + mmap_flags |= MAP_HUGETLB; + mmap_flags |= MAP_PRIVATE | MAP_ANONYMOUS; a->fd = -1; }