From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 7C5DB1B1ED for ; Thu, 4 Oct 2018 15:00:26 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 04 Oct 2018 06:00:25 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.54,338,1534834800"; d="scan'208";a="76160489" Received: from irsmsx153.ger.corp.intel.com ([163.33.192.75]) by fmsmga008.fm.intel.com with ESMTP; 04 Oct 2018 06:00:15 -0700 Received: from irsmsx102.ger.corp.intel.com ([169.254.2.67]) by IRSMSX153.ger.corp.intel.com ([169.254.9.121]) with mapi id 14.03.0319.002; Thu, 4 Oct 2018 14:00:14 +0100 From: "Van Haaren, Harry" To: "Laatz, Kevin" , "dev@dpdk.org" CC: "stephen@networkplumber.org" , "gaetan.rivet@6wind.com" , "shreyansh.jain@nxp.com" , "thomas@monjalon.net" , "Richardson, Bruce" Thread-Topic: [PATCH v2 00/10] introduce telemetry library Thread-Index: AQHUWz+eJX4GKPxbOUKfYyMWY0UfzqUPCpJA Date: Thu, 4 Oct 2018 13:00:14 +0000 Message-ID: References: <1535026093-101872-1-git-send-email-ciara.power@intel.com> <20181003173612.67101-1-kevin.laatz@intel.com> In-Reply-To: <20181003173612.67101-1-kevin.laatz@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiZTdiNjUwNTUtNjEzYy00Y2JlLWIzNDQtMDA2NTY0MzZkZjgyIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiT3MxdEVCRmNcL3NjMG16eXlWdW5ZVHlpQlFEaFVBSDRRbE83QUYyeWgwWVwveWptU1ZGd2JnREc4eHA5bkJBWHRQIn0= x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.400.15 dlp-reaction: no-action x-originating-ip: [163.33.239.180] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v2 00/10] introduce telemetry 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: Thu, 04 Oct 2018 13:00:27 -0000 > -----Original Message----- > From: Laatz, Kevin > Sent: Wednesday, October 3, 2018 6:36 PM > To: dev@dpdk.org > Cc: Van Haaren, Harry ; > stephen@networkplumber.org; gaetan.rivet@6wind.com; shreyansh.jain@nxp.co= m; > thomas@monjalon.net; Laatz, Kevin > Subject: [PATCH v2 00/10] introduce telemetry library >=20 > This patchset introduces a Telemetry library for DPDK Service Assurance. > This library provides an easy way to query DPDK Ethdev metrics. > Note: We are aware that the --telemetry flag is not working for meson > builds, we are working on it for a future patch. Despite opterr being se= t > to 0, --telemetry said to be 'unrecognized' as a startup print. This is a > cosmetic issue and will also be addressed. >=20 > --- > v2: > - Reworked telemetry as part of EAL instead of using vdev (Gaetan) > - Refactored rte_telemetry_command (Gaetan) > - Added MAINTAINERS file entry (Stephen) > - Updated docs to reflect vdev to eal rework > - Removed collectd patch from patchset (Thomas) > - General code clean up from v1 feedback Hi Gaetan, Thomas, Stephen and Shreyansh! goto TL_DR; // if time is short :) In this v2 patchset, we've reworked the Telemetry to no longer use the vdev infrastructure, instead having EAL enable it directly. This was requested a= s feedback to the v1 patchset. I'll detail the approach below, and highlight some issues we identified while implementing it. Currently, EAL does not depend on any "DPDK" libraries (ignore kvargs etc f= or a minute). Telemetry is a DPDK library, so it depends on EAL. In order to have EAL ini= tialize Telemetry, it must depend on it - this causes a circular dependency. This patchset resolves that circular dependency by using a "weak" symbol fo= r telemetry init, and then the "strong" version of telemetry init will replac= e it when the library is compiled in. Although this *technically* works, it r= equires that applications *LINK* against Telemetry library explicitly - as EAL won'= t pull in the Telemetry .so automatically... This means application-level build-sy= stem changes to enable --telemetry on the DPDK EAL command line. Given the complexity in enabling EAL to handle the Telemetry init() and its dependencies, I'd like to ask you folks for input on how to better solve th= is? TL_DR; I'll re-suggest the --vdev as an option. It might not be perfect, but in my opinion it's a better solution than the v2 solution here... Input and suggestions welcome, as you know integration is coming close so sooner is better! Regards, -Harry