From patchwork Tue Apr 17 06:30:53 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Manlunas, Felix" X-Patchwork-Id: 899080 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=cavium.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=CAVIUMNETWORKS.onmicrosoft.com header.i=@CAVIUMNETWORKS.onmicrosoft.com header.b="C5B0FTYG"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40QFkc5lhHz9s1B for ; Tue, 17 Apr 2018 16:31:04 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752580AbeDQGbB (ORCPT ); Tue, 17 Apr 2018 02:31:01 -0400 Received: from mail-bn3nam01on0063.outbound.protection.outlook.com ([104.47.33.63]:42286 "EHLO NAM01-BN3-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751857AbeDQGa7 (ORCPT ); Tue, 17 Apr 2018 02:30:59 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=oPuvr3lBpB331VJFfIQXq+QlhuifJln7yGv9LQ28vc4=; b=C5B0FTYGgMt3QQJHuqmiyOVcxx/qs69IxYUGHRzBMi3dR163NHLZLJlsbsoJVgySmvuvzzIAeGwdIoToRQz4T4DdoX8wtAjd+omyG0Pq75Gmrrs9edC4Nru8/cfbMv1/gTiE/rMTyio13tIfOQPcjHOb7ptX1urIYFpLT/oBpV0= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Felix.Manlunas@cavium.com; Received: from localhost (50.233.148.156) by BYAPR07MB4216.namprd07.prod.outlook.com (2603:10b6:a02:be::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.675.14; Tue, 17 Apr 2018 06:30:56 +0000 Date: Mon, 16 Apr 2018 23:30:53 -0700 From: Felix Manlunas To: davem@davemloft.net Cc: netdev@vger.kernel.org, raghu.vatsavayi@cavium.com, derek.chickles@cavium.com, satananda.burla@cavium.com, felix.manlunas@cavium.com, intiyaz.basha@cavium.com Subject: [PATCH net-next] liquidio: Enhanced ethtool stats Message-ID: <20180417063052.GA3331@felix-thinkpad.cavium.com> MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.6.1 (2016-04-27) X-Originating-IP: [50.233.148.156] X-ClientProxiedBy: CO1PR15CA0076.namprd15.prod.outlook.com (2603:10b6:101:20::20) To BYAPR07MB4216.namprd07.prod.outlook.com (2603:10b6:a02:be::18) X-MS-PublicTrafficType: Email X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(5600026)(4534165)(4627221)(201703031133081)(201702281549075)(2017052603328)(7153060)(7193020); SRVR:BYAPR07MB4216; X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4216; 3:ELO92Z7io6RPz4CJOxgOy1dFRFnt8F/adgLKmr5ONAFuulUYRzcSrLgxiG7zagy9pG7+rXVDtvMAmM2Z2mxB0hXS66ozETZj+6BRk4kppCmPPIaW4UM7b3uXVPCgWeJc6UOSt6Y0Pn24KlqR16yAwQRxO4eqKXmlMReG1iQeUFjMyjbWCwdHfy+5DEkBxjGbRosrHzA+nCenjP30QNaUdBibUdKx4tSXhrdQMZwLh/2usaU/ivUo2lIOmCu8xHVJ; 25:Tcsy0ORDK6lXBU/4JKlmJRELnRpv6Z2C6LIT67j7MREAqcZKcBrDMJizEha3cDK6rSDCVDKkDD4dp8xmzEkQOCHq/7enVYRgQkntzt2pIHyUTxTW/0NgPVt68y2TNimnURW8RjQBJVWA3QjJpzznNMJQCbrCPPH4pRYjqsxXPIKv+sLg8ebqzhmt/HmcWf7HYDWeW8FawPsvQM2jUVYX3TDh3olB1K4eGSF19KN3Cw+gpEq9537fQ7MX52LfKb9HaODMIh4Udk0Ml1OHjf6bZmA5I175eL8/pO+8Q6go0O9ionBOpOG/X5D2ptFPcOM6tC11PSe8tk/Bb3Ej+6DoYg==; 31:Yk+wmg/42+yq6Morva485jzGOrPExIdbRjeTNm996oL6B0FEbBv8DlROKBtqqY4MtMlHVCRsBNoTwGXUfhEJ0qub4ABELw7R5iBEYc8t7BMD6q1a2+Cp0P+a5mTDkJTdk9crt4i/VDTQO51vLlX9PvRI4y7adgkHq5eYheGQ7cR40g0cfmMwl2hlTtUr7vI/itCeVFQSgNyhHzAt8KOo2a1TIA1QCCYt90XzfGyVx1M= X-MS-TrafficTypeDiagnostic: BYAPR07MB4216: X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4216; 20:9OS5A2XGpYdq0Y5kYTJpdZCteITvWtWcX0OLk9U3CVd+0BUS2J83Ycn9m1bMrXpuwGkyl7kop0Nia3dOIHN9x/CanjmxcdgKFG37L1vLEKeBmjqmyERi+dLM0/mZGEcGSSt8LiHgOD+RXLgXCXriUW5pLFsBHspheVvhblRtKhkzO5SliuXqTyIJoSVA2uskpjNBIOJ9XtylE2AcrFYPCEN9U7XMEs1pszZz8Ndi08fECizZx5lR64WUCKIq/r66zZTPBjNtkbMubEkC8Qo0TjggezrnJqr44TAR3n5OX4GbfycdHmhi0pRSb2Zc6j5wJxlbHMWCBXyW2HZnNP6oPfKFaNVwair87qaKUzw0gEpx8ASsfDWm37Sd9u2l4YxjtWdLlNF9i2AAcMlfbIfE9xxIuKhhEN+5LtF3y7OFV+J1EYeiDjweBODYifGVPIxhhfD/lzH/NlZrkDVpf7l/ZJq8s1LEETBZL2OugW/cDTWQFiqEyduLtZ/gC6knfFaq; 4:cN/kXhvMSabqwd2AJag9DbslHnvUFiU+r2zOws+omTT0vD+fU9SJvx3DIShUNgBeCIUezqjjWQz56AE6e0q5btt+uV/w6h28vy/uD8OlFLtR71MQDwHT5wxGDf86ch0m15I7VNPWeAeMfzT0YLA1Uq2bZ0NH8WiC/4jCGhsQJupcq4+gK2ppxDvGXGxcXIWF3sWNemukJohgXxl/cyfzCEWyTXeajGKXpgl1cHNhF29VrOR0IzgeHmgl0bOYoRphkjrCmipvNr5aPd4HNdi7xA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(3002001)(3231232)(944501327)(52105095)(6041310)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(20161123564045)(20161123558120)(20161123562045)(6072148)(201708071742011); SRVR:BYAPR07MB4216; BCL:0; PCL:0; RULEID:; SRVR:BYAPR07MB4216; X-Forefront-PRVS: 0645BEB7AA X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(6069001)(396003)(346002)(39380400002)(376002)(39850400004)(366004)(199004)(189003)(81156014)(81166006)(8676002)(6486002)(5660300001)(386003)(486006)(97736004)(8936002)(53936002)(72206003)(26005)(23726003)(3846002)(6116002)(44832011)(316002)(107886003)(16586007)(1076002)(52116002)(186003)(956004)(6666003)(6916009)(59450400001)(4326008)(86362001)(25786009)(16526019)(33656002)(58126008)(105586002)(2906002)(476003)(6496006)(478600001)(68736007)(47776003)(66066001)(7736002)(2361001)(305945005)(76506005)(2351001)(50466002)(106356001)(18370500001); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR07MB4216; H:localhost; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4216; 23:2sFZsE9HDh68nPYLUPOJvCLGqYj8+owuLEJ8ucizvf8b6TV5qvKli9Imc6d5laRHhTLEj1C4gyvaeGCflmUb13Z9CwGfW4+17cxRAEl1BD7dr+SHwFTLJrdBUG68hQAi7DThvkiTz6ytw40SUGwpc4R9KXcEOwxVHrjvhQRzaS4nFQo34WvF2I3JnTUkVJcr5tNxRm6NxavEmuBALAheuu3Q4IeLCiJtKfbxVgCZji2Zs0HthymMom3sYDSvzzi2E+LEBb6+pBjJ7IsFa1eV28Pr97HAJ87JcO7cGWo4UWir5tBT+ki+3rc6EThm5ch06sOTHduny7pXeECso4je7IuHH+aJeWW97ndFVjDuVkVVMyvJjhP/igdk955Fx0FjUudP7GmGujRQaxcxDeGCL/zETAYapclqFjWleagt3313aCnZS/F7hfPJYu8sBTFCiIJ89LQ3BbtUYTXO8q3oOVeAcOdxVtIYYG9Behg7r5WTQoei73KN+z7FaT0w03P7GlaGlxY1nryzGBNeXvnmEGDF13xqeiG+lisQ5KgqiPXXXFdQnbqrFr7EEADqmytQHEEFbIy18Y2AELvyohn4o9fYJDfnSu70orwX2uKv16F9pnVTZhMJYruZFgEPZHt/vxIccfmyTnF1PC1XVWCh+IwhIN5gLj23sAwuTlG0gAt1+hrKLvKYzjhBnJJvxyQKC5ydJpQCUQMFSDVPJBp/pBaUp3mOs1Km25fwsTHpV1jGhfmG6Cqix4p5XAXJwGatw96clddDeFzgdOE5h0srRGaQhiuO9FRZpey+Iw8j0ePY5DJdZA3PH/T+48Gfd6EcrlFDaVlZAIc3mdi6xUEwY3AXwZmRf58YJCf2hUaCt7fiv8K2zFOo1sedRaSlWEONXMzXXJefs7UVZIV+G2fFEkFkVTgesyWGeScvDcnJL/0o/tPmEfUCsAP2WL+P/arQwTHhm2vtqF9iIlQghB8v4SSK0dJgOez9P0zb8Olwf+1TM/Mdk2osqPXlLKJBJt+my13KNJiUyzX0gaXF8g2h2ngsSyqkaZz8HaotIsFhIburNQ1HzAxXbsMXryPCvlfqUrrNKEBqq4mirRS4zSgZdO7ejjSKtR8NJz3x1iRMBqdt3bcFvqmc9nJ2vdNjfWo74QcaVCvM/hvuXcZMsTf8qta2EnTKzOwYbn0gcWLXa+HVWbN0L5RmP0ZHyZ3ihZQrxzhl4TOrAM+wtxJBltFSwmhqGBUtl8hQ4ioKErfaaN1p5bLnhJ7Gs/8xmdfcAVCy X-Microsoft-Antispam-Message-Info: ZuTFUxseHMAN2Yxv5Op138Df0FSRrs4Vvb7n7XnHKAXedo8B3aa9Kfvc39+2tzUt8xIWoQY9oOSJ6G3TrsZNEIbLGI8nT5O7bpt7qwgectK0zRtGDa1MNXwXX8avfAaaLi766X6ILz5sf6zhc96dtbiuV3FdwZg0aSJ/L3pJwrNg066i2OyKXN4yrJW/8FVr X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4216; 6:Ke8XUDdspYTg+URuEUXAsUoIvWQ9eFe/mwW1MODzz31rabkXlw3v+EUSM+cTMaDkacoidg6TynaA3DuyB/ydBos44L/nWjl8Hako3icyWb6/8gOe9OGd5uHuHuu31o0fIZFAjxvhvXsToY6e7NNLcKCe1/yIShtTwVVpBYITL77D7XXdVyslQlTXaWiLFMfy3VFYTbWsWEMRTP2rv9BJOaiB449ikS+oVhfpV9xeFdUJUar4eD0BzbtPI/FNwV4xg2ExL13w2KOmOQTtCm9OIe2hzaf56+pFXdxNpRrolZSVmq2HMDpsbBIuUTAYocioy2zMG1cx4mWk6FEX++S0Av2ZoR9ppdl60Pr/RTukFP2Zrx4aQL7oSh3xad1xs5cU5Hz9+fU0ZUE0vHWsoHA/1SmFQh9BSB6TApKXgaWahf2Yhv+GO41lsoPM+swWjg7z2Xo8kN3vHcuW5UdPKbnJ0A==; 5:4uhlaj5sEyam4BTLShp8F9UxI2lQmkU89FE36fpdEnB/gxY6ZmYdvt7cL9g6SI1E7MT9EX7RDFcYNvyL1EFEcHuxKY7bP87vzNysuskDnn5ni/ZrdlSLbd844lm8aYJ5UUaYRRS3215ye8bB6FCPZ42EtttjvMUvoweknx4ubVI=; 24:31AJfs4YdOanaS6som0yPGzXqCsaI4iI65Z9d7xwXpiWG9fB/DQW/6n9L+T4M8os5Ul6ZDuRnlCB0ghHDZo7KhwaUwQrYPG8+jqbt3b48dA= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4216; 7:C1v7DBG05g5F+kLpaYBJSDvVH1Y7O0C31unTwAgWrr2t3DhXInYWtebawXZvDTWfkgsDzGqsrfa9UbmXSOqYkwsLSOSE5qlTOhOgxlcxXwtgAMKxDQQCgYxNszWozl2XHg9ML6Bw2i4hHBrSjk4BNCamsJOHIu/p3UPvKywMF0zmTfEy2Z5O9HoDLLmuJ1PZVELSlPMDk6S9VNl+i+KFean51DaxvS3lLgRgp4g/xBA4O0IOo4Hbt2izsVKeW66c X-MS-Office365-Filtering-Correlation-Id: 78bc2bbd-0fcd-45b9-ddf0-08d5a42cc722 X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Apr 2018 06:30:56.7854 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 78bc2bbd-0fcd-45b9-ddf0-08d5a42cc722 X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR07MB4216 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Intiyaz Basha 1. Added red_drops stats. Inbound packets dropped by RED, buffer exhaustion 2. Included fcs_err, jabber_err, l2_err and frame_err errors under rx_errors 3. Included fifo_err, dmac_drop, red_drops, fw_err_pko, fw_err_link and fw_err_drop under rx_dropped 4. Included max_collision_fail, max_deferral_fail, total_collisions, fw_err_pko, fw_err_link, fw_err_drop and fw_err_pki under tx_dropped 5. Counting dma mapping errors 6. Added some firmware stats description and removed for some Signed-off-by: Intiyaz Basha Acked-by: Derek Chickles Acked-by: Satanand Burla Signed-off-by: Felix Manlunas --- drivers/net/ethernet/cavium/liquidio/lio_ethtool.c | 54 ++++++++++------ drivers/net/ethernet/cavium/liquidio/lio_main.c | 2 + .../net/ethernet/cavium/liquidio/liquidio_common.h | 75 ++++++++++++++-------- drivers/net/ethernet/cavium/liquidio/octeon_iq.h | 4 +- 4 files changed, 86 insertions(+), 49 deletions(-) diff --git a/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c b/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c index a63ddf0..b40e8f5 100644 --- a/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c +++ b/drivers/net/ethernet/cavium/liquidio/lio_ethtool.c @@ -96,11 +96,9 @@ enum { "tx_packets", "rx_bytes", "tx_bytes", - "rx_errors", /*jabber_err+l2_err+frame_err */ - "tx_errors", /*fw_err_pko+fw_err_link+fw_err_drop */ - "rx_dropped", /*st->fromwire.total_rcvd - st->fromwire.fw_total_rcvd + - *st->fromwire.dmac_drop + st->fromwire.fw_err_drop - */ + "rx_errors", + "tx_errors", + "rx_dropped", "tx_dropped", "tx_total_sent", @@ -119,7 +117,7 @@ enum { "mac_tx_total_bytes", "mac_tx_mcast_pkts", "mac_tx_bcast_pkts", - "mac_tx_ctl_packets", /*oct->link_stats.fromhost.ctl_sent */ + "mac_tx_ctl_packets", "mac_tx_total_collisions", "mac_tx_one_collision", "mac_tx_multi_collison", @@ -170,17 +168,17 @@ enum { "tx_packets", "rx_bytes", "tx_bytes", - "rx_errors", /* jabber_err + l2_err+frame_err */ - "tx_errors", /* fw_err_pko + fw_err_link+fw_err_drop */ - "rx_dropped", /* total_rcvd - fw_total_rcvd + dmac_drop + fw_err_drop */ + "rx_errors", + "tx_errors", + "rx_dropped", "tx_dropped", "link_state_changes", }; /* statistics of host tx queue */ static const char oct_iq_stats_strings[][ETH_GSTRING_LEN] = { - "packets", /*oct->instr_queue[iq_no]->stats.tx_done*/ - "bytes", /*oct->instr_queue[iq_no]->stats.tx_tot_bytes*/ + "packets", + "bytes", "dropped", "iq_busy", "sgentry_sent", @@ -197,13 +195,9 @@ enum { /* statistics of host rx queue */ static const char oct_droq_stats_strings[][ETH_GSTRING_LEN] = { - "packets", /*oct->droq[oq_no]->stats.rx_pkts_received */ - "bytes", /*oct->droq[oq_no]->stats.rx_bytes_received */ - "dropped", /*oct->droq[oq_no]->stats.rx_dropped+ - *oct->droq[oq_no]->stats.dropped_nodispatch+ - *oct->droq[oq_no]->stats.dropped_toomany+ - *oct->droq[oq_no]->stats.dropped_nomem - */ + "packets", + "bytes", + "dropped", "dropped_nomem", "dropped_toomany", "fw_dropped", @@ -1068,16 +1062,33 @@ static void lio_vf_set_msglevel(struct net_device *netdev, u32 msglvl) data[i++] = CVM_CAST64(netstats->rx_bytes); /*sum of oct->instr_queue[iq_no]->stats.tx_tot_bytes */ data[i++] = CVM_CAST64(netstats->tx_bytes); - data[i++] = CVM_CAST64(netstats->rx_errors); + data[i++] = CVM_CAST64(netstats->rx_errors + + oct_dev->link_stats.fromwire.fcs_err + + oct_dev->link_stats.fromwire.jabber_err + + oct_dev->link_stats.fromwire.l2_err + + oct_dev->link_stats.fromwire.frame_err); data[i++] = CVM_CAST64(netstats->tx_errors); /*sum of oct->droq[oq_no]->stats->rx_dropped + *oct->droq[oq_no]->stats->dropped_nodispatch + *oct->droq[oq_no]->stats->dropped_toomany + *oct->droq[oq_no]->stats->dropped_nomem */ - data[i++] = CVM_CAST64(netstats->rx_dropped); + data[i++] = CVM_CAST64(netstats->rx_dropped + + oct_dev->link_stats.fromwire.fifo_err + + oct_dev->link_stats.fromwire.dmac_drop + + oct_dev->link_stats.fromwire.red_drops + + oct_dev->link_stats.fromwire.fw_err_pko + + oct_dev->link_stats.fromwire.fw_err_link + + oct_dev->link_stats.fromwire.fw_err_drop); /*sum of oct->instr_queue[iq_no]->stats.tx_dropped */ - data[i++] = CVM_CAST64(netstats->tx_dropped); + data[i++] = CVM_CAST64(netstats->tx_dropped + + oct_dev->link_stats.fromhost.max_collision_fail + + oct_dev->link_stats.fromhost.max_deferral_fail + + oct_dev->link_stats.fromhost.total_collisions + + oct_dev->link_stats.fromhost.fw_err_pko + + oct_dev->link_stats.fromhost.fw_err_link + + oct_dev->link_stats.fromhost.fw_err_drop + + oct_dev->link_stats.fromhost.fw_err_pki); /* firmware tx stats */ /*per_core_stats[cvmx_get_core_num()].link_stats[mdata->from_ifidx]. @@ -1786,6 +1797,7 @@ static int octnet_set_intrmod_cfg(struct lio *lio, rstats->jabber_err = rsp_rstats->jabber_err; rstats->l2_err = rsp_rstats->l2_err; rstats->frame_err = rsp_rstats->frame_err; + rstats->red_drops = rsp_rstats->red_drops; /* RX firmware stats */ rstats->fw_total_rcvd = rsp_rstats->fw_total_rcvd; diff --git a/drivers/net/ethernet/cavium/liquidio/lio_main.c b/drivers/net/ethernet/cavium/liquidio/lio_main.c index 010f4fe..736e082 100644 --- a/drivers/net/ethernet/cavium/liquidio/lio_main.c +++ b/drivers/net/ethernet/cavium/liquidio/lio_main.c @@ -2780,6 +2780,7 @@ static int liquidio_xmit(struct sk_buff *skb, struct net_device *netdev) if (dma_mapping_error(&oct->pci_dev->dev, dptr)) { dev_err(&oct->pci_dev->dev, "%s DMA mapping error 1\n", __func__); + stats->tx_dmamap_fail++; return NETDEV_TX_BUSY; } @@ -2819,6 +2820,7 @@ static int liquidio_xmit(struct sk_buff *skb, struct net_device *netdev) if (dma_mapping_error(&oct->pci_dev->dev, g->sg[0].ptr[0])) { dev_err(&oct->pci_dev->dev, "%s DMA mapping error 2\n", __func__); + stats->tx_dmamap_fail++; return NETDEV_TX_BUSY; } add_sg_size(&g->sg[0], (skb->len - skb->data_len), 0); diff --git a/drivers/net/ethernet/cavium/liquidio/liquidio_common.h b/drivers/net/ethernet/cavium/liquidio/liquidio_common.h index ce793f2..82b0854 100644 --- a/drivers/net/ethernet/cavium/liquidio/liquidio_common.h +++ b/drivers/net/ethernet/cavium/liquidio/liquidio_common.h @@ -766,18 +766,24 @@ struct liquidio_if_cfg_info { /** Stats for each NIC port in RX direction. */ struct nic_rx_stats { /* link-level stats */ - u64 total_rcvd; - u64 bytes_rcvd; - u64 total_bcst; - u64 total_mcst; - u64 runts; - u64 ctl_rcvd; - u64 fifo_err; /* Accounts for over/under-run of buffers */ - u64 dmac_drop; - u64 fcs_err; - u64 jabber_err; - u64 l2_err; - u64 frame_err; + u64 total_rcvd; /* Received packets */ + u64 bytes_rcvd; /* Octets of received packets */ + u64 total_bcst; /* Number of non-dropped L2 broadcast packets */ + u64 total_mcst; /* Number of non-dropped L2 multicast packets */ + u64 runts; /* Packets shorter than allowed */ + u64 ctl_rcvd; /* Received PAUSE packets */ + u64 fifo_err; /* Packets dropped due to RX FIFO full */ + u64 dmac_drop; /* Packets dropped by the DMAC filter */ + u64 fcs_err; /* Sum of fragment, overrun, and FCS errors */ + u64 jabber_err; /* Packets larger than allowed */ + u64 l2_err; /* Sum of DMA, parity, PCAM access, no memory, + * buffer overflow, malformed L2 header or + * length, oversize errors + **/ + u64 frame_err; /* Sum of IPv4 and L4 checksum errors */ + u64 red_drops; /* Packets dropped by RED due to buffer + * exhaustion + **/ /* firmware stats */ u64 fw_total_rcvd; @@ -793,11 +799,11 @@ struct nic_rx_stats { u64 fw_lro_pkts; /* Number of packets that are LROed */ u64 fw_lro_octs; /* Number of octets that are LROed */ u64 fw_total_lro; /* Number of LRO packets formed */ - u64 fw_lro_aborts; /* Number of times lRO of packet aborted */ + u64 fw_lro_aborts; /* Number of times LRO of packet aborted */ u64 fw_lro_aborts_port; u64 fw_lro_aborts_seq; u64 fw_lro_aborts_tsval; - u64 fw_lro_aborts_timer; + u64 fw_lro_aborts_timer; /* Timer setting error */ /* intrmod: packet forward rate */ u64 fwd_rate; }; @@ -805,18 +811,35 @@ struct nic_rx_stats { /** Stats for each NIC port in RX direction. */ struct nic_tx_stats { /* link-level stats */ - u64 total_pkts_sent; - u64 total_bytes_sent; - u64 mcast_pkts_sent; - u64 bcast_pkts_sent; - u64 ctl_sent; - u64 one_collision_sent; /* Packets sent after one collision*/ - u64 multi_collision_sent; /* Packets sent after multiple collision*/ - u64 max_collision_fail; /* Packets not sent due to max collisions */ - u64 max_deferral_fail; /* Packets not sent due to max deferrals */ - u64 fifo_err; /* Accounts for over/under-run of buffers */ - u64 runts; - u64 total_collisions; /* Total number of collisions detected */ + u64 total_pkts_sent; /* Total frames sent on the interface */ + u64 total_bytes_sent; /* Total octets sent on the interface */ + u64 mcast_pkts_sent; /* Packets sent to the multicast DMAC */ + u64 bcast_pkts_sent; /* Packets sent to a broadcast DMAC */ + u64 ctl_sent; /* Control/PAUSE packets sent */ + u64 one_collision_sent; /* Packets sent that experienced a + * single collision before successful + * transmission + **/ + u64 multi_collision_sent; /* Packets sent that experienced + * multiple collisions before successful + * transmission + **/ + u64 max_collision_fail; /* Packets dropped due to excessive + * collisions + **/ + u64 max_deferral_fail; /* Packets not sent due to max + * deferrals + **/ + u64 fifo_err; /* Packets sent that experienced a + * transmit underflow and were + * truncated + **/ + u64 runts; /* Packets sent with an octet count + * lessthan 64 + **/ + u64 total_collisions; /* Packets dropped due to excessive + * collisions + **/ /* firmware stats */ u64 fw_total_sent; diff --git a/drivers/net/ethernet/cavium/liquidio/octeon_iq.h b/drivers/net/ethernet/cavium/liquidio/octeon_iq.h index 81c9876..5fed7b6 100644 --- a/drivers/net/ethernet/cavium/liquidio/octeon_iq.h +++ b/drivers/net/ethernet/cavium/liquidio/octeon_iq.h @@ -62,8 +62,8 @@ struct oct_iq_stats { u64 tx_tot_bytes;/**< Total count of bytes sento to network. */ u64 tx_gso; /* count of tso */ u64 tx_vxlan; /* tunnel */ - u64 tx_dmamap_fail; - u64 tx_restart; + u64 tx_dmamap_fail; /* Number of times dma mapping failed */ + u64 tx_restart; /* Number of times this queue restarted */ }; #define OCT_IQ_STATS_SIZE (sizeof(struct oct_iq_stats))