DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Trahe, Fiona" <fiona.trahe@intel.com>
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
Date: Fri, 17 Apr 2020 15:52:24 +0000	[thread overview]
Message-ID: <SN6PR11MB2880D3640BDE65D9A8AFE40AE4D90@SN6PR11MB2880.namprd11.prod.outlook.com> (raw)
In-Reply-To: <SN6PR11MB2880DEE87A469FF554301A3DE4D90@SN6PR11MB2880.namprd11.prod.outlook.com>

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-17 15:52 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 [this message]
2020-04-18 19:43                 ` Chautru, Nicolas
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=SN6PR11MB2880D3640BDE65D9A8AFE40AE4D90@SN6PR11MB2880.namprd11.prod.outlook.com \
    --to=fiona.trahe@intel.com \
    --cc=bruce.richardson@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@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).