From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from youngberry.canonical.com (youngberry.canonical.com [91.189.89.112]) by dpdk.org (Postfix) with ESMTP id 449795B40 for ; Mon, 30 Jul 2018 18:20:45 +0200 (CEST) Received: from 1.general.paelzer.uk.vpn ([10.172.196.172] helo=lap.fritz.box) by youngberry.canonical.com with esmtpsa (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.76) (envelope-from ) id 1fkAqm-00009D-3F; Mon, 30 Jul 2018 16:16:48 +0000 From: Christian Ehrhardt To: Rahul Lakkireddy Cc: dpdk stable Date: Mon, 30 Jul 2018 18:12:07 +0200 Message-Id: <20180730161342.16566-82-christian.ehrhardt@canonical.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180730161342.16566-1-christian.ehrhardt@canonical.com> References: <20180730161342.16566-1-christian.ehrhardt@canonical.com> Subject: [dpdk-stable] patch 'net/cxgbevf: add missing Tx byte counters' has been queued to stable release 18.05.1 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 30 Jul 2018 16:20:45 -0000 Hi, FYI, your patch has been queued to stable release 18.05.1 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 08/01/18. So please shout if anyone has objections. Thanks. Christian Ehrhardt --- >>From 066e395efbfeafde73c25f37489e04bbe3b84c30 Mon Sep 17 00:00:00 2001 From: Rahul Lakkireddy Date: Sat, 30 Jun 2018 00:53:55 +0530 Subject: [PATCH] net/cxgbevf: add missing Tx byte counters [ upstream commit d67692bacff307ef0748b1fcd0b155ee6c82f469 ] Fixes: a0a344a8f728 ("net/cxgbe: add VF port statistics") Signed-off-by: Rahul Lakkireddy --- drivers/net/cxgbe/base/t4_regs.h | 3 +++ drivers/net/cxgbe/base/t4vf_hw.c | 6 ++++++ drivers/net/cxgbe/cxgbevf_ethdev.c | 1 + 3 files changed, 10 insertions(+) diff --git a/drivers/net/cxgbe/base/t4_regs.h b/drivers/net/cxgbe/base/t4_regs.h index c0d6ddcac..48a751411 100644 --- a/drivers/net/cxgbe/base/t4_regs.h +++ b/drivers/net/cxgbe/base/t4_regs.h @@ -783,8 +783,11 @@ #define A_MPS_STAT_RX_BG_3_LB_TRUNC_FRAME_L 0x96b8 #define A_MPS_STAT_RX_BG_3_LB_TRUNC_FRAME_H 0x96bc +#define A_MPS_VF_STAT_TX_VF_BCAST_BYTES_L 0x80 #define A_MPS_VF_STAT_TX_VF_BCAST_FRAMES_L 0x88 +#define A_MPS_VF_STAT_TX_VF_MCAST_BYTES_L 0x90 #define A_MPS_VF_STAT_TX_VF_MCAST_FRAMES_L 0x98 +#define A_MPS_VF_STAT_TX_VF_UCAST_BYTES_L 0xa0 #define A_MPS_VF_STAT_TX_VF_UCAST_FRAMES_L 0xa8 #define A_MPS_VF_STAT_TX_VF_DROP_FRAMES_L 0xb0 #define A_MPS_VF_STAT_RX_VF_BCAST_FRAMES_L 0xd0 diff --git a/drivers/net/cxgbe/base/t4vf_hw.c b/drivers/net/cxgbe/base/t4vf_hw.c index 9fd0b8791..d96456bbe 100644 --- a/drivers/net/cxgbe/base/t4vf_hw.c +++ b/drivers/net/cxgbe/base/t4vf_hw.c @@ -683,6 +683,9 @@ static int t4vf_get_port_stats_fw(struct adapter *adapter, int pidx, /* * Translate firmware statistics into host native statistics. */ + p->tx_octets = be64_to_cpu(fwstats.tx_bcast_bytes) + + be64_to_cpu(fwstats.tx_mcast_bytes) + + be64_to_cpu(fwstats.tx_ucast_bytes); p->tx_bcast_frames = be64_to_cpu(fwstats.tx_bcast_frames); p->tx_mcast_frames = be64_to_cpu(fwstats.tx_mcast_frames); p->tx_ucast_frames = be64_to_cpu(fwstats.tx_ucast_frames); @@ -722,6 +725,9 @@ void t4vf_get_port_stats(struct adapter *adapter, int pidx, #define GET_STAT(name) \ t4_read_reg64(adapter, \ T4VF_MPS_BASE_ADDR + A_MPS_VF_STAT_##name##_L) + p->tx_octets = GET_STAT(TX_VF_BCAST_BYTES) + + GET_STAT(TX_VF_MCAST_BYTES) + + GET_STAT(TX_VF_UCAST_BYTES); p->tx_bcast_frames = GET_STAT(TX_VF_BCAST_FRAMES); p->tx_mcast_frames = GET_STAT(TX_VF_MCAST_FRAMES); p->tx_ucast_frames = GET_STAT(TX_VF_UCAST_FRAMES); diff --git a/drivers/net/cxgbe/cxgbevf_ethdev.c b/drivers/net/cxgbe/cxgbevf_ethdev.c index a942ba6b6..43fa75f7a 100644 --- a/drivers/net/cxgbe/cxgbevf_ethdev.c +++ b/drivers/net/cxgbe/cxgbevf_ethdev.c @@ -50,6 +50,7 @@ static int cxgbevf_dev_stats_get(struct rte_eth_dev *eth_dev, /* TX Stats */ eth_stats->opackets = ps.tx_bcast_frames + ps.tx_mcast_frames + ps.tx_ucast_frames; + eth_stats->obytes = ps.tx_octets; eth_stats->oerrors = ps.tx_drop; for (i = 0; i < pi->n_rx_qsets; i++) { -- 2.17.1