DPDK patches and discussions
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: Gaetan Rivet <gaetan.rivet@6wind.com>
Cc: dev@dpdk.org, Jan Blunck <jblunck@infradead.org>
Subject: Re: [dpdk-dev] [PATCH v2 00/42] Remove struct eth_driver
Date: Wed, 12 Apr 2017 09:25:18 -0700	[thread overview]
Message-ID: <20170412092519.3a29fb55@xeon-e3> (raw)
In-Reply-To: <cover.1491924900.git.gaetan.rivet@6wind.com>

On Tue, 11 Apr 2017 17:44:07 +0200
Gaetan Rivet <gaetan.rivet@6wind.com> wrote:

> I rebased the following work of Jan:
> 
> This series is removing the PCI specific struct eth_driver from rte_ether. The
> PCI drivers are changed to use the newly introduced header-only helpers
> instead. Although the virtual drivers did not make use of the ethdev's driver
> field they are converted to use the VDEV specific allocation helpers. The
> motivation for this change is to properly embed a reference to the generic
> rte_device in the ethdev.
> 
> The series is based on:
> 
> * http://dpdk.org/dev/patchwork/patch/20416/
> * http://dpdk.org/dev/patchwork/patch/20417/
> * The "Rework vdev probing to use rte_bus infrastructure" series
> * http://dpdk.org/dev/patchwork/patch/21058/
> 
> Changes in v2:
>  * Removed the patch "net/vmxnet3: use library function for DMA zone reserve"
>    It is essentially duplicating the following commit:
>       04df93d1edac ("net/vmxnet3: fix queue size changes")
>  * Fixed header includes for mlx4 and mlx5 PMD
>  * Followed the changes of the series for new PMDs (AVP, liquidio)
>  * Made KNI use the new API
>  * Made PCAP use the new API
>  * Fixed undefined behavior on vdev driver arg parsing
>  * Fixed virtual_pmd for unit test
> 
> Gaetan Rivet (5):
>   net/kni: use ethdev allocation helper for virtual devices
>   net/pcap: use ethdev allocation helper for virtual devices
>   net/avp: Don't use eth_driver
>   net/liquidio: Don't use eth_driver
>   test: remove unused ethdev driver
> 
> Jan Blunck (37):
>   eal: add name field to generic device
>   eal: parse "driver" device argument before probing drivers
>   net/nfp: use library function for DMA zone reserve
>   ether: add allocation helper for virtual drivers
>   net/tap: use ethdev allocation helper for virtual devices
>   net/vhost: use ethdev allocation helper for virtual devices
>   net/virtio: use ethdev allocation helper for virtual devices
>   net/af_packet: use ethdev allocation helper for virtual devices
>   app/test: don't short-circuit null device creation
>   net/null: internalize eth_dev_null_create()
>   net/null: use ethdev allocation helper for virtual devices
>   net/bonding: make bonding API call through EAL on create/free
>   net/bonding: use ethdev allocation helper for virtual devices
>   ethdev: add PCI driver helpers
>   net/virtio: Don't use eth_driver
>   net/bnx2x: Don't use eth_driver
>   net/bnxt: Don't use eth_driver
>   net/cxgbe: Don't use eth_driver
>   net/em: Don't use eth_driver
>   net/igb: Don't use eth_driver
>   net/ena: Don't use eth_driver
>   net/enic: Don't use eth_driver
>   net/fm10k: Don't use eth_driver
>   net/i40e: Don't use eth_driver
>   net/i40evf: Don't use eth_driver
>   net/ixgbe: Don't use eth_driver
>   net/mlx: Don't reference eth_driver
>   net/nfp: Don't use eth_driver
>   net/qede: Don't use eth_driver
>   net/sfc: Don't use eth_driver
>   net/szedata2: Don't use eth_driver
>   net/thunderx: Don't use eth_driver
>   net/vmxnet3: Don't use eth_driver
>   ethdev: remove unused ethdev PCI probe/remove
>   ethdev: remove unused ethdev driver
>   ethdev: remove PCI specific helper from generic ethdev header
>   ethdev: don't include PCI header
> 
>  drivers/net/af_packet/rte_eth_af_packet.c |  42 +++----
>  drivers/net/avp/avp_ethdev.c              |  43 +++++--
>  drivers/net/bnx2x/bnx2x_ethdev.c          |  64 ++++++----
>  drivers/net/bnx2x/bnx2x_rxtx.c            |   2 +-
>  drivers/net/bnxt/bnxt_ethdev.c            |  36 ++++--
>  drivers/net/bonding/rte_eth_bond_api.c    | 171 ++++----------------------
>  drivers/net/bonding/rte_eth_bond_args.c   |   2 +-
>  drivers/net/bonding/rte_eth_bond_pmd.c    | 160 +++++++++++++++++++++++--
>  drivers/net/cxgbe/cxgbe_ethdev.c          |  29 +++--
>  drivers/net/cxgbe/cxgbe_main.c            |   2 +-
>  drivers/net/cxgbe/sge.c                   |   6 +-
>  drivers/net/e1000/em_ethdev.c             |  30 +++--
>  drivers/net/e1000/igb_ethdev.c            |  60 ++++++----
>  drivers/net/ena/ena_ethdev.c              |  29 +++--
>  drivers/net/enic/enic_ethdev.c            |  29 +++--
>  drivers/net/fm10k/fm10k_ethdev.c          |  30 +++--
>  drivers/net/i40e/i40e_ethdev.c            |  36 +++---
>  drivers/net/i40e/i40e_ethdev_vf.c         |  31 +++--
>  drivers/net/i40e/i40e_fdir.c              |   2 +-
>  drivers/net/ixgbe/ixgbe_ethdev.c          |  66 +++++++----
>  drivers/net/kni/rte_eth_kni.c             |  39 +++---
>  drivers/net/liquidio/lio_ethdev.c         |  44 +++++--
>  drivers/net/mlx4/mlx4.c                   |  24 ++--
>  drivers/net/mlx5/mlx5.c                   |  24 ++--
>  drivers/net/nfp/nfp_net.c                 |  59 ++++-----
>  drivers/net/null/Makefile                 |   7 +-
>  drivers/net/null/rte_eth_null.c           |  55 +++------
>  drivers/net/null/rte_eth_null.h           |  40 -------
>  drivers/net/null/rte_pmd_null_version.map |   7 --
>  drivers/net/pcap/rte_eth_pcap.c           |  62 +++++-----
>  drivers/net/qede/qede_ethdev.c            |  60 ++++++----
>  drivers/net/qede/qede_ethdev.h            |   1 +
>  drivers/net/ring/rte_eth_ring.c           |   1 -
>  drivers/net/sfc/sfc_ethdev.c              |  34 ++++--
>  drivers/net/szedata2/rte_eth_szedata2.c   |  29 +++--
>  drivers/net/tap/rte_eth_tap.c             |  38 ++----
>  drivers/net/thunderx/nicvf_ethdev.c       |  29 +++--
>  drivers/net/vhost/rte_eth_vhost.c         |  54 ++++-----
>  drivers/net/virtio/virtio_ethdev.c        |  34 ++++--
>  drivers/net/virtio/virtio_user_ethdev.c   |  20 +---
>  drivers/net/vmxnet3/vmxnet3_ethdev.c      |  30 +++--
>  lib/librte_eal/bsdapp/eal/eal_pci.c       |   3 +
>  lib/librte_eal/common/eal_common_dev.c    |   3 +
>  lib/librte_eal/common/eal_common_vdev.c   |  53 ++++++++-
>  lib/librte_eal/common/include/rte_dev.h   |   1 +
>  lib/librte_eal/common/include/rte_pci.h   |   1 +
>  lib/librte_eal/linuxapp/eal/eal_pci.c     |   3 +
>  lib/librte_ether/Makefile                 |   2 +
>  lib/librte_ether/rte_ethdev.c             | 117 ------------------
>  lib/librte_ether/rte_ethdev.h             | 105 +---------------
>  lib/librte_ether/rte_ethdev_pci.h         | 191 ++++++++++++++++++++++++++++++
>  lib/librte_ether/rte_ethdev_vdev.h        |  84 +++++++++++++
>  lib/librte_ether/rte_ether_version.map    |  11 +-
>  test/test/test_link_bonding_rssconf.c     |   4 +-
>  test/test/virtual_pmd.c                   |  12 +-
>  55 files changed, 1185 insertions(+), 966 deletions(-)
>  delete mode 100644 drivers/net/null/rte_eth_null.h
>  create mode 100644 lib/librte_ether/rte_ethdev_pci.h
>  create mode 100644 lib/librte_ether/rte_ethdev_vdev.h
> 

Looks good.

Acked-by: Stephen Hemminger <stephen@networkplumber.org>

  parent reply	other threads:[~2017-04-12 16:25 UTC|newest]

Thread overview: 104+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-06  9:59 [dpdk-dev] [PATCH 00/38] " Jan Blunck
2017-03-06  9:59 ` [dpdk-dev] [PATCH 01/38] eal: add name field to generic device Jan Blunck
2017-03-06  9:59 ` [dpdk-dev] [PATCH 02/38] eal: parse "driver" device argument before probing drivers Jan Blunck
2017-03-06  9:59 ` [dpdk-dev] [PATCH 03/38] net/nfp: use library function for DMA zone reserve Jan Blunck
2017-03-10  7:03   ` Shreyansh Jain
2017-03-10  7:20     ` Jan Blunck
2017-03-06  9:59 ` [dpdk-dev] [PATCH 04/38] net/vmxnet3: " Jan Blunck
2017-03-06  9:59 ` [dpdk-dev] [PATCH 05/38] ether: add allocation helper for virtual drivers Jan Blunck
2017-03-06  9:59 ` [dpdk-dev] [PATCH 06/38] net/tap: use ethdev allocation helper for virtual devices Jan Blunck
2017-03-06  9:59 ` [dpdk-dev] [PATCH 07/38] net/vhost: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 08/38] net/virtio: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 09/38] net/af_packet: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 10/38] app/test: don't short-circuit null device creation Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 11/38] net/null: internalize eth_dev_null_create() Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 12/38] net/null: use ethdev allocation helper for virtual devices Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 13/38] net/bonding: make bonding API call through EAL on create/free Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 14/38] net/bonding: use ethdev allocation helper for virtual devices Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 15/38] ethdev: add PCI driver helpers Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 16/38] net/virtio: Don't use eth_driver Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 17/38] net/bnx2x: " Jan Blunck
2017-03-06 19:32   ` Harish Patil
2017-03-06 10:00 ` [dpdk-dev] [PATCH 18/38] net/bnxt: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 19/38] net/cxgbe: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 20/38] net/em: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 21/38] net/igb: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 22/38] net/ena: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 23/38] net/enic: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 24/38] net/fm10k: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 25/38] net/i40e: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 26/38] net/i40evf: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 27/38] net/ixgbe: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 28/38] net/mlx: Don't reference eth_driver Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 29/38] net/nfp: Don't use eth_driver Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 30/38] net/qede: " Jan Blunck
2017-03-06 19:33   ` Harish Patil
2017-03-06 10:00 ` [dpdk-dev] [PATCH 31/38] net/sfc: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 32/38] net/szedata2: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 33/38] net/thunderx: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 34/38] net/vmxnet3: " Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 35/38] ethdev: remove unused ethdev PCI probe/remove Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 36/38] ethdev: remove unused ethdev driver Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 37/38] ethdev: remove PCI specific helper from generic ethdev header Jan Blunck
2017-03-06 10:00 ` [dpdk-dev] [PATCH 38/38] ethdev: don't include PCI header Jan Blunck
2017-03-23 15:34 ` [dpdk-dev] [PATCH 00/38] Remove struct eth_driver Stephen Hemminger
2017-03-25 10:50   ` Jan Blunck
2017-04-11 15:44 ` [dpdk-dev] [PATCH v2 00/42] " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 01/42] eal: add name field to generic device Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 02/42] eal: parse "driver" device argument before probing drivers Gaetan Rivet
2017-05-10  2:34     ` Ferruh Yigit
2017-05-10 11:01       ` Ferruh Yigit
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 03/42] net/nfp: use library function for DMA zone reserve Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 04/42] ether: add allocation helper for virtual drivers Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 05/42] net/tap: use ethdev allocation helper for virtual devices Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 06/42] net/vhost: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 07/42] net/virtio: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 08/42] net/af_packet: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 09/42] app/test: don't short-circuit null device creation Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 10/42] net/null: internalize eth_dev_null_create() Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 11/42] net/null: use ethdev allocation helper for virtual devices Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 12/42] net/bonding: make bonding API call through EAL on create/free Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 13/42] net/bonding: use ethdev allocation helper for virtual devices Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 14/42] net/kni: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 15/42] net/pcap: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 16/42] ethdev: add PCI driver helpers Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 17/42] net/virtio: Don't use eth_driver Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 18/42] net/bnx2x: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 19/42] net/bnxt: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 20/42] net/cxgbe: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 21/42] net/em: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 22/42] net/igb: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 23/42] net/ena: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 24/42] net/enic: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 25/42] net/fm10k: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 26/42] net/i40e: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 27/42] net/i40evf: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 28/42] net/ixgbe: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 29/42] net/mlx: Don't reference eth_driver Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 30/42] net/nfp: Don't use eth_driver Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 31/42] net/qede: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 32/42] net/sfc: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 33/42] net/szedata2: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 34/42] net/thunderx: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 35/42] net/vmxnet3: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 36/42] net/avp: " Gaetan Rivet
2017-04-11 18:48     ` Legacy, Allain
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 37/42] net/liquidio: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 38/42] ethdev: remove unused ethdev PCI probe/remove Gaetan Rivet
2017-04-12 11:24     ` Neil Horman
2017-04-12 11:28       ` Neil Horman
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 39/42] ethdev: remove unused ethdev driver Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 40/42] test: " Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 41/42] ethdev: remove PCI specific helper from generic ethdev header Gaetan Rivet
2017-04-11 15:44   ` [dpdk-dev] [PATCH v2 42/42] ethdev: don't include PCI header Gaetan Rivet
2017-04-12 16:25   ` Stephen Hemminger [this message]
2017-04-14 13:09     ` [dpdk-dev] [PATCH v2 00/42] Remove struct eth_driver Thomas Monjalon
2017-04-18 18:27       ` [dpdk-dev] [PATCH 0/2] next-net: remove ethdev driver Ferruh Yigit
2017-04-18 18:27         ` [dpdk-dev] [PATCH 1/2] net/ark: remove eth_dev Ferruh Yigit
2017-04-18 19:24           ` Ed Czeck
2017-04-19 10:03             ` Ferruh Yigit
2017-04-18 18:27         ` [dpdk-dev] [PATCH 2/2] net/xenvirt: remove ethdev driver Ferruh Yigit
2017-04-19  9:52           ` [dpdk-dev] [PATCH v2] net/xenvirt: fix build error Ferruh Yigit
2017-04-19 12:12             ` Thomas Monjalon
2017-04-18 18:38         ` [dpdk-dev] [PATCH 0/2] next-net: remove ethdev driver Ferruh Yigit
2017-04-19 11:37         ` Shreyansh Jain

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=20170412092519.3a29fb55@xeon-e3 \
    --to=stephen@networkplumber.org \
    --cc=dev@dpdk.org \
    --cc=gaetan.rivet@6wind.com \
    --cc=jblunck@infradead.org \
    /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).