numam-dpdk/lib
Anatoly Burakov c127be93f6 mem: support using memfd segments for in-memory mode
Enable using memfd-created segments if supported by the system.

This will allow having real fd's for pages but without hugetlbfs
mounts, which will enable in-memory mode to be used with virtio.

The implementation is mostly piggy-backing on existing real-fd
code, except that we no longer need to unlink any files or track
per-page locks in single-file segments mode, because in-memory
mode does not support secondary processes anyway.

We move some checks from EAL command-line parsing code to memalloc
because it is now possible to use single-file segments mode with
in-memory mode, but only if memfd is supported.

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
2018-09-19 15:02:19 +02:00
..
librte_acl acl: forbid rule with priority zero 2018-09-16 11:53:25 +02:00
librte_bbdev remove useless constructor headers 2018-07-12 00:00:35 +02:00
librte_bitratestats bitrate: add sanity check on parameters 2018-07-26 20:07:57 +02:00
librte_bpf bpf: fix 32-bit build support with meson 2018-07-12 12:24:25 +02:00
librte_cfgfile build: replace license text with SPDX tag 2018-01-30 21:58:59 +01:00
librte_cmdline cmdline: remove useless intermediate buffer 2018-06-27 18:25:30 +02:00
librte_compat buildtools: change license to SPDX 2018-07-26 22:45:17 +02:00
librte_compressdev remove useless constructor headers 2018-07-12 00:00:35 +02:00
librte_cryptodev remove useless constructor headers 2018-07-12 00:00:35 +02:00
librte_distributor build: set compat lib as universal dependency 2018-01-30 21:59:00 +01:00
librte_eal mem: support using memfd segments for in-memory mode 2018-09-19 15:02:19 +02:00
librte_efd build: replace license text with SPDX tag 2018-01-30 21:58:59 +01:00
librte_ethdev ethdev: make default behavior CRC strip on Rx 2018-09-14 20:08:41 +02:00
librte_eventdev event: fix ring init failure handling 2018-08-05 14:52:19 +02:00
librte_flow_classify remove useless constructor headers 2018-07-12 00:00:35 +02:00
librte_gro build: replace license text with SPDX tag 2018-01-30 21:58:59 +01:00
librte_gso gso: support UDP/IPv4 fragmentation 2018-07-11 23:45:20 +02:00
librte_hash hash: add more accurate thread-safety comments 2018-08-09 21:56:29 +02:00
librte_ip_frag ip_frag: fix some debug logs 2018-05-14 21:14:49 +02:00
librte_jobstats build: replace license text with SPDX tag 2018-01-30 21:58:59 +01:00
librte_kni kni: fix crash with null name 2018-08-09 11:50:10 +02:00
librte_kvargs kvargs: fix building with meson outside source tree 2018-07-26 10:14:06 +02:00
librte_latencystats latency: free up the memzone 2018-08-01 18:25:08 +02:00
librte_lpm lpm: fix allocation of an existing object 2018-02-01 00:35:06 +01:00
librte_mbuf mbuf: remove deprecated segment free functions 2018-09-19 10:35:01 +02:00
librte_member remove useless constructor headers 2018-07-12 00:00:35 +02:00
librte_mempool mempool: fold memory size calculation helper 2018-08-05 23:41:57 +02:00
librte_meter meter: remove experimental tag from profile API 2018-08-06 01:15:11 +02:00
librte_metrics metrics: disallow null as metric name 2018-07-26 20:30:18 +02:00
librte_net net: rename u16 to fix shadowed declaration 2018-06-27 22:55:54 +02:00
librte_pci use SPDX tag for 6WIND copyrighted files 2018-05-25 10:47:06 +02:00
librte_pdump pdump: remove dependency on libpthread 2018-09-18 11:48:32 +02:00
librte_pipeline lib: clear experimental version tag in linker scripts 2018-05-14 03:37:28 +02:00
librte_port build: remove checks for non-optional libraries 2018-04-17 16:09:43 +02:00
librte_power examples/vm_power: add branch ratio policy type 2018-07-20 23:59:42 +02:00
librte_rawdev rawdev: fix missing queue count API 2018-08-01 18:25:10 +02:00
librte_reorder build: replace license text with SPDX tag 2018-01-30 21:58:59 +01:00
librte_ring ring: clarify preemptible nature of algorithm 2018-08-05 20:06:10 +02:00
librte_sched lib: clear experimental version tag in linker scripts 2018-05-14 03:37:28 +02:00
librte_security security: fix crash on destroy null session 2018-07-11 00:57:51 +02:00
librte_table table: add dedicated params struct for cuckoo hash 2018-05-08 16:19:58 +02:00
librte_timer eal: make semantics of lcore role function more intuitive 2018-04-26 16:58:18 +02:00
librte_vhost vhost: fix return value on enqueue path 2018-09-14 20:08:41 +02:00
Makefile devargs: add function to parse device layers 2018-07-15 23:43:34 +02:00
meson.build build: add configuration summary at end of config 2018-09-17 13:58:40 +02:00