[dpdk-stable] patch 'net/mlx: fix overlinking with meson and glue dlopen' has been queued to stable release 19.11.1

Luca Boccassi luca.boccassi at gmail.com
Tue Feb 18 10:15:27 CET 2020


On Mon, 2020-02-17 at 19:07 +0100, Thomas Monjalon wrote:
> 17/02/2020 18:50, Luca Boccassi:
> > This one required a few extra backports, you can see the end result
> > at:
> > 
> > https://github.com/bluca/dpdk-stable/blob/19.11/drivers/net/mlx4/meson.build
> > 
> > https://github.com/bluca/dpdk-stable/blob/19.11/drivers/net/mlx5/meson.build
> > 
> > 
> > I can drop the series of changes to mlx's meson.build alternatively
> > if
> > you prefer.
> 
> Your backport looks OK, thanks.
> 
> There is just a unneeded redundant allow_experimental_apis.

Thanks, fixed

> 
> > On Mon, 2020-02-17 at 17:45 +0000, 
> > luca.boccassi at gmail.com
> >  wrote:
> > > Hi,
> > > 
> > > FYI, your patch has been queued to stable release 19.11.1
> > > 
> > > Note it hasn't been pushed to 
> > > http://dpdk.org/browse/dpdk-stable
> > > 
> > >  yet.
> > > It will be pushed if I get no objections before 02/19/20. So
> > > please
> > > shout if anyone has objections.
> > > 
> > > Also note that after the patch there's a diff of the upstream
> > > commit
> > > vs the
> > > patch applied to the branch. This will indicate if there was any
> > > rebasing
> > > needed to apply to the stable branch. If there were code changes
> > > for
> > > rebasing
> > > (ie: not only metadata diffs), please double check that the
> > > rebase
> > > was
> > > correctly done.
> > > 
> > > Thanks.
> > > 
> > > Luca Boccassi
> > > 
> > > ---
> > > From 3253622dc4630e11207629aba50293049938ec20 Mon Sep 17 00:00:00
> > > 2001
> > > From: Thomas Monjalon <
> > > thomas at monjalon.net
> > > 
> > > 
> > > Date: Wed, 12 Feb 2020 23:07:08 +0100
> > > Subject: [PATCH] net/mlx: fix overlinking with meson and glue
> > > dlopen
> > > 
> > > [ upstream commit e21492a5175af31ae568fa5fabef1f4b22706962 ]
> > > 
> > > If ibverbs_link is dlopen, the PMD and application should not
> > > be linked with ibverbs, but the glue library is.
> > > Unfortunately the ibverbs dependency was exported in the
> > > variable ext_deps, so there were overlinking.
> > > 
> > > It is fixed by not exporting the dependency in ext_deps,
> > > and recreating a limited dependency object for cflags only.
> > > 
> > > Fixes: 1dd7c7e38c19 ("net/mlx4: support meson build")
> > > Fixes: 96d7c62a70c7 ("net/mlx5: support meson build")
> > > Cc: 
> > > stable at dpdk.org
> > > 
> > > 
> > > 
> > > Signed-off-by: Thomas Monjalon <
> > > thomas at monjalon.net
> > > 
> > > 
> > > Acked-by: Bruce Richardson <
> > > bruce.richardson at intel.com
> > > 
> > > 
> > > ---
> > >  drivers/net/mlx4/meson.build | 6 ++++--
> > >  drivers/net/mlx5/meson.build | 4 +++-
> > >  2 files changed, 7 insertions(+), 3 deletions(-)
> > > 
> > > diff --git a/drivers/net/mlx4/meson.build
> > > b/drivers/net/mlx4/meson.build
> > > index 17711f154b..ff7386aee2 100644
> > > --- a/drivers/net/mlx4/meson.build
> > > +++ b/drivers/net/mlx4/meson.build
> > > @@ -31,7 +31,7 @@ foreach libname:libnames
> > >  	endif
> > >  	if lib.found()
> > >  		libs += lib
> > > -		if not static_ibverbs
> > > +		if not static_ibverbs and not dlopen_ibverbs
> > >  			ext_deps += lib
> > >  		endif
> > >  	else
> > > @@ -41,10 +41,12 @@ foreach libname:libnames
> > >  endforeach
> > >  
> > >  if build
> > > -	if static_ibverbs
> > > +	if static_ibverbs or dlopen_ibverbs
> > >  		# Build without adding shared libs to Requires.private
> > >  		ibv_cflags = run_command(pkgconf, '--cflags',
> > > 'libibverbs').stdout()
> > >  		ext_deps += declare_dependency(compile_args:
> > > ibv_cflags.split())
> > > +	endif
> > > +	if static_ibverbs
> > >  		# Add static deps ldflags to internal apps and
> > > Libs.private
> > >  		ibv_ldflags = run_command(ldflags_ibverbs_static,
> > > check:true).stdout()
> > >  		ext_deps +=
> > > declare_dependency(link_args:ibv_ldflags.split())
> > > diff --git a/drivers/net/mlx5/meson.build
> > > b/drivers/net/mlx5/meson.build
> > > index e21f3d8dc8..dab1b83fd3 100644
> > > --- a/drivers/net/mlx5/meson.build
> > > +++ b/drivers/net/mlx5/meson.build
> > > @@ -41,10 +41,12 @@ foreach libname:libnames
> > >  endforeach
> > >  
> > >  if build
> > > -	if static_ibverbs
> > > +	if static_ibverbs or dlopen_ibverbs
> > >  		# Build without adding shared libs to Requires.private
> > >  		ibv_cflags = run_command(pkgconf, '--cflags',
> > > 'libibverbs').stdout()
> > >  		ext_deps += declare_dependency(compile_args:
> > > ibv_cflags.split())
> > > +	endif
> > > +	if static_ibverbs
> > >  		# Add static deps ldflags to internal apps and
> > > Libs.private
> > >  		ibv_ldflags = run_command(ldflags_ibverbs_static,
> > > check:true).stdout()
> > >  		ext_deps +=
> > > declare_dependency(link_args:ibv_ldflags.split())
> > > 
> 
> 
> 
> 
> 
> 
-- 
Kind regards,
Luca Boccassi



More information about the stable mailing list