From patchwork Thu Sep 20 15:27:14 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Burakov, Anatoly" X-Patchwork-Id: 45047 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 1FD0B6C9B; Thu, 20 Sep 2018 17:28:44 +0200 (CEST) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id 270D75F65 for ; Thu, 20 Sep 2018 17:28:41 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Sep 2018 08:28:41 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.53,398,1531810800"; d="scan'208";a="72397105" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by fmsmga008.fm.intel.com with ESMTP; 20 Sep 2018 08:27:22 -0700 Received: from sivswdev01.ir.intel.com (sivswdev01.ir.intel.com [10.237.217.45]) by irvmail001.ir.intel.com (8.14.3/8.13.6/MailSET/Hub) with ESMTP id w8KFRLW8006735; Thu, 20 Sep 2018 16:27:21 +0100 Received: from sivswdev01.ir.intel.com (localhost [127.0.0.1]) by sivswdev01.ir.intel.com with ESMTP id w8KFRLt9025111; Thu, 20 Sep 2018 16:27:21 +0100 Received: (from aburakov@localhost) by sivswdev01.ir.intel.com with LOCAL id w8KFRL7D025071; Thu, 20 Sep 2018 16:27:21 +0100 From: Anatoly Burakov To: dev@dpdk.org Cc: dpdk@stormmq.com, bruce.richardson@intel.com, stephen@networkplumber.org Date: Thu, 20 Sep 2018 16:27:14 +0100 Message-Id: X-Mailer: git-send-email 1.7.0.7 In-Reply-To: References: Subject: [dpdk-dev] [PATCH v2 0/7] Improve core EAL musl compatibility 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" This patchset fixes numerous issues with musl compatibility in the core EAL libraries. It does not fix anything beyond core EAL (so, PCI driver is still broken, so are a few other drivers), but it's a good start. Tested on container with Alpine Linux. Alpine dependencies: build-base bsd-compat-headers libexecinfo-dev linux-headers numactl-dev For numactl-dev, testing repository needs to be enabled: echo "http://dl-cdn.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories If successful (using a very broad definition of "success"), the build should fail somewhere in PCI bus driver in UIO. v2 -> v1: - Fixed patch 2 to use existing define if available - Fixed patch 7 to use proper format specifier and cast pthread ID to unsigned pointer type Anatoly Burakov (7): linuxapp: build with _GNU_SOURCE defined by default pci/vfio: improve musl compatibility fbarray: improve musl compatibility eal/hugepage_info: improve musl compatibility mem: improve musl compatibility string_fns: improve musl compatibility eal: improve musl compatibility app/meson.build | 9 ++++++++- drivers/bus/pci/linux/Makefile | 2 -- drivers/bus/pci/linux/pci_vfio.c | 2 ++ drivers/meson.build | 6 ++++++ drivers/net/softnic/conn.c | 1 - examples/meson.build | 6 ++++++ lib/librte_eal/common/eal_common_fbarray.c | 1 + lib/librte_eal/common/eal_common_memory.c | 1 + lib/librte_eal/common/include/rte_string_fns.h | 1 + lib/librte_eal/linuxapp/eal/Makefile | 16 ---------------- lib/librte_eal/linuxapp/eal/eal.c | 4 ++-- lib/librte_eal/linuxapp/eal/eal_hugepage_info.c | 1 + lib/librte_eal/linuxapp/eal/eal_memory.c | 1 + lib/librte_eal/linuxapp/eal/eal_thread.c | 4 ++-- lib/meson.build | 6 ++++++ mk/exec-env/linuxapp/rte.vars.mk | 2 ++ test/test/meson.build | 5 +++++ 17 files changed, 44 insertions(+), 24 deletions(-)