From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id B61C9A04F0 for ; Thu, 19 Dec 2019 15:57:21 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id A4BE41C01F; Thu, 19 Dec 2019 15:57:21 +0100 (CET) Received: from mail-io1-f48.google.com (mail-io1-f48.google.com [209.85.166.48]) by dpdk.org (Postfix) with ESMTP id A40E41C01F for ; Thu, 19 Dec 2019 15:57:19 +0100 (CET) Received: by mail-io1-f48.google.com with SMTP id n21so4468624ioo.10 for ; Thu, 19 Dec 2019 06:57:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=W3A7YR/E+LHqtnVbf+n5OGzIThqerZBTj2hX1L7Mv+8=; b=VIHK9Vj90pL438XMN5/5ChobdZaWX4VregpVFtmfGaTxAi3rNLcjwoBhn7M4bwWLKv Wr2BQ9/wItjBaIvyahA29217UkqlfQ3WMwL4sbHn3IFZbFlyWDdlTQsUx0U7iLSPiqnx ZYs/VhTNSWMnugM7mrOQi3wA/3TJmaa19eCbg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=W3A7YR/E+LHqtnVbf+n5OGzIThqerZBTj2hX1L7Mv+8=; b=ClA+qzMtIi+tb4G4fFzrFTGjjE4ZH7WBBuxR5KPz7Nh/YXnIQO7df24ZQO6jj0tcBy Oj1F1eSF8vB/pvI7QGiNeDGCEeFrQbYyTi4Z2+Q8LRCANG6mvluZ4G/Qhb4/tA3UZz9I 1mFHeJXDZT7iv+Va/Q379SaZmueADKN/M2TqTd4mjCTCVMp8DmV+98vxmHGQWBh1bvgK CpwKVlqMSNTx+lczTuoO7sXyb1BgFHvZp/6ui9rJKyYwfSoiKF81Qo9CEYz4qgBMQ721 x9LhDHdYvlkz41rPVDrEdnhdb6/gFQTdFPFLpBfVuU4/l0r4M3yrnZcoNXOnV/23KV87 XgfA== X-Gm-Message-State: APjAAAXyCEXbkrOSS2BP24dD3LS+HAZ2Q2+myT0z6olC/wuj/oJx4JML y03uvAtSE4oRxcFVfXezhoaXmAPu5vzJJ7lWCERe8Q== X-Google-Smtp-Source: APXvYqx8qEPzg/iDHd2zZFAKAZAUFlaH0qL38/uTg4Giqi7MOuSD6Pi/9zpDmnerOdcx3SeEbkgSz6KAm12hickEyBc= X-Received: by 2002:a6b:f206:: with SMTP id q6mr5877531ioh.264.1576767438801; Thu, 19 Dec 2019 06:57:18 -0800 (PST) MIME-Version: 1.0 References: <20191219143447.21506-1-luca.boccassi@gmail.com> <20191219143447.21506-59-luca.boccassi@gmail.com> In-Reply-To: <20191219143447.21506-59-luca.boccassi@gmail.com> From: Kalesh Anakkur Purayil Date: Thu, 19 Dec 2019 20:26:50 +0530 Message-ID: To: luca.boccassi@gmail.com Cc: Somnath Kotur , Ajit Khaparde , dpdk stable Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: Re: [dpdk-stable] patch 'net/bnxt: fix stats errors handling' has been queued to LTS release 17.11.10 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: , Errors-To: stable-bounces@dpdk.org Sender: "stable" Hi Luca, NAK for this patch as the rebasing was not correctly done. You can ignore this patch for now from 17.11 stable inclusion. Regards, Kalesh On Thu, Dec 19, 2019 at 8:07 PM wrote: > Hi, > > FYI, your patch has been queued to LTS release 17.11.10 > > Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. > It will be pushed if I get no objections before 12/21/19. So please > shout if anyone has objections. > > Also note that after the patch there's a diff of the upstream commit vs the > patch applied to the branch. This will indicate if there was any rebasing > needed to apply to the stable branch. If there were code changes for > rebasing > (ie: not only metadata diffs), please double check that the rebase was > correctly done. > > Thanks. > > Luca Boccassi > > --- > From ed1b2592aee44b786ac897651e9e5fc7ed350e9c Mon Sep 17 00:00:00 2001 > From: Kalesh AP > Date: Wed, 9 Oct 2019 18:41:42 -0700 > Subject: [PATCH] net/bnxt: fix stats errors handling > > [ upstream commit 9f55e6ac7500e828d42e95100d5cb061e912be5c ] > > This patch fixes few checks and few return values while getting > and clearing device statistics. > > 1. Fixed to return standard error code. > 2. Clubbed few error checks > 3. Removed an unnecessary return check > > Fixes: bfb9c2260be2 ("net/bnxt: support xstats get/reset") > Fixes: 88920136688c ("net/bnxt: support xstats get by id") > > Signed-off-by: Kalesh AP > Reviewed-by: Somnath Kotur > Reviewed-by: Ajit Khaparde > --- > drivers/net/bnxt/bnxt_stats.c | 21 +++++++++++---------- > 1 file changed, 11 insertions(+), 10 deletions(-) > > diff --git a/drivers/net/bnxt/bnxt_stats.c b/drivers/net/bnxt/bnxt_stats.c > index f8bb4ed9e5..6497926162 100644 > --- a/drivers/net/bnxt/bnxt_stats.c > +++ b/drivers/net/bnxt/bnxt_stats.c > @@ -360,16 +360,17 @@ int bnxt_dev_xstats_get_names_op(__rte_unused struct > rte_eth_dev *eth_dev, > void bnxt_dev_xstats_reset_op(struct rte_eth_dev *eth_dev) > { > struct bnxt *bp = (struct bnxt *)eth_dev->data->dev_private; > + int ret; > > - if (bp->flags & BNXT_FLAG_PORT_STATS && !BNXT_NPAR_PF(bp)) > - bnxt_hwrm_port_clr_stats(bp); > - > - if (BNXT_VF(bp)) > - RTE_LOG(ERR, PMD, "Operation not supported on a VF > device\n"); > - if (BNXT_NPAR_PF(bp)) > - RTE_LOG(ERR, PMD, "Operation not supported on a MF > device\n"); > - if (!(bp->flags & BNXT_FLAG_PORT_STATS)) > + if (BNXT_VF(bp) || !BNXT_NPAR_PF(bp) || > + !(bp->flags & BNXT_FLAG_PORT_STATS)) { > RTE_LOG(ERR, PMD, "Operation not supported\n"); > + } > + > + ret = bnxt_hwrm_port_clr_stats(bp); > + if (ret != 0) > + RTE_LOG(ERR, PMD, "Failed to reset xstats: %s\n", > + strerror(-ret)); > } > > int bnxt_dev_xstats_get_by_id_op(struct rte_eth_dev *dev, const uint64_t > *ids, > @@ -389,7 +390,7 @@ int bnxt_dev_xstats_get_by_id_op(struct rte_eth_dev > *dev, const uint64_t *ids, > for (i = 0; i < limit; i++) { > if (ids[i] >= stat_cnt) { > RTE_LOG(ERR, PMD, "id value isn't valid"); > - return -1; > + return -EINVAL; > } > values[i] = values_copy[ids[i]]; > } > @@ -415,7 +416,7 @@ int bnxt_dev_xstats_get_names_by_id_op(struct > rte_eth_dev *dev, > for (i = 0; i < limit; i++) { > if (ids[i] >= stat_cnt) { > RTE_LOG(ERR, PMD, "id value isn't valid"); > - return -1; > + return -EINVAL; > } > strcpy(xstats_names[i].name, > xstats_names_copy[ids[i]].name); > -- > 2.20.1 > > --- > Diff of the applied patch vs upstream commit (please double-check if > non-empty: > --- > --- - 2019-12-19 14:32:28.664004493 +0000 > +++ 0059-net-bnxt-fix-stats-errors-handling.patch 2019-12-19 > 14:32:26.109297904 +0000 > @@ -1,8 +1,10 @@ > -From 9f55e6ac7500e828d42e95100d5cb061e912be5c Mon Sep 17 00:00:00 2001 > +From ed1b2592aee44b786ac897651e9e5fc7ed350e9c Mon Sep 17 00:00:00 2001 > From: Kalesh AP > Date: Wed, 9 Oct 2019 18:41:42 -0700 > Subject: [PATCH] net/bnxt: fix stats errors handling > > +[ upstream commit 9f55e6ac7500e828d42e95100d5cb061e912be5c ] > + > This patch fixes few checks and few return values while getting > and clearing device statistics. > > @@ -12,90 +14,57 @@ > > Fixes: bfb9c2260be2 ("net/bnxt: support xstats get/reset") > Fixes: 88920136688c ("net/bnxt: support xstats get by id") > -Cc: stable@dpdk.org > > Signed-off-by: Kalesh AP > Reviewed-by: Somnath Kotur > Reviewed-by: Ajit Khaparde > --- > - drivers/net/bnxt/bnxt_stats.c | 36 +++++++++++------------------------ > - 1 file changed, 11 insertions(+), 25 deletions(-) > + drivers/net/bnxt/bnxt_stats.c | 21 +++++++++++---------- > + 1 file changed, 11 insertions(+), 10 deletions(-) > > diff --git a/drivers/net/bnxt/bnxt_stats.c b/drivers/net/bnxt/bnxt_stats.c > -index 21012e1fee..f486a5634b 100644 > +index f8bb4ed9e5..6497926162 100644 > --- a/drivers/net/bnxt/bnxt_stats.c > +++ b/drivers/net/bnxt/bnxt_stats.c > -@@ -360,7 +360,7 @@ int bnxt_stats_get_op(struct rte_eth_dev *eth_dev, > - memset(bnxt_stats, 0, sizeof(*bnxt_stats)); > - if (!(bp->flags & BNXT_FLAG_INIT_DONE)) { > - PMD_DRV_LOG(ERR, "Device Initialization not complete!\n"); > -- return -1; > -+ return -EIO; > - } > - > - num_q_stats = RTE_MIN(bp->rx_cp_nr_rings, > -@@ -390,9 +390,8 @@ int bnxt_stats_get_op(struct rte_eth_dev *eth_dev, > - if (unlikely(rc)) > - return rc; > - } > -+ > - rc = bnxt_hwrm_func_qstats(bp, 0xffff, bnxt_stats); > -- if (unlikely(rc)) > -- return rc; > - return rc; > - } > +@@ -360,16 +360,17 @@ int bnxt_dev_xstats_get_names_op(__rte_unused > struct rte_eth_dev *eth_dev, > + void bnxt_dev_xstats_reset_op(struct rte_eth_dev *eth_dev) > + { > + struct bnxt *bp = (struct bnxt *)eth_dev->data->dev_private; > ++ int ret; > > -@@ -573,30 +572,17 @@ int bnxt_dev_xstats_reset_op(struct rte_eth_dev > *eth_dev) > - if (ret) > - return ret; > - > -- if (bp->flags & BNXT_FLAG_PORT_STATS && BNXT_SINGLE_PF(bp)) { > -- ret = bnxt_hwrm_port_clr_stats(bp); > -- if (ret != 0) { > -- PMD_DRV_LOG(ERR, "Operation failed: %s\n", > -- strerror(-ret)); > -- return ret; > -- } > -- } > -- > -- ret = 0; > +- if (bp->flags & BNXT_FLAG_PORT_STATS && !BNXT_NPAR_PF(bp)) > +- bnxt_hwrm_port_clr_stats(bp); > - > -- if (BNXT_VF(bp)) { > -- PMD_DRV_LOG(ERR, "Operation not supported on a VF > device\n"); > -- ret = -ENOTSUP; > -- } > -- if (!BNXT_SINGLE_PF(bp)) { > -- PMD_DRV_LOG(ERR, "Operation not supported on a MF > device\n"); > -- ret = -ENOTSUP; > -- } > -- if (!(bp->flags & BNXT_FLAG_PORT_STATS)) { > -+ if (BNXT_VF(bp) || !BNXT_SINGLE_PF(bp) || > +- if (BNXT_VF(bp)) > +- RTE_LOG(ERR, PMD, "Operation not supported on a VF > device\n"); > +- if (BNXT_NPAR_PF(bp)) > +- RTE_LOG(ERR, PMD, "Operation not supported on a MF > device\n"); > +- if (!(bp->flags & BNXT_FLAG_PORT_STATS)) > ++ if (BNXT_VF(bp) || !BNXT_NPAR_PF(bp) || > + !(bp->flags & BNXT_FLAG_PORT_STATS)) { > - PMD_DRV_LOG(ERR, "Operation not supported\n"); > - ret = -ENOTSUP; > - } > - > + RTE_LOG(ERR, PMD, "Operation not supported\n"); > ++ } > ++ > + ret = bnxt_hwrm_port_clr_stats(bp); > + if (ret != 0) > -+ PMD_DRV_LOG(ERR, "Failed to reset xstats: %s\n", > ++ RTE_LOG(ERR, PMD, "Failed to reset xstats: %s\n", > + strerror(-ret)); > -+ > - return ret; > } > > -@@ -625,7 +611,7 @@ int bnxt_dev_xstats_get_by_id_op(struct rte_eth_dev > *dev, const uint64_t *ids, > + int bnxt_dev_xstats_get_by_id_op(struct rte_eth_dev *dev, const uint64_t > *ids, > +@@ -389,7 +390,7 @@ int bnxt_dev_xstats_get_by_id_op(struct rte_eth_dev > *dev, const uint64_t *ids, > for (i = 0; i < limit; i++) { > if (ids[i] >= stat_cnt) { > - PMD_DRV_LOG(ERR, "id value isn't valid"); > + RTE_LOG(ERR, PMD, "id value isn't valid"); > - return -1; > + return -EINVAL; > } > values[i] = values_copy[ids[i]]; > } > -@@ -659,7 +645,7 @@ int bnxt_dev_xstats_get_names_by_id_op(struct > rte_eth_dev *dev, > +@@ -415,7 +416,7 @@ int bnxt_dev_xstats_get_names_by_id_op(struct > rte_eth_dev *dev, > for (i = 0; i < limit; i++) { > if (ids[i] >= stat_cnt) { > - PMD_DRV_LOG(ERR, "id value isn't valid"); > + RTE_LOG(ERR, PMD, "id value isn't valid"); > - return -1; > + return -EINVAL; > } > -- Regards, Kalesh A P