[dpdk-dev] [PATCH 0/8] service: rework for usability

Harry van Haaren harry.van.haaren at intel.com
Tue Aug 15 14:32:32 CEST 2017


This patchset reworks the service apis to be more user
friendly. In particular, the various rte_service_* functions
now take an integer id parameter instead of a service pointer.
This both reduces the API surface (no service_get_from_id()),
and allows easier debugging (gdb function calls with integer args),
and various other benefits (better encapsulation, less pointers :)

Finally, some APIs are changed or renamed for consistency and
clarity of what they do. See commit messages for details.
Note that the service library is merged as EXPERIMENTAL in
the 17.08 release, allowing API improvements for 17.11 release.

I hope to merge this patchset early in the 17.11 timeframe,
so please review ASAP to allow time for other DPDK components
to utilize services in this release :)

Feedback and input welcome, -Harry

---

There is one checkpatch warning: "macro with flow control", however
this same type of macro is used extensively in Ethdev and others,
I presume it is a false-positive.

Harry van Haaren (8):
  service: rework probe and get name to use ids
  service: rework lcore to service map functions
  service: rework register to return service id
  service: rework service start stop to runstate
  service: rework service stats functions
  service: rework unregister api to use integers
  service: rework get by name function to use id
  service: clarify documentation for register

 drivers/event/sw/sw_evdev.c                        |   7 +-
 drivers/event/sw/sw_evdev.h                        |   1 +
 lib/librte_eal/bsdapp/eal/rte_eal_version.map      |  11 +-
 lib/librte_eal/common/include/rte_service.h        | 144 +++++++-----------
 .../common/include/rte_service_component.h         |  13 +-
 lib/librte_eal/common/rte_service.c                | 167 +++++++++------------
 lib/librte_eal/linuxapp/eal/rte_eal_version.map    |  11 +-
 test/test/test_service_cores.c                     | 123 +++++++--------
 8 files changed, 215 insertions(+), 262 deletions(-)

-- 
2.7.4



More information about the dev mailing list