582bed1e1d
Nothing uses this code yet. The bulk of it is copied from old memory allocation code (linuxapp eal_memory.c). We provide an EAL-internal API to allocate either one page or multiple pages, guaranteeing that we'll get contiguous VA for all of the pages that we requested. Not supported on FreeBSD. Locking is done via fcntl() because that way, when it comes to taking out write locks or unlocking on deallocation, we don't have to keep original fd's around. Plus, using fcntl() gives us ability to lock parts of a file, which is useful for single-file segments, which are coming down the line. Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com> Tested-by: Santosh Shukla <santosh.shukla@caviumnetworks.com> Tested-by: Hemant Agrawal <hemant.agrawal@nxp.com> Tested-by: Gowrishankar Muthukrishnan <gowrishankar.m@linux.vnet.ibm.com>
27 lines
592 B
Meson
27 lines
592 B
Meson
# SPDX-License-Identifier: BSD-3-Clause
|
|
# Copyright(c) 2017 Intel Corporation
|
|
|
|
eal_inc += include_directories('include', '../../../librte_compat')
|
|
install_subdir('include/exec-env', install_dir: get_option('includedir'))
|
|
|
|
env_objs = []
|
|
env_headers = []
|
|
env_sources = files('eal_alarm.c',
|
|
'eal_debug.c',
|
|
'eal_hugepage_info.c',
|
|
'eal_interrupts.c',
|
|
'eal_memalloc.c',
|
|
'eal_lcore.c',
|
|
'eal_log.c',
|
|
'eal_thread.c',
|
|
'eal_timer.c',
|
|
'eal_vfio.c',
|
|
'eal_vfio_mp_sync.c',
|
|
'eal.c',
|
|
'eal_memory.c',
|
|
)
|
|
|
|
if has_libnuma == 1
|
|
dpdk_conf.set10('RTE_EAL_NUMA_AWARE_HUGEPAGES', true)
|
|
endif
|