From: Anatoly Burakov <anatoly.burakov@intel.com>
To: dev@dpdk.org
Cc: tiwei.bie@intel.com, ray.kinsella@intel.com,
zhihong.wang@intel.com, maxime.coquelin@redhat.com,
kuralamudhan.ramakrishnan@intel.com
Subject: [dpdk-dev] [PATCH 0/8] Improve running DPDK without hugetlbfs mounpoint
Date: Thu, 23 Aug 2018 17:59:47 +0100 [thread overview]
Message-ID: <cover.1535041359.git.anatoly.burakov@intel.com> (raw)
This patchset further improves DPDK support for running
without hugetlbfs mountpoints.
First of all, it enables using memfd-created hugepages in
in-memory mode. This way, instead of anonymous hugepages, we
can get proper fd's for each page (or for the entire segment,
if we're using single-file segments). Memfd will be used
automatically if support for it was compiled and is available
at runtime, however DPDK will fall back to using anonymous
hugepages if such support is not available.
The other thing this patchset does is exposing segment fd's
through an external API. There is a lot of ugliness in current
virtio/vhost code that deals with finding hugepage files
through procfs, while all virtio really needs are fd's
referring to the pages. Using this API, virtio will be able
to access segment fd's directly, without the procfs magic.
As a bonus, because we enabled use of memfd (given that
sufficiently recent kernel version is used), once virtio
support for getting segment fd's using the new API is
implemented, virtio will also be able to work without having
hugetlbfs mountpoints.
Virtio support is not provided in this patchset, coordination
and implementation of it is up to virtio maintainers.
Once virtio support for this is in place, DPDK will have one
less barrier for adoption in container space.
Anatoly Burakov (8):
fbarray: fix detach in noshconf mode
eal: don't allow legacy mode with in-memory mode
mem: raise maximum fd limit unconditionally
memalloc: rename lock list to fd list
memalloc: track page fd's in non-single file mode
memalloc: add EAL-internal API to get and set segment fd's
mem: add external API to retrieve page fd from EAL
mem: support using memfd segments for in-memory mode
lib/librte_eal/bsdapp/eal/eal_memalloc.c | 12 +
lib/librte_eal/common/eal_common_fbarray.c | 4 +
lib/librte_eal/common/eal_common_memory.c | 55 ++-
lib/librte_eal/common/eal_common_options.c | 12 +-
lib/librte_eal/common/eal_memalloc.h | 6 +
lib/librte_eal/common/include/rte_memory.h | 44 +++
lib/librte_eal/linuxapp/eal/eal_memalloc.c | 421 ++++++++++++++++-----
lib/librte_eal/linuxapp/eal/eal_memory.c | 60 ++-
lib/librte_eal/rte_eal_version.map | 2 +
9 files changed, 518 insertions(+), 98 deletions(-)
--
2.17.1
next reply other threads:[~2018-08-23 16:59 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-08-23 16:59 Anatoly Burakov [this message]
2018-08-23 16:59 ` [dpdk-dev] [PATCH 1/8] fbarray: fix detach in noshconf mode Anatoly Burakov
2018-08-23 16:59 ` [dpdk-dev] [PATCH 2/8] eal: don't allow legacy mode with in-memory mode Anatoly Burakov
2018-08-23 16:59 ` [dpdk-dev] [PATCH 3/8] mem: raise maximum fd limit unconditionally Anatoly Burakov
2018-08-23 16:59 ` [dpdk-dev] [PATCH 4/8] memalloc: rename lock list to fd list Anatoly Burakov
2018-08-23 16:59 ` [dpdk-dev] [PATCH 5/8] memalloc: track page fd's in non-single file mode Anatoly Burakov
2018-08-23 16:59 ` [dpdk-dev] [PATCH 6/8] memalloc: add EAL-internal API to get and set segment fd's Anatoly Burakov
2018-08-23 16:59 ` [dpdk-dev] [PATCH 7/8] mem: add external API to retrieve page fd from EAL Anatoly Burakov
2018-08-23 16:59 ` [dpdk-dev] [PATCH 8/8] mem: support using memfd segments for in-memory mode Anatoly Burakov
2018-08-24 4:39 ` Jerin Jacob
2018-08-24 8:56 ` Burakov, Anatoly
2018-09-04 15:01 ` [dpdk-dev] [PATCH v2 0/9] Improve running DPDK without hugetlbfs mounpoint Anatoly Burakov
2018-09-04 15:15 ` [dpdk-dev] [PATCH v3 " Anatoly Burakov
2018-09-19 13:04 ` Thomas Monjalon
2018-09-19 13:55 ` Burakov, Anatoly
2018-09-19 14:15 ` Thomas Monjalon
2018-09-04 15:15 ` [dpdk-dev] [PATCH v3 1/9] fbarray: fix detach in noshconf mode Anatoly Burakov
2018-09-13 13:00 ` Maxime Coquelin
2018-09-04 15:15 ` [dpdk-dev] [PATCH v3 2/9] eal: don't allow legacy mode with in-memory mode Anatoly Burakov
2018-09-13 13:06 ` Maxime Coquelin
2018-09-17 9:49 ` Burakov, Anatoly
2018-09-04 15:15 ` [dpdk-dev] [PATCH v3 3/9] mem: raise maximum fd limit unconditionally Anatoly Burakov
2018-09-13 13:12 ` Maxime Coquelin
2018-09-04 15:15 ` [dpdk-dev] [PATCH v3 4/9] memalloc: rename lock list to fd list Anatoly Burakov
2018-09-13 15:19 ` Maxime Coquelin
2018-09-04 15:15 ` [dpdk-dev] [PATCH v3 5/9] memalloc: track page fd's in non-single file mode Anatoly Burakov
2018-09-13 15:56 ` Maxime Coquelin
2018-09-04 15:15 ` [dpdk-dev] [PATCH v3 6/9] memalloc: add EAL-internal API to get and set segment fd's Anatoly Burakov
2018-09-14 7:54 ` Maxime Coquelin
2018-09-17 9:53 ` Burakov, Anatoly
2018-09-04 15:15 ` [dpdk-dev] [PATCH v3 7/9] mem: add external API to retrieve page fd from EAL Anatoly Burakov
2018-09-14 8:00 ` Maxime Coquelin
2018-09-04 15:15 ` [dpdk-dev] [PATCH v3 8/9] mem: allow querying offset into segment fd Anatoly Burakov
2018-09-14 7:57 ` Maxime Coquelin
2018-09-04 15:15 ` [dpdk-dev] [PATCH v3 9/9] mem: support using memfd segments for in-memory mode Anatoly Burakov
2018-09-14 8:06 ` Maxime Coquelin
2018-09-04 15:01 ` [dpdk-dev] [PATCH v2 1/9] fbarray: fix detach in noshconf mode Anatoly Burakov
2018-09-04 15:01 ` [dpdk-dev] [PATCH v2 2/9] eal: don't allow legacy mode with in-memory mode Anatoly Burakov
2018-09-04 15:01 ` [dpdk-dev] [PATCH v2 3/9] mem: raise maximum fd limit unconditionally Anatoly Burakov
2018-09-04 15:01 ` [dpdk-dev] [PATCH v2 4/9] memalloc: rename lock list to fd list Anatoly Burakov
2018-09-04 15:01 ` [dpdk-dev] [PATCH v2 5/9] memalloc: track page fd's in non-single file mode Anatoly Burakov
2018-09-04 15:01 ` [dpdk-dev] [PATCH v2 6/9] memalloc: add EAL-internal API to get and set segment fd's Anatoly Burakov
2018-09-04 15:02 ` [dpdk-dev] [PATCH v2 7/9] mem: add external API to retrieve page fd from EAL Anatoly Burakov
2018-09-04 15:02 ` [dpdk-dev] [PATCH v2 8/9] mem: allow querying offset into segment fd Anatoly Burakov
2018-09-04 15:02 ` [dpdk-dev] [PATCH v2 9/9] mem: support using memfd segments for in-memory mode Anatoly Burakov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1535041359.git.anatoly.burakov@intel.com \
--to=anatoly.burakov@intel.com \
--cc=dev@dpdk.org \
--cc=kuralamudhan.ramakrishnan@intel.com \
--cc=maxime.coquelin@redhat.com \
--cc=ray.kinsella@intel.com \
--cc=tiwei.bie@intel.com \
--cc=zhihong.wang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).