From patchwork Fri Oct 2 12:47:58 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Tahhan, Maryam" X-Patchwork-Id: 7370 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id E9A9A8E67; Fri, 2 Oct 2015 14:48:05 +0200 (CEST) Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id 6C4268E62 for ; Fri, 2 Oct 2015 14:48:03 +0200 (CEST) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga101.jf.intel.com with ESMTP; 02 Oct 2015 05:48:01 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.17,623,1437462000"; d="scan'208";a="817921916" Received: from sie-lab-212-170.ir.intel.com (HELO silpixa00378251.ir.intel.com) ([10.237.212.170]) by orsmga002.jf.intel.com with ESMTP; 02 Oct 2015 05:48:00 -0700 From: Maryam Tahhan To: dev@dpdk.org Date: Fri, 2 Oct 2015 13:47:58 +0100 Message-Id: <1443790078-15834-1-git-send-email-maryam.tahhan@intel.com> X-Mailer: git-send-email 2.4.3 Subject: [dpdk-dev] [PATCH] ethdev: distinguish between drop and error stats 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Make a distniction between dropped packets and error statistics to allow a higher level fault management entity to interact with DPDK and take appropriate measures when errors are detected. It will also provide valuable information for any applications that collects/extracts DPDK stats, such applications include Open vSwitch. After this patch the distinction is: ierrors = Total number of packets dropped by hardware (malformed packets, ...) Where the # of drops can ONLY be <= the packets received (without overlap between registers). Rx_pkt_errors = Total number of erroneous received packets. Where the # of errors can be >= the packets received (without overlap between registers), this is because there may be multiple errors associated with a packet. Signed-off-by: Maryam Tahhan --- lib/librte_ether/rte_ethdev.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h index 8a8c82b..53dd55d 100644 --- a/lib/librte_ether/rte_ethdev.h +++ b/lib/librte_ether/rte_ethdev.h @@ -200,8 +200,9 @@ struct rte_eth_stats { /**< Deprecated; Total of RX packets with CRC error. */ uint64_t ibadlen; /**< Deprecated; Total of RX packets with bad length. */ - uint64_t ierrors; /**< Total number of erroneous received packets. */ + uint64_t ierrors; /**< Total number of dropped received packets. */ uint64_t oerrors; /**< Total number of failed transmitted packets. */ + uint64_t ipkterrors; /**< Total number of erroneous received packets. */ uint64_t imcasts; /**< Deprecated; Total number of multicast received packets. */ uint64_t rx_nombuf; /**< Total number of RX mbuf allocation failures. */