[dpdk-dev] [PATCH v6 0/5] eal: simplify devargs and hotplug functions

Thomas Monjalon thomas at monjalon.net
Sun Oct 7 11:32:39 CEST 2018


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

Instead of changing the existing hotplug functions, as in the RFC,
some new experimental functions are added.
The old functions lose their experimental status in order to provide
a non-experimental replacement for deprecated attach/detach functions.

It has been discussed briefly in the latest technical board meeting.


Changes in v6 - after Gaetan's review:
  - bump ABI version of all buses (because of rte_device change)
  - unroll snprintf loop in rte_eal_hotplug_add

Changes in v5:
  - rte_devargs_remove is fixed in case of null devargs (patch 2)
  - a pointer to the bus is added in rte_device (patch 3)
  - rte_dev_remove is fixed in case of no devargs (patch 5)

Changes in v4 - after Andrew's review:
  - add API changes in release notes (patches 1 & 2)
  - fix memory leak in rte_eal_hotplug_add (patch 4)

Change in v3:
  - fix null dereferencing in error path (patch 2)


Thomas Monjalon (5):
  devargs: remove deprecated functions
  devargs: simplify parameters of removal function
  eal: add bus pointer in device structure
  eal: remove experimental flag of hotplug functions
  eal: simplify parameters of hotplug functions

 doc/guides/rel_notes/release_18_11.rst      | 23 ++++--
 drivers/bus/dpaa/Makefile                   |  2 +-
 drivers/bus/dpaa/dpaa_bus.c                 |  2 +
 drivers/bus/dpaa/meson.build                |  2 +
 drivers/bus/fslmc/Makefile                  |  2 +-
 drivers/bus/fslmc/fslmc_bus.c               |  2 +
 drivers/bus/fslmc/meson.build               |  2 +
 drivers/bus/ifpga/Makefile                  |  2 +-
 drivers/bus/ifpga/ifpga_bus.c               |  6 +-
 drivers/bus/ifpga/meson.build               |  2 +
 drivers/bus/pci/Makefile                    |  2 +-
 drivers/bus/pci/bsd/pci.c                   |  2 +
 drivers/bus/pci/linux/pci.c                 |  1 +
 drivers/bus/pci/meson.build                 |  2 +
 drivers/bus/pci/private.h                   |  2 +
 drivers/bus/vdev/Makefile                   |  2 +-
 drivers/bus/vdev/meson.build                |  2 +
 drivers/bus/vdev/vdev.c                     |  9 +--
 drivers/bus/vmbus/Makefile                  |  2 +-
 drivers/bus/vmbus/linux/vmbus_bus.c         |  1 +
 drivers/bus/vmbus/meson.build               |  2 +
 drivers/bus/vmbus/private.h                 |  3 +
 drivers/net/failsafe/failsafe_eal.c         |  3 +-
 drivers/net/failsafe/failsafe_ether.c       |  3 +-
 lib/librte_eal/common/eal_common_dev.c      | 90 +++++++++++++--------
 lib/librte_eal/common/eal_common_devargs.c  | 41 ++--------
 lib/librte_eal/common/include/rte_dev.h     | 36 +++++++--
 lib/librte_eal/common/include/rte_devargs.h | 81 +------------------
 lib/librte_eal/rte_eal_version.map          | 10 +--
 29 files changed, 155 insertions(+), 184 deletions(-)

-- 
2.19.0



More information about the dev mailing list