DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Chautru, Nicolas" <nicolas.chautru@intel.com>
To: "Trahe, Fiona" <fiona.trahe@intel.com>,
	David Marchand <david.marchand@redhat.com>,
	Akhil Goyal <akhil.goyal@nxp.com>
Cc: dev <dev@dpdk.org>, Jerin Jacob <jerinjacobk@gmail.com>,
	Pavan Nikhilesh <pbhagavatula@marvell.com>,
	"Richardson, Bruce" <bruce.richardson@intel.com>,
	 Thomas Monjalon <thomas@monjalon.net>,
	"Yigit, Ferruh" <ferruh.yigit@intel.com>,
	Hemant Agrawal <hemant.agrawal@nxp.com>,
	"Trahe, Fiona" <fiona.trahe@intel.com>
Subject: Re: [dpdk-dev] [PATCH v5] build: disable experimental API check internally
Date: Sat, 18 Apr 2020 19:43:55 +0000	[thread overview]
Message-ID: <1183128033837D43A851F70F33ED5C57893DC6BB@FMSMSX109.amr.corp.intel.com> (raw)
In-Reply-To: <SN6PR11MB2880D3640BDE65D9A8AFE40AE4D90@SN6PR11MB2880.namprd11.prod.outlook.com>

Hi,

It is probably just me but I having issue with this new patch. 
I typically rebuild the PMD libraries directly when doing incremental changes from the Makefile in the PMD directory (ie. not rebuilding full DPDK each time, which still work okay obviously). 
With this new change it doesn't seem to work any longer with the updated Makefiles without the ALLOW_EXPERIMENTAL_API:
	Symbol is not yet part of stable ABI [-Werror=deprecated-declarations]
I would need to have a further look but checking whether it is just me. 

Thanks
Nic

> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Trahe, Fiona
> Sent: Friday, April 17, 2020 8:52 AM
> To: David Marchand <david.marchand@redhat.com>
> Cc: dev <dev@dpdk.org>; Jerin Jacob <jerinjacobk@gmail.com>; Pavan
> Nikhilesh <pbhagavatula@marvell.com>; Richardson, Bruce
> <bruce.richardson@intel.com>; Thomas Monjalon <thomas@monjalon.net>;
> Yigit, Ferruh <ferruh.yigit@intel.com>; Hemant Agrawal
> <hemant.agrawal@nxp.com>; Trahe, Fiona <fiona.trahe@intel.com>
> Subject: Re: [dpdk-dev] [PATCH v5] build: disable experimental API check
> internally
> 
> Hi David,
> 
> > -----Original Message-----
> > From: Trahe, Fiona <fiona.trahe@intel.com>
> > Sent: Friday, April 17, 2020 4:05 PM
> > To: David Marchand <david.marchand@redhat.com>
> > Cc: dev <dev@dpdk.org>; Jerin Jacob <jerinjacobk@gmail.com>; Pavan
> > Nikhilesh <pbhagavatula@marvell.com>; Richardson, Bruce
> > <bruce.richardson@intel.com>; Thomas Monjalon <thomas@monjalon.net>;
> > Yigit, Ferruh <ferruh.yigit@intel.com>; Hemant Agrawal
> > <hemant.agrawal@nxp.com>; Trahe, Fiona <fiona.trahe@intel.com>
> > Subject: RE: [dpdk-dev] [PATCH v5] build: disable experimental API
> > check internally
> >
> > Hi Davd,
> >
> > > -----Original Message-----
> > > From: David Marchand <david.marchand@redhat.com>
> > > Sent: Friday, April 17, 2020 2:56 PM
> > > To: Trahe, Fiona <fiona.trahe@intel.com>
> > > Cc: dev <dev@dpdk.org>; Jerin Jacob <jerinjacobk@gmail.com>; Pavan
> > > Nikhilesh <pbhagavatula@marvell.com>; Richardson, Bruce
> > > <bruce.richardson@intel.com>; Thomas
> > Monjalon
> > > <thomas@monjalon.net>; Yigit, Ferruh <ferruh.yigit@intel.com>;
> > > Hemant Agrawal <hemant.agrawal@nxp.com>
> > > Subject: Re: [dpdk-dev] [PATCH v5] build: disable experimental API
> > > check internally
> > >
> > > On Fri, Apr 17, 2020 at 3:44 PM Trahe, Fiona <fiona.trahe@intel.com>
> wrote:
> > > >
> > > > Hi David,
> > > >
> > > > > -----Original Message-----
> > > > > From: David Marchand <david.marchand@redhat.com>
> > > > > Sent: Friday, April 17, 2020 2:23 PM
> > > > > To: Trahe, Fiona <fiona.trahe@intel.com>
> > > > > Cc: dev <dev@dpdk.org>; Jerin Jacob <jerinjacobk@gmail.com>;
> > > > > Pavan Nikhilesh <pbhagavatula@marvell.com>; Richardson, Bruce
> > > > > <bruce.richardson@intel.com>; Thomas
> > > Monjalon
> > > > > <thomas@monjalon.net>; Yigit, Ferruh <ferruh.yigit@intel.com>;
> > > > > Hemant Agrawal <hemant.agrawal@nxp.com>
> > > > > Subject: Re: [dpdk-dev] [PATCH v5] build: disable experimental
> > > > > API check internally
> > > > >
> > > > > On Fri, Apr 17, 2020 at 12:21 PM Trahe, Fiona <fiona.trahe@intel.com>
> wrote:
> > > > > > I see this is already applied.
> > > > > >
> > > > > > However,
> > > > > > rte_cryptodev_queue_pair_setup() calls
> > > > > > rte_cryptodev_sym_get_existing_header_session_size()
> > > > > > The former is a stable API, the latter is experimental.
> > > > > > So I expect the build to break when ALLOW_EXPERIMENTAL_API is
> disabled.
> > > > [Fiona] Thanks for confirming where the flag is.
> > > > But I think you've missed my point.
> > > > What about this problem?
> > >
> > > - dpdk-test-crypto-perf is built as part of the dpdk compilation itself.
> > > There is no user to be made aware of its use of experimental API.
> > >
> > > Now if you are talking about how the crypto API is bent in that it
> > > exposes a stable ABI with an underlying experimental ABI, this has
> > > nothing to do with the flag change.
> > [Fiona] Before this if an application didn't set
> > ALLOW_EXPERIMENTAL_API (which I expect is the default for many apps)
> > then the build worked fine as long as the app didn't directly call an
> > experimental API. The crypto lib still built ok as its own Makefile had the flag.
> > I just tried this with dpdk-test-crypto-perf. I had to remove one
> > direct call, without that it built ok. When I remove the flag from the
> > crypto lib Makefile, the build breaks as expected due to the above issue.
> >
> > So, yes, cryptodev lib should be fixed.
> > However this patch just applied will potentially break builds for many apps!
> > It could expose many other issues of internal dependencies on experimental
> APIs.
> 
> [Fiona] Ok, I get it now, there's no issue.
> I see now why the patch name was changed from "global" to "internal"!
> I had understood that the flag the application set or didn't set would ripple
> down through the whole build. Instead the flag is set (or not set) once by the
> application only affecting direct API calls and once for the rest of the build,
> which includes apps in the app folder, but not apps in the examples folder.
> So allowing experimental APIs internally, while disallowing them externally.
> A bit confusing, but ok, doesn't break anything and definitely better than having
> flags in every Make/meson file.
> 
> Fiona
> 


  reply	other threads:[~2020-04-18 19:44 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-02 18:32 [dpdk-dev] [PATCH v2 1/2] build: meson make experimental tag as global Jerin Jacob
2020-04-02 18:32 ` [dpdk-dev] [PATCH v2 2/2] build: makefile " Jerin Jacob
2020-04-03  7:23 ` [dpdk-dev] [PATCH v2 1/2] build: meson " David Marchand
2020-04-03  7:45   ` David Marchand
2020-04-03  8:05     ` [dpdk-dev] [EXT] " Pavan Nikhilesh Bhagavatula
2020-04-03  8:18       ` David Marchand
2020-04-03  9:10         ` Bruce Richardson
2020-04-03  9:14           ` David Marchand
2020-04-03  9:35             ` Bruce Richardson
2020-04-03 10:56       ` Thomas Monjalon
2020-04-03 11:02         ` Pavan Nikhilesh Bhagavatula
2020-04-03 10:20 ` [dpdk-dev] " Hemant Agrawal (OSS)
2020-04-03 14:19 ` [dpdk-dev] [PATCH v3] build: enable allow experimental API flag globally pbhagavatula
2020-04-06 20:16   ` David Marchand
2020-04-10  9:03   ` [dpdk-dev] [PATCH v4] build: enable allow experimental API flag pbhagavatula
2020-04-10 12:12     ` David Marchand
2020-04-10 15:48       ` David Marchand
2020-04-13 14:55 ` [dpdk-dev] [PATCH v5] build: disable experimental API check internally David Marchand
2020-04-14 14:23   ` David Marchand
2020-04-17 10:21     ` Trahe, Fiona
2020-04-17 13:23       ` David Marchand
2020-04-17 13:44         ` Trahe, Fiona
2020-04-17 13:54           ` Thomas Monjalon
2020-04-17 13:56           ` David Marchand
2020-04-17 15:05             ` Trahe, Fiona
2020-04-17 15:52               ` Trahe, Fiona
2020-04-18 19:43                 ` Chautru, Nicolas [this message]
2020-04-19  7:35                   ` David Marchand
2020-04-19 16:17                     ` Chautru, Nicolas

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=1183128033837D43A851F70F33ED5C57893DC6BB@FMSMSX109.amr.corp.intel.com \
    --to=nicolas.chautru@intel.com \
    --cc=akhil.goyal@nxp.com \
    --cc=bruce.richardson@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=fiona.trahe@intel.com \
    --cc=hemant.agrawal@nxp.com \
    --cc=jerinjacobk@gmail.com \
    --cc=pbhagavatula@marvell.com \
    --cc=thomas@monjalon.net \
    /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).