From patchwork Tue Dec 11 16:43:27 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Burakov, Anatoly" X-Patchwork-Id: 48643 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id D6E285B38; Tue, 11 Dec 2018 17:43:38 +0100 (CET) Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id B66DE5B38 for ; Tue, 11 Dec 2018 17:43:36 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga102.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 11 Dec 2018 08:43:35 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,342,1539673200"; d="scan'208";a="117910687" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by orsmga001.jf.intel.com with ESMTP; 11 Dec 2018 08:43:33 -0800 Received: from sivswdev05.ir.intel.com (sivswdev05.ir.intel.com [10.243.17.64]) by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id wBBGhWn4026207; Tue, 11 Dec 2018 16:43:32 GMT Received: from sivswdev05.ir.intel.com (localhost [127.0.0.1]) by sivswdev05.ir.intel.com with ESMTP id wBBGhWRR007033; Tue, 11 Dec 2018 16:43:32 GMT Received: (from aburakov@localhost) by sivswdev05.ir.intel.com with LOCAL id wBBGhWbe007029; Tue, 11 Dec 2018 16:43:32 GMT From: Anatoly Burakov To: dev@dpdk.org Cc: przemyslawx.lal@intel.com, kuralamudhan.ramakrishnan@intel.com, ivan.coughlan@intel.com, tiwei.bie@intel.com, ray.kinsella@intel.com, maxime.coquelin@redhat.com Date: Tue, 11 Dec 2018 16:43:27 +0000 Message-Id: X-Mailer: git-send-email 1.7.0.7 In-Reply-To: References: Subject: [dpdk-dev] [PATCH v2 0/5] Allow using virtio without hugepages X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" It is already possible to use both DPDK in general and virtio specifically, without hugetlbfs mounts, but currently virtio cannot be used without hugepage memory (i.e. with a --no-huge EAL switch) due to the fact that it needs to share memory with the backend. This patchset uses memfd to create actual files backing anonymous memory. This enabled virtio to work not only without hugetlbfs, but without hugepages altogether, which could be useful in Cloud Native scenarios. v2: - Fixed segment fd list not being initialized - Added some segment fd API fixes - Added unit test for segment fd API Anatoly Burakov (5): mem: fix error code for segment fd API for external segs memalloc: check for memfd support in segment fd API memalloc: allow setting up segment list fd's mem: use memfd for no-huge mode test: add segment fd API test doc/guides/rel_notes/release_19_02.rst | 13 +++++ lib/librte_eal/bsdapp/eal/eal_memalloc.c | 6 ++ lib/librte_eal/common/eal_common_memory.c | 12 ++++ lib/librte_eal/common/eal_memalloc.h | 4 ++ lib/librte_eal/linuxapp/eal/eal_memalloc.c | 66 +++++++++++++++++++--- lib/librte_eal/linuxapp/eal/eal_memory.c | 54 +++++++++++++++++- test/test/test_memory.c | 43 ++++++++++++++ 7 files changed, 188 insertions(+), 10 deletions(-) Acked-by: Tiwei Bie