DPDK patches and discussions
 help / color / mirror / Atom feed
From: Michael Pfeiffer <michael.pfeiffer@tu-ilmenau.de>
To: Bruce Richardson <bruce.richardson@intel.com>,
	David Marchand <david.marchand@redhat.com>
Cc: Jan Viktorin <viktorin@rehivetech.com>,
	Ruifeng Wang <ruifeng.wang@arm.com>,
	 Jerin Jacob <jerinj@marvell.com>, dev <dev@dpdk.org>,
	dpdk stable <stable@dpdk.org>,
	kosar@rehivetech.com,  Phil Yang <phil.yang@arm.com>,
	Joyce Kong <joyce.kong@arm.com>
Subject: Re: [dpdk-dev] [dpdk-stable] [PATCH v5] eal: arm: fix out of tree build
Date: Fri, 11 Jun 2021 12:27:57 +0200	[thread overview]
Message-ID: <dfe78722df0c16d75951e367b20c294cbd8e309c.camel@tu-ilmenau.de> (raw)
In-Reply-To: <YMM0DnqP/bN9+5jl@bricha3-MOBL.ger.corp.intel.com>

Hi there,

On Fri, 2021-06-11 at 10:59 +0100, Bruce Richardson wrote:
> On Fri, Jun 11, 2021 at 11:54:25AM +0200, David Marchand wrote:
> > Hello Bruce,
> > 
> > On Wed, Jun 9, 2021 at 12:18 PM Michael Pfeiffer
> > <michael.pfeiffer@tu-ilmenau.de> wrote:
> > > 
> > > Including various headers may fail for ARM builds with 'Platform must
> > > be built with RTE_FORCE_INTRINSICS' if rte_config.h is not included
> > > before. Move the error message after the includes to ensure rte_config.h
> > > is always included.
> > > 
> > > Fixes: de966ccdcd7f ("eal/arm: add byte order operations for ARM")
> > > Fixes: 17d5fa0fa90d ("eal/arm: add atomic operations for ARMv7")
> > > Fixes: d708f01b7102 ("eal/arm: add atomic operations for ARMv8")
> > > Fixes: 2173f3333b61 ("mcslock: add MCS queued lock implementation")
> > > Fixes: 7860c3965483 ("eal/arm: add spinlock operations for ARM")
> > > Fixes: ca49b92079df ("ticketlock: enable generic ticketlock on all arch")
> > > Cc: stable@dpdk.org
> > > Cc: kosar@rehivetech.com
> > > Cc: phil.yang@arm.com
> > > Cc: joyce.kong@arm.com
> > > 
> > > Signed-off-by: Michael Pfeiffer <michael.pfeiffer@tu-ilmenau.de>
> > 
> > The header check currently compiles all headers with an implicit
> > "-include rte_config.h".
> > I suppose this is because it comes from the project level meson
> > configuration.
> > 
> > Would there be a way to detect the issue fixed by this patch?
> > 
> I'm not convinced that there is an issue here. For DPDK compiles
> rte_config.h must always be included first, which is why it's included in
> the cflags reported by pkg-config. If we do want to move away from having
> rte_config as an omnipresent first include, we need to update many DPDK
> headers to explicitly include it.

the issue came up in our (rather large) DPDK app. Our build process uses a
hand-crafted build system (based on ninja) for native and cross builds, i.e.
pkg-config is not involved. It basically throws "-isystem <our-target-
prefix>/include/dpdk" into the compiler and omits linking some of the DPDK libs
not used by us.

This worked fine for us, and has no issues for x86 targets. I guess because
most headers do include rte_config (or rte_common) at least transitively before
doing anything else. Anyway, if you regard "-include rte_config.h" as the way
to go, this is fine for me. Its a one-liner for us and we can probably drop the
patch then.

Regards
Michael


  reply	other threads:[~2021-06-11 10:28 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-04 11:47 [dpdk-dev] [PATCH] eal: add include for rte_byteorder on ARM Michael Pfeiffer
2021-06-06 17:56 ` Jerin Jacob
2021-06-07  6:53   ` [dpdk-dev] [PATCH v3] eal: arm: fix out of tree build Michael Pfeiffer
2021-06-08  9:56     ` Ruifeng Wang
2021-06-08 10:29       ` [dpdk-dev] [PATCH v4] " Michael Pfeiffer
2021-06-09  7:27         ` Ruifeng Wang
2021-06-09 10:17           ` [dpdk-dev] [PATCH v5] " Michael Pfeiffer
2021-06-09 10:22             ` Ruifeng Wang
2021-06-09 11:43             ` Jerin Jacob
2021-06-11  9:54             ` [dpdk-dev] [dpdk-stable] " David Marchand
2021-06-11  9:59               ` Bruce Richardson
2021-06-11 10:27                 ` Michael Pfeiffer [this message]
2021-06-11 10:44                   ` Ruifeng Wang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=dfe78722df0c16d75951e367b20c294cbd8e309c.camel@tu-ilmenau.de \
    --to=michael.pfeiffer@tu-ilmenau.de \
    --cc=bruce.richardson@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=jerinj@marvell.com \
    --cc=joyce.kong@arm.com \
    --cc=kosar@rehivetech.com \
    --cc=phil.yang@arm.com \
    --cc=ruifeng.wang@arm.com \
    --cc=stable@dpdk.org \
    --cc=viktorin@rehivetech.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).