From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <harry.van.haaren@intel.com>
Received: from mga04.intel.com (mga04.intel.com [192.55.52.120])
 by dpdk.org (Postfix) with ESMTP id 9E6B57CD6
 for <dev@dpdk.org>; Tue, 15 Aug 2017 14:32:52 +0200 (CEST)
Received: from fmsmga005.fm.intel.com ([10.253.24.32])
 by fmsmga104.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;
 15 Aug 2017 05:32:50 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.41,377,1498546800"; d="scan'208";a="139790173"
Received: from silpixa00398672.ir.intel.com ([10.237.223.128])
 by fmsmga005.fm.intel.com with ESMTP; 15 Aug 2017 05:32:50 -0700
From: Harry van Haaren <harry.van.haaren@intel.com>
To: dev@dpdk.org
Cc: Harry van Haaren <harry.van.haaren@intel.com>
Date: Tue, 15 Aug 2017 13:32:32 +0100
Message-Id: <1502800360-15782-1-git-send-email-harry.van.haaren@intel.com>
X-Mailer: git-send-email 2.7.4
Subject: [dpdk-dev] [PATCH 0/8] service: rework for usability
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Tue, 15 Aug 2017 12:32:53 -0000

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