From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-oi0-f46.google.com (mail-oi0-f46.google.com [209.85.218.46]) by dpdk.org (Postfix) with ESMTP id C0083C8E2 for ; Fri, 26 Jun 2015 16:03:50 +0200 (CEST) Received: by oigx81 with SMTP id x81so75855297oig.1 for ; Fri, 26 Jun 2015 07:03:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=UWvY4F9q5Jdf8TQTVm3Ip0rjpInxIOEixaM/UUCLDEU=; b=IThbTPfRVrh1FDi0DlUDpTiBHX5mbt13+Xdvr76vZujKWPWNtD8utsWOa5IBHXXxPn ufE69C7/B0S8yToDm6L21ExNdio521x2RklWpXPDyPKA3hwVI1XHz5h5PzH/di3WNnP/ Gb9k/jXiGxRzq1nT6JEUXqlhoBAOv0mI1UZUQnN6P2ESw7k410knLAtUwaW5znnNtofG 6A+5Upb6cUs0HYHQzsefLwaPRJOXsaoHYo099uQsL+WN3Ls84LzYpv5tsAQ1t29s/vfV dRKT0wtq74W/KUPcTVopGth4KChAEpNtK7Fl/YE9iu/RRMDBpDyHvvsMnUE9loaHaMob 0wig== MIME-Version: 1.0 X-Received: by 10.202.90.133 with SMTP id o127mr1534654oib.79.1435327430114; Fri, 26 Jun 2015 07:03:50 -0700 (PDT) Received: by 10.76.95.200 with HTTP; Fri, 26 Jun 2015 07:03:49 -0700 (PDT) In-Reply-To: <1435323558-169985-5-git-send-email-maryam.tahhan@intel.com> References: <1435323558-169985-1-git-send-email-maryam.tahhan@intel.com> <1435323558-169985-5-git-send-email-maryam.tahhan@intel.com> Date: Fri, 26 Jun 2015 10:03:49 -0400 Message-ID: From: Kyle Larose To: Maryam Tahhan Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: dev@dpdk.org Subject: Re: [dpdk-dev] [PATCH v3 4/7] ethdev: remove HW specific stats in stats structs X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 Jun 2015 14:03:51 -0000 On Fri, Jun 26, 2015 at 8:59 AM, Maryam Tahhan wrote: > Remove non generic stats in rte_stats_strings and mark the relevant > fields in struct rte_eth_stats as deprecated. > > Signed-off-by: Maryam Tahhan > --- > doc/guides/rel_notes/abi.rst | 11 +++++++++++ > lib/librte_ether/rte_ethdev.c | 9 --------- > lib/librte_ether/rte_ethdev.h | 30 ++++++++++++++++++++---------- > 3 files changed, 31 insertions(+), 19 deletions(-) > > diff --git a/doc/guides/rel_notes/abi.rst b/doc/guides/rel_notes/abi.rst > index f00a6ee..957b13f 100644 > --- a/doc/guides/rel_notes/abi.rst > +++ b/doc/guides/rel_notes/abi.rst > @@ -38,3 +38,14 @@ Examples of Deprecation Notices > > Deprecation Notices > ------------------- > +* The following fields have been deprecated in rte_eth_stats: > + * uint64_t imissed > + * uint64_t ibadcrc > + * uint64_t ibadlen > + * uint64_t imcasts > + * uint64_t fdirmatch > + * uint64_t fdirmiss > + * uint64_t tx_pause_xon > + * uint64_t rx_pause_xon > + * uint64_t tx_pause_xoff > + * uint64_t rx_pause_xoff > > Are CRC errors (ibadcrc) truly hardware specific? Which NIC (aside from purely virtual ones) does not have a MAC which does frame checksumming? Likewise, which NIC doesn't drop because the PCI bus/cpu/etc is too busy to pull packets off of it (imissed)? Debugging interactions with NICs is hard enough with only CRC errors and missed packets to go on. Without those it is close to impossible. CRC errors are almost guaranteed any time a bare-metal application is deployed: dirty fiber, bad SFPs, etc. How will users of the application be able to determine why their packets are dropping if they can only see "in errors"? I understand that we want to avoid placing too much useless information into these statistics structures. However, without a hardware-independent way of accessing fairly standard networking-equipment diagnostics, I feel like any real-world application using DPDK will be terribly cumbersome to build: every single one will need to develop an abstraction layer which detects the attached NICs, and loads an appropriate driver to integrate with the xstats api. Is there any plan for such an API? If not, is it really a good idea to deprecate these stats? Thanks, Kyle