From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 5EA92FAD7 for ; Wed, 29 Mar 2017 20:28:53 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=intel.com; i=@intel.com; q=dns/txt; s=intel; t=1490812133; x=1522348133; h=from:to:cc:subject:date:message-id:in-reply-to: references; bh=dT0zKgvwQZZYIDdm6R9SBWatIZveiYcFU31va1K42c8=; b=TugmJtg15JxAcPBR7lpUancQAlh43C5QY7eEIlxHjPXt8K/G+EGia4hj tso3XiDguNYe5AvftcTcXAcjNL4UHg==; Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 29 Mar 2017 11:28:51 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.36,242,1486454400"; d="scan'208";a="949500902" Received: from dshirizl-mobl.ger.corp.intel.com (HELO FC23.ger.corp.intel.com) ([10.252.2.196]) by orsmga003.jf.intel.com with ESMTP; 29 Mar 2017 11:28:50 -0700 From: Remy Horton To: dev@dpdk.org Cc: Thomas Monjalon Date: Wed, 29 Mar 2017 19:28:43 +0100 Message-Id: <1490812128-4172-2-git-send-email-remy.horton@intel.com> X-Mailer: git-send-email 2.5.5 In-Reply-To: <1490812128-4172-1-git-send-email-remy.horton@intel.com> References: <1490812128-4172-1-git-send-email-remy.horton@intel.com> Subject: [dpdk-dev] [PATCH v13 1/6] lib: add information metrics library 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: , X-List-Received-Date: Wed, 29 Mar 2017 18:28:54 -0000 This patch adds a new information metrics library. This Metrics library implements a mechanism by which producers can publish numeric information for later querying by consumers. Metrics themselves are statistics that are not generated by PMDs, and hence are not reported via ethdev extended statistics. Metric information is populated using a push model, where producers update the values contained within the metric library by calling an update function on the relevant metrics. Consumers receive metric information by querying the central metric data, which is held in shared memory. Signed-off-by: Remy Horton --- MAINTAINERS | 4 + config/common_base | 5 + doc/api/doxy-api-index.md | 3 +- doc/api/doxy-api.conf | 3 +- doc/guides/prog_guide/index.rst | 3 +- doc/guides/prog_guide/metrics_lib.rst | 180 +++++++++++++++++ doc/guides/rel_notes/release_17_05.rst | 9 + lib/Makefile | 2 + lib/librte_metrics/Makefile | 51 +++++ lib/librte_metrics/rte_metrics.c | 302 +++++++++++++++++++++++++++++ lib/librte_metrics/rte_metrics.h | 240 +++++++++++++++++++++++ lib/librte_metrics/rte_metrics_version.map | 13 ++ mk/rte.app.mk | 1 + 13 files changed, 813 insertions(+), 3 deletions(-) create mode 100644 doc/guides/prog_guide/metrics_lib.rst create mode 100644 lib/librte_metrics/Makefile create mode 100644 lib/librte_metrics/rte_metrics.c create mode 100644 lib/librte_metrics/rte_metrics.h create mode 100644 lib/librte_metrics/rte_metrics_version.map diff --git a/MAINTAINERS b/MAINTAINERS index 0b1524d..c8b4b41 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -625,6 +625,10 @@ F: lib/librte_jobstats/ F: examples/l2fwd-jobstats/ F: doc/guides/sample_app_ug/l2_forward_job_stats.rst +Metrics +M: Remy Horton +F: lib/librte_metrics/ + Test Applications ----------------- diff --git a/config/common_base b/config/common_base index 37aa1e1..1e84c3b 100644 --- a/config/common_base +++ b/config/common_base @@ -506,6 +506,11 @@ CONFIG_RTE_LIBRTE_EFD=y CONFIG_RTE_LIBRTE_JOBSTATS=y # +# Compile the device metrics library +# +CONFIG_RTE_LIBRTE_METRICS=y + +# # Compile librte_lpm # CONFIG_RTE_LIBRTE_LPM=y diff --git a/doc/api/doxy-api-index.md b/doc/api/doxy-api-index.md index eb39f69..1cbe128 100644 --- a/doc/api/doxy-api-index.md +++ b/doc/api/doxy-api-index.md @@ -4,7 +4,7 @@ API {#index}