[dpdk-dev] [PATCH 0/2] lib: move Netlink wrapper to lib

Stephen Hemminger stephen at networkplumber.org
Wed Mar 14 16:17:36 CET 2018


On Wed, 14 Mar 2018 13:08:55 +0100
Nélio Laranjeiro <nelio.laranjeiro at 6wind.com> wrote:

> On Tue, Mar 13, 2018 at 02:20:31PM -0700, Stephen Hemminger wrote:
> > On Tue, 13 Mar 2018 13:28:25 +0100
> > Nelio Laranjeiro <nelio.laranjeiro at 6wind.com> wrote:
> >   
> > > TAP PMD uses a wrapper to communicate with Netlink through a socket.  This
> > > wrapper can be useful for other PMD which may need to communicate also with
> > > the Linux kernel via Netlink.
> > > 
> > > This series moves this wrapper to the lib level to let any PMD implement use
> > > it when necessary.
> > > 
> > > Nelio Laranjeiro (2):
> > >   lib: move Netlink code into a common library
> > >   lib: add request Netlink messages
> > > 
> > >  MAINTAINERS                                        |   3 +
> > >  config/common_base                                 |   6 ++
> > >  config/common_linuxapp                             |   1 +
> > >  drivers/net/tap/Makefile                           |   3 +-
> > >  drivers/net/tap/rte_eth_tap.c                      |  16 +--
> > >  drivers/net/tap/tap_flow.c                         | 118 ++++++++++-----------
> > >  drivers/net/tap/tap_netlink.h                      |  42 --------
> > >  drivers/net/tap/tap_tcmsgs.c                       |  28 ++---
> > >  drivers/net/tap/tap_tcmsgs.h                       |   2 +-
> > >  lib/Makefile                                       |   2 +
> > >  lib/librte_netlink/Makefile                        |  26 +++++
> > >  lib/librte_netlink/meson.build                     |  13 +++
> > >  .../librte_netlink/rte_netlink.c                   |  87 +++++++++++----
> > >  lib/librte_netlink/rte_netlink.h                   |  43 ++++++++
> > >  lib/librte_netlink/rte_netlink_version.map         |  18 ++++
> > >  lib/meson.build                                    |   2 +-
> > >  mk/rte.app.mk                                      |   1 +
> > >  17 files changed, 263 insertions(+), 148 deletions(-)
> > >  delete mode 100644 drivers/net/tap/tap_netlink.h
> > >  create mode 100644 lib/librte_netlink/Makefile
> > >  create mode 100644 lib/librte_netlink/meson.build
> > >  rename drivers/net/tap/tap_netlink.c => lib/librte_netlink/rte_netlink.c (77%)
> > >  create mode 100644 lib/librte_netlink/rte_netlink.h
> > >  create mode 100644 lib/librte_netlink/rte_netlink_version.map
> > >   
> > 
> > I might have raised this before; but having yet another netlink library is
> > not a great advantage. It would be much better to use a common external library
> > libmnl which is already available on every distribution.  
> 
> The question is more do we really want to have a dependency on a so
> small wrapper for a socket interface?
> 

Lots of drivers already have dependencies.
And I trust libmnl rather than a reinvented library.


More information about the dev mailing list