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

Stephen Hemminger stephen at networkplumber.org
Tue Mar 13 22:20:31 CET 2018


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.


More information about the dev mailing list