Show a cover letter.

GET /api/covers/44265/?format=api
Content-Type: application/json
Vary: Accept

    "id": 44265,
    "url": "",
    "web_url": "",
    "project": {
        "id": 1,
        "url": "",
        "name": "DPDK",
        "link_name": "dpdk",
        "list_id": "",
        "list_email": "",
        "web_url": "",
        "scm_url": "git://",
        "webscm_url": "",
        "list_archive_url": "",
        "list_archive_url_format": "{}",
        "commit_url_format": ""
    "msgid": "<>",
    "list_archive_url": "",
    "date": "2018-09-04T15:01:53",
    "name": "[v2,0/9] Improve running DPDK without hugetlbfs mounpoint",
    "submitter": {
        "id": 4,
        "url": "",
        "name": "Anatoly Burakov",
        "email": ""
    "mbox": "",
    "series": [
            "id": 1176,
            "url": "",
            "web_url": "",
            "date": "2018-09-04T15:01:53",
            "name": "Improve running DPDK without hugetlbfs mounpoint",
            "version": 2,
            "mbox": ""
    "comments": "",
    "headers": {
        "List-Help": "<>",
        "Received": [
            "from [] (localhost [])\n\tby (Postfix) with ESMTP id EB931231E;\n\tTue,  4 Sep 2018 17:02:07 +0200 (CEST)",
            "from ( [])\n\tby (Postfix) with ESMTP id 216AB1BE0\n\tfor <>; Tue,  4 Sep 2018 17:02:05 +0200 (CEST)",
            "from ([])\n\tby with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t04 Sep 2018 08:02:04 -0700",
            "from ([])\n\tby with ESMTP; 04 Sep 2018 08:02:03 -0700",
            "from (\n\t[])\n\tby (8.14.3/8.13.6/MailSET/Hub) with ESMTP id\n\tw84F22hd019989; Tue, 4 Sep 2018 16:02:02 +0100",
            "from (localhost [])\n\tby with ESMTP id w84F220H008519;\n\tTue, 4 Sep 2018 16:02:02 +0100",
            "(from aburakov@localhost)\n\tby with LOCAL id w84F229F008515;\n\tTue, 4 Sep 2018 16:02:02 +0100"
        "X-Mailman-Version": "2.1.15",
        "Return-Path": "<>",
        "List-Subscribe": "<>,\n\t<>",
        "To": "",
        "From": "Anatoly Burakov <>",
        "Delivered-To": "",
        "List-Id": "DPDK patches and discussions <>",
        "References": "<>",
        "List-Unsubscribe": "<>,\n\t<>",
        "X-Amp-File-Uploaded": "False",
        "X-Original-To": "",
        "Sender": "\"dev\" <>",
        "Message-Id": "<>",
        "Precedence": "list",
        "X-IronPort-AV": "E=Sophos;i=\"5.53,329,1531810800\"; d=\"scan'208\";a=\"88860607\"",
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "Subject": "[dpdk-dev] [PATCH v2 0/9] Improve running DPDK without hugetlbfs\n\tmounpoint",
        "List-Post": "<>",
        "X-ExtLoop1": "1",
        "In-Reply-To": "<>",
        "X-BeenThere": "",
        "X-Mailer": "git-send-email",
        "Errors-To": "",
        "List-Archive": "<>",
        "Cc": ",,,\n\,",
        "Date": "Tue,  4 Sep 2018 16:01:53 +0100"
    "content": "This patchset further improves DPDK support for running\nwithout hugetlbfs mountpoints.\n\nFirst of all, it enables using memfd-created hugepages in\nin-memory mode. This way, instead of anonymous hugepages, we\ncan get proper fd's for each page (or for the entire segment,\nif we're using single-file segments). Memfd will be used\nautomatically if support for it was compiled and is available\nat runtime, however DPDK will fall back to using anonymous\nhugepages if such support is not available.\n\nThe other thing this patchset does is exposing segment fd's\nthrough an external API. There is a lot of ugliness in current\nvirtio/vhost code that deals with finding hugepage files\nthrough procfs, while all virtio really needs are fd's\nreferring to the pages, and their offsets. Using this API,\nvirtio will be able to access segment fd's directly, without\nthe procfs magic.\n\nAs a bonus, because we enabled use of memfd (given that\nsufficiently recent kernel version is used), once virtio\nsupport for getting segment fd's using the new API is\nimplemented, virtio will also be able to work without having\nhugetlbfs mountpoints.\n\nVirtio support is not provided in this patchset, coordination\nand implementation of it is up to virtio maintainers.\n\nOnce virtio support for this is in place, DPDK will have one\nless barrier for adoption in container space.\n\nv1->v2:\n- Added a new API to retrieve segment offset into its fd\n\nAnatoly Burakov (9):\n  fbarray: fix detach in noshconf mode\n  eal: don't allow legacy mode with in-memory mode\n  mem: raise maximum fd limit unconditionally\n  memalloc: rename lock list to fd list\n  memalloc: track page fd's in non-single file mode\n  memalloc: add EAL-internal API to get and set segment fd's\n  mem: add external API to retrieve page fd from EAL\n  mem: allow querying offset into segment fd\n  mem: support using memfd segments for in-memory mode\n\n lib/librte_eal/bsdapp/eal/eal_memalloc.c   |  19 +\n lib/librte_eal/common/eal_common_fbarray.c |   4 +\n lib/librte_eal/common/eal_common_memory.c  | 107 ++++-\n lib/librte_eal/common/eal_common_options.c |  12 +-\n lib/librte_eal/common/eal_memalloc.h       |  11 +\n lib/librte_eal/common/include/rte_memory.h |  97 +++++\n lib/librte_eal/linuxapp/eal/eal_memalloc.c | 449 +++++++++++++++++----\n lib/librte_eal/linuxapp/eal/eal_memory.c   |  64 ++-\n lib/librte_eal/         |   4 +\n 9 files changed, 669 insertions(+), 98 deletions(-)"