[dpdk-dev] [PATCH v4 00/17] next-eventdev: event/sw software eventdev

Harry van Haaren harry.van.haaren at intel.com
Fri Mar 10 20:43:15 CET 2017


The following patchset adds software eventdev implementation
to the next-eventdev tree.

Note that certain tests in this patchset require the queue overriding
patch to pass, but it is not a build-time dependency.

The main change is the reworked xstats_reset() API, which now includes
a "mode" to select the Device, Port or Queue to reset.

This implementation is based on the previous software eventdev
v3 patchset, now with comments addressed:

1) use NULL in test link() functions (Jerin)
2) add CONFIG_RTE_LIBRTE_PMD_SW_EVENTDEV_DEBUG=n to config/common_base (Jerin)
3) xstats_names_get() return values improved
4) Fix event/sw bug in re-configuration of ports
5) Rework QUEUE_CFG_DEFAULT overriding of queue type at eventdev layer
6) Improve port unlinking to use optimized pull_port() if possible
7) Fix leak of credits on re-configuration of the device after usage
8) Improved error handling of unsupported queue types
9) Allow more flexible re-configuration of ports (lb and single-link changes)
10) Handle reconfiguring of ordered queues multiple times without errors


Git log is clean, while checkpatch issues:
2 Errors on Complex Macro (which I beleive cannot be fixed)
4 Warnings in the scheduler logic, which reduce readability when fixed.
1 Else after return warning, which cannot be easily removed

This patchset contains the work of multiple developers,
please see signoffs on each patch.

Signed-off-by: Harry van Haaren <harry.van.haaren at intel.com>


Bruce Richardson (14):
  eventdev: add APIs for extended stats
  event/sw: add new software-only eventdev driver
  event/sw: add device capabilities function
  event/sw: add configure function
  event/sw: add fns to return default port/queue config
  event/sw: add support for event queues
  event/sw: add support for event ports
  event/sw: add support for linking queues to ports
  event/sw: add worker core functions
  event/sw: add scheduling logic
  event/sw: add start stop and close functions
  event/sw: add dump function for easier debugging
  event/sw: add xstats support
  app/test: add unit tests for SW eventdev driver

Harry van Haaren (3):
  eventdev: increase size of enq deq conf variables
  app/test: eventdev link all queues before start
  test/eventdev: rework timeout ticks test

 app/test/Makefile                             |    5 +-
 app/test/autotest_data.py                     |   26 +
 app/test/test_eventdev.c                      |   12 +-
 app/test/test_eventdev_sw.c                   | 3179 +++++++++++++++++++++++++
 config/common_base                            |    6 +
 drivers/event/Makefile                        |    1 +
 drivers/event/sw/Makefile                     |   69 +
 drivers/event/sw/event_ring.h                 |  185 ++
 drivers/event/sw/iq_ring.h                    |  176 ++
 drivers/event/sw/rte_pmd_evdev_sw_version.map |    3 +
 drivers/event/sw/sw_evdev.c                   |  818 +++++++
 drivers/event/sw/sw_evdev.h                   |  318 +++
 drivers/event/sw/sw_evdev_scheduler.c         |  602 +++++
 drivers/event/sw/sw_evdev_worker.c            |  188 ++
 drivers/event/sw/sw_evdev_xstats.c            |  674 ++++++
 lib/librte_eventdev/rte_eventdev.c            |   83 +
 lib/librte_eventdev/rte_eventdev.h            |  148 +-
 lib/librte_eventdev/rte_eventdev_pmd.h        |   74 +
 lib/librte_eventdev/rte_eventdev_version.map  |    4 +
 mk/rte.app.mk                                 |    1 +
 20 files changed, 6567 insertions(+), 5 deletions(-)
 create mode 100644 app/test/test_eventdev_sw.c
 create mode 100644 drivers/event/sw/Makefile
 create mode 100644 drivers/event/sw/event_ring.h
 create mode 100644 drivers/event/sw/iq_ring.h
 create mode 100644 drivers/event/sw/rte_pmd_evdev_sw_version.map
 create mode 100644 drivers/event/sw/sw_evdev.c
 create mode 100644 drivers/event/sw/sw_evdev.h
 create mode 100644 drivers/event/sw/sw_evdev_scheduler.c
 create mode 100644 drivers/event/sw/sw_evdev_worker.c
 create mode 100644 drivers/event/sw/sw_evdev_xstats.c

-- 
2.7.4



More information about the dev mailing list