mem: support using memfd segments for in-memory mode
authorAnatoly Burakov <anatoly.burakov@intel.com>
Tue, 4 Sep 2018 15:15:50 +0000 (16:15 +0100)
committerThomas Monjalon <thomas@monjalon.net>
Wed, 19 Sep 2018 13:02:19 +0000 (15:02 +0200)
commitc127be93f619a8d006e1449cabe904340ddee139
treefe9c018baf68df11afc3fc4329979c6f5ca57183
parent3a44687139ebd99527397c7c976a39dbc779a61f
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>
lib/librte_eal/common/eal_common_options.c
lib/librte_eal/linuxapp/eal/eal_memalloc.c