From patchwork Mon Jul 20 11:19:04 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Power, Ciara" X-Patchwork-Id: 74489 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 31746A0540; Mon, 20 Jul 2020 13:24:19 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 942032B86; Mon, 20 Jul 2020 13:24:18 +0200 (CEST) Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id 56A4525B3 for ; Mon, 20 Jul 2020 13:24:17 +0200 (CEST) IronPort-SDR: gFfTf5HV0qed2p7yBnV2lLQFtrzB2axXF01020QO4PkZx5o0hcCadAlSMcL2W41hVoZ/yMgjTK 4whjZhbYgh1Q== X-IronPort-AV: E=McAfee;i="6000,8403,9687"; a="234743040" X-IronPort-AV: E=Sophos;i="5.75,374,1589266800"; d="scan'208";a="234743040" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Jul 2020 04:24:16 -0700 IronPort-SDR: 2XlJeM8YXPz1bWMoHVczI9h+ROWDT9Rsr3gnq/7jRQxaoctoufZWktQTqf2c6nM0hgL7T1LEWn VDP7rZ5CmCuQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,374,1589266800"; d="scan'208";a="487211070" Received: from silpixa00399953.ir.intel.com (HELO silpixa00399953.ger.corp.intel.com) ([10.237.222.53]) by fmsmga006.fm.intel.com with ESMTP; 20 Jul 2020 04:24:14 -0700 From: Ciara Power To: kevin.laatz@intel.com, thomas@monjalon.net, ferruh.yigit@intel.com, arybchenko@solarflare.com Cc: dev@dpdk.org, keith.wiles@intel.com, bruce.richardson@intel.com, Ciara Power Date: Mon, 20 Jul 2020 12:19:04 +0100 Message-Id: <20200720111907.30717-1-ciara.power@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200612105344.15383-1-ciara.power@intel.com> References: <20200612105344.15383-1-ciara.power@intel.com> Subject: [dpdk-dev] [PATCH v6 0/3] add basic ethdev stats with data object recursion X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" v6: - Fixed FreeBSD build failure for unit tests. - Added comments and expanded commit log. - Add loop to call test cases stored in a list. v5: Added unit tests for telemetry data to JSON conversion. v4: Added missing param description to Doxygen comment. v3: - Modified commit logs. - Changed function names to reference container. - Modified Doxygen comments to reference container. v2: - Added support for arrays to have container values. - Added support for int and string arrays within dict/array. - Added APIs for internal container memory management. This patchset adds support for basic ethdev statistics in Telemetry. To do this, recursive data object support is needed to report the queue statistics in a list. With this patch, an array or dictionary supports uint64_t, int or string array type values, which is used for the ethdev queue stats. Ciara Power (2): telemetry: support array values in data objects ethdev: add common stats for telemetry Louise Kilheeney (1): test/test_telemetry_data: add unit tests for data to JSON app/test/Makefile | 1 + app/test/meson.build | 5 +- app/test/test_telemetry_data.c | 375 ++++++++++++++++++ lib/librte_ethdev/rte_ethdev.c | 53 +++ lib/librte_telemetry/rte_telemetry.h | 70 ++++ .../rte_telemetry_version.map | 4 + lib/librte_telemetry/telemetry.c | 56 +++ lib/librte_telemetry/telemetry_data.c | 51 +++ lib/librte_telemetry/telemetry_data.h | 7 + lib/librte_telemetry/telemetry_json.h | 33 ++ 10 files changed, 653 insertions(+), 2 deletions(-) create mode 100644 app/test/test_telemetry_data.c