[v6,0/4] Install eal event handler in i40e/ixgbe
mbox series

Message ID 1534503016-31805-1-git-send-email-jia.guo@intel.com
Headers show
Series
  • Install eal event handler in i40e/ixgbe
Related show

Message

Guo, Jia Aug. 17, 2018, 10:50 a.m. UTC
We currently have eal event and ethdev event for ethdev hotplug. Some
ethdev's need to use an eal event to detect hotplug behaviors. Previously,
we needed to register an eal event callback in the application, but this
potentially causes a race condition between the eal event process to the
ethdev event process. It might better to fix this issue.

This patch set introduces a way to combine these 2 event by registering
the ethdev eal event callback in the ethdev and triggering the ethdev
hotplug event in the callback. This will let the ethdev device easily
process the hotplug in a common way.

Drivers which support hotplug could use this mechanism to detect and
process hotplugs.

patch history:
v6->v5:
refine some commit log

v5->v4:
refine some code style and typo

v4->v3:
change to use device event handler install api

v3->v2:
remove the callback from driver to ethdev for common.

v2->v1:
add ixgbe hotplug detect case.
refine some doc.

Jeff Guo (4):
  ethdev: Add eal device event callback
  net/ixgbe: install ethdev hotplug handler in ixgbe
  net/i40e: install hotplug handler in i40e
  testpmd: remove the dev event callback register

 app/test-pmd/testpmd.c                   | 78 --------------------------------
 doc/guides/rel_notes/release_18_08.rst   | 12 +++++
 drivers/net/i40e/i40e_ethdev.c           |  8 +++-
 drivers/net/ixgbe/ixgbe_ethdev.c         |  8 +++-
 lib/librte_ethdev/rte_ethdev.c           | 61 +++++++++++++++++++++++++
 lib/librte_ethdev/rte_ethdev_driver.h    | 32 +++++++++++++
 lib/librte_ethdev/rte_ethdev_version.map |  2 +
 7 files changed, 121 insertions(+), 80 deletions(-)