[dpdk-dev] [PATCH v5 0/7] allow hotplug to skip an already probed device

Thomas Monjalon thomas at monjalon.net
Sun Oct 14 22:47:40 CEST 2018


This is a follow-up of an idea presented at Dublin
during the "hotplug talk".

The idea is to ease probing of range of ports attached
to the same rte_device.
I becomes possible to allow probing again the same device
but with a bigger range of ports in the devargs.

Instead of adding a parameter to the hotplug functions, as in the RFC,
the check of an already probed device is moved to the bus and enabled PMDs.
It gives flexibility to drivers for managing range of ports.


Changes in v5 - after Andrew's review:
  - remove driver name usage in mlx5/szedata2 probing and crypto/compress logs
  - update DMA ring names in bnx2x, cxgbe, vmxnet3 and testpmd lookup

Changes in v4 - after Andrew's review:
  - remove access to rte_device.driver during probing (patch 1)

Changes in v3 - after Declan's review:
  - return error in all buses but PCI
  - add a PCI driver flag to enable feature per driver
  - return -EEXIST if probing again is not supported


Thomas Monjalon (7):
  net/mlx5: remove useless driver name comparison
  ethdev: rename memzones allocated for DMA
  cryptodev: remove driver name from logs
  compressdev: remove driver name from logs
  drivers/bus: move driver assignment to end of probing
  eal: add function to query device status
  eal: allow probing a device again

 app/test-pmd/config.c                        |  4 +--
 drivers/bus/dpaa/dpaa_bus.c                  |  3 ++
 drivers/bus/fslmc/fslmc_bus.c                |  3 ++
 drivers/bus/ifpga/ifpga_bus.c                | 21 +++++------
 drivers/bus/pci/pci_common.c                 | 38 ++++++++++++--------
 drivers/bus/pci/rte_bus_pci.h                |  6 ++--
 drivers/bus/vdev/vdev.c                      | 12 ++++---
 drivers/bus/vmbus/vmbus_common.c             |  5 +--
 drivers/net/bnx2x/bnx2x_rxtx.c               | 15 ++------
 drivers/net/cxgbe/sge.c                      | 24 ++++++-------
 drivers/net/i40e/i40e_vf_representor.c       |  3 --
 drivers/net/mlx4/mlx4.c                      |  1 -
 drivers/net/mlx5/mlx5.c                      |  1 -
 drivers/net/mlx5/mlx5_ethdev.c               |  5 +--
 drivers/net/szedata2/rte_eth_szedata2.c      |  6 ++--
 drivers/net/vmxnet3/vmxnet3_ethdev.c         |  4 +--
 lib/librte_compressdev/rte_compressdev_pmd.c | 23 +++++-------
 lib/librte_cryptodev/rte_cryptodev_pmd.c     | 23 +++++-------
 lib/librte_eal/common/eal_common_dev.c       | 14 +++++---
 lib/librte_eal/common/include/rte_dev.h      | 18 ++++++++--
 lib/librte_eal/rte_eal_version.map           |  1 +
 lib/librte_ethdev/rte_ethdev.c               |  5 ++-
 22 files changed, 121 insertions(+), 114 deletions(-)

-- 
2.19.0



More information about the dev mailing list