Message ID | cover.1535543250.git.anatoly.burakov@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> 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 42A0C3772; Wed, 29 Aug 2018 13:56:27 +0200 (CEST) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 702225A for <dev@dpdk.org>; Wed, 29 Aug 2018 13:56:25 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 29 Aug 2018 04:56:24 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.53,303,1531810800"; d="scan'208";a="76467702" Received: from irvmail001.ir.intel.com ([163.33.26.43]) by FMSMGA003.fm.intel.com with ESMTP; 29 Aug 2018 04:56:23 -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 w7TBuMd5028616; Wed, 29 Aug 2018 12:56:22 +0100 Received: from sivswdev01.ir.intel.com (localhost [127.0.0.1]) by sivswdev01.ir.intel.com with ESMTP id w7TBuMPk010295; Wed, 29 Aug 2018 12:56:22 +0100 Received: (from aburakov@localhost) by sivswdev01.ir.intel.com with LOCAL id w7TBuLP3010273; Wed, 29 Aug 2018 12:56:21 +0100 From: Anatoly Burakov <anatoly.burakov@intel.com> To: dev@dpdk.org Cc: dpdk@stormmq.com Date: Wed, 29 Aug 2018 12:56:14 +0100 Message-Id: <cover.1535543250.git.anatoly.burakov@intel.com> X-Mailer: git-send-email 1.7.0.7 Subject: [dpdk-dev] [PATCH 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 <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series |
Improve core EAL musl compatibility
|
|
Message
Burakov, Anatoly
Aug. 29, 2018, 11:56 a.m. UTC
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. 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 | 8 ++++---- 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 | 5 +++-- 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 | 5 +++-- lib/meson.build | 6 ++++++ mk/exec-env/linuxapp/rte.vars.mk | 2 ++ test/test/meson.build | 5 +++++ 17 files changed, 48 insertions(+), 28 deletions(-)
Comments
On Wed, Aug 29, 2018 at 12:56:14PM +0100, Anatoly Burakov wrote: > 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. > Disabling the kernel drivers, I get a build of EAL and the other libraries to compile as static libraries. However, shared library builds - and therefore meson builds fail due to missing backtrace function when linking. There is still work to do here, but this does fix a number of build errors on alpine. Acked-by: Bruce Richardson <bruce.richardson@intel.com>
28/09/2018 17:25, Bruce Richardson: > On Wed, Aug 29, 2018 at 12:56:14PM +0100, Anatoly Burakov wrote: > > 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. > > > > Disabling the kernel drivers, I get a build of EAL and the other libraries > to compile as static libraries. However, shared library builds - and > therefore meson builds fail due to missing backtrace function when linking. > There is still work to do here, but this does fix a number of build errors > on alpine. > > Acked-by: Bruce Richardson <bruce.richardson@intel.com> I see this error with meson GCC-8.2 static: examples/ip_pipeline/conn.c:11: error: "__USE_GNU" redefined
On 03-Oct-18 11:56 PM, Thomas Monjalon wrote: > 28/09/2018 17:25, Bruce Richardson: >> On Wed, Aug 29, 2018 at 12:56:14PM +0100, Anatoly Burakov wrote: >>> 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. >>> >> >> Disabling the kernel drivers, I get a build of EAL and the other libraries >> to compile as static libraries. However, shared library builds - and >> therefore meson builds fail due to missing backtrace function when linking. >> There is still work to do here, but this does fix a number of build errors >> on alpine. >> >> Acked-by: Bruce Richardson <bruce.richardson@intel.com> > > I see this error with meson GCC-8.2 static: > examples/ip_pipeline/conn.c:11: error: "__USE_GNU" redefined > Why are we defining these? __USE_GNU is defined by <features.h> and isn't supposed to be defined/undefined by the user in the first place.