Show a cover letter.

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

    "id": 43833,
    "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-08-23T16:59:47",
    "name": "[0/8] Improve running DPDK without hugetlbfs mounpoint",
    "submitter": {
        "id": 4,
        "url": "",
        "name": "Burakov, Anatoly",
        "email": ""
    "mbox": "",
    "series": [
            "id": 1040,
            "url": "",
            "web_url": "",
            "date": "2018-08-23T16:59:47",
            "name": "Improve running DPDK without hugetlbfs mounpoint",
            "version": 1,
            "mbox": ""
    "comments": "",
    "headers": {
        "X-Amp-File-Uploaded": "False",
        "Subject": "[dpdk-dev] [PATCH 0/8] Improve running DPDK without hugetlbfs\n\tmounpoint",
        "List-Post": "<>",
        "X-Mailer": "git-send-email",
        "X-Original-To": "",
        "Cc": ",,,\n\,",
        "From": "Anatoly Burakov <>",
        "Return-Path": "<>",
        "X-BeenThere": "",
        "List-Archive": "<>",
        "Date": "Thu, 23 Aug 2018 17:59:47 +0100",
        "Precedence": "list",
        "Message-Id": "<>",
        "X-Mailman-Version": "2.1.15",
        "Errors-To": "",
        "List-Subscribe": "<>,\n\t<>",
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "Delivered-To": "",
        "List-Id": "DPDK patches and discussions <>",
        "Received": [
            "from [] (localhost [])\n\tby (Postfix) with ESMTP id C2C992C4F;\n\tThu, 23 Aug 2018 18:59:59 +0200 (CEST)",
            "from ( [])\n\tby (Postfix) with ESMTP id 5721998\n\tfor <>; Thu, 23 Aug 2018 18:59:58 +0200 (CEST)",
            "from ([])\n\tby with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t23 Aug 2018 09:59:57 -0700",
            "from ([])\n\tby with ESMTP; 23 Aug 2018 09:59:56 -0700",
            "from (\n\t[])\n\tby (8.14.3/8.13.6/MailSET/Hub) with ESMTP id\n\tw7NGxtRW025424; Thu, 23 Aug 2018 17:59:55 +0100",
            "from (localhost [])\n\tby with ESMTP id w7NGxt66006682;\n\tThu, 23 Aug 2018 17:59:55 +0100",
            "(from aburakov@localhost)\n\tby with LOCAL id w7NGxtvT006678;\n\tThu, 23 Aug 2018 17:59:55 +0100"
        "List-Unsubscribe": "<>,\n\t<>",
        "Sender": "\"dev\" <>",
        "X-ExtLoop1": "1",
        "List-Help": "<>",
        "To": "",
        "X-IronPort-AV": "E=Sophos;i=\"5.53,278,1531810800\"; d=\"scan'208\";a=\"75124323\""
    "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. Using this API, virtio will be able\nto access segment fd's directly, without the 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\nAnatoly Burakov (8):\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: support using memfd segments for in-memory mode\n\n lib/librte_eal/bsdapp/eal/eal_memalloc.c   |  12 +\n lib/librte_eal/common/eal_common_fbarray.c |   4 +\n lib/librte_eal/common/eal_common_memory.c  |  55 ++-\n lib/librte_eal/common/eal_common_options.c |  12 +-\n lib/librte_eal/common/eal_memalloc.h       |   6 +\n lib/librte_eal/common/include/rte_memory.h |  44 +++\n lib/librte_eal/linuxapp/eal/eal_memalloc.c | 421 ++++++++++++++++-----\n lib/librte_eal/linuxapp/eal/eal_memory.c   |  60 ++-\n lib/librte_eal/         |   2 +\n 9 files changed, 518 insertions(+), 98 deletions(-)"