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 31E76A0518 for ; Fri, 24 Jul 2020 14:10:02 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 29BDC1C039; Fri, 24 Jul 2020 14:10:02 +0200 (CEST) Received: from mail-wm1-f65.google.com (mail-wm1-f65.google.com [209.85.128.65]) by dpdk.org (Postfix) with ESMTP id B62B81C209 for ; Fri, 24 Jul 2020 14:09:59 +0200 (CEST) Received: by mail-wm1-f65.google.com with SMTP id f18so8066951wml.3 for ; Fri, 24 Jul 2020 05:09:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=FYTMha/Clu3YzHF2r4RWH1pWUhU939cCXRHUotdn1eA=; b=keq3ssjfrM19XS/TrW64anr1PxZcst39yG/6aU/hEPsfpk/M/FhwOxsqJKw6GxBO9J NhVwVk2Yb3X9EnFELDEuilRim82xxRyaIJv1pZcG0OHw+P+D1qif8y3/YAquuXvUwb+4 5mEQhlHTqlm+1zrFQZKxyPjsz9UaIC6rBtKZ4UVwi77+DUM00qRIO/mnZDZ1ILMe874X +LJs0+njgZUieQeR6Div1ShQGjE3XclnpfEAL9+r4vkmI/uAQkCJE4YDTaDFUgDstgKN EsMLZFXWKELKNoN4BG52167LPLB58AAe3SJp7rA4ET+JmAJreiphXlZoBItbIZhK44MC HFww== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=FYTMha/Clu3YzHF2r4RWH1pWUhU939cCXRHUotdn1eA=; b=BOFdj7wHj8Cem+924aSRLVl076cSwQUluNqiex0Xtm5OJ/FVCGf/WmhWLdTl9exvNY rA/dX/eGCNJjkkKpCx7Na/r4v5TijhUZYJRfhucIRiWwafv3gMTzcaAAMGdXNmsgE+Pe Lu7ONz4nKjqhlCl2cRjJ4luhge+G4zPHYmODw8GUWkqDMK9gNaSsxX6ytvR/ik2R81h3 d3w6JgnfbgcvaWd+Q8GcqwOBmbOOQVMO5kKwCbpywQqf4vWi5ly9kX5/AtUGgYyVXEl9 1w3/InJWdgw4fkWZKd/UNx2Ki0usdmNGYwME8TRwWppQlRF0Zx2/7TXliXjGVEwHe3Om hFjQ== X-Gm-Message-State: AOAM532HDnflfmJDrU5yiY6NBpUffg+pMKFNFA6uqfJYPfe/48jLHC2x 1A72zPTjrhB8VOmY3YwLl2MdQpNhuBeJBg== X-Google-Smtp-Source: ABdhPJymKXnvaZpv+Kol7xSGrg45zB4/bWD/nf8fa1srxyBOFPuqMdXxUXB3pGutJA8n5ztrW5zLtA== X-Received: by 2002:a1c:4c0a:: with SMTP id z10mr8895634wmf.38.1595592599461; Fri, 24 Jul 2020 05:09:59 -0700 (PDT) Received: from localhost ([88.98.246.218]) by smtp.gmail.com with ESMTPSA id g126sm7021482wme.16.2020.07.24.05.09.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 24 Jul 2020 05:09:58 -0700 (PDT) From: luca.boccassi@gmail.com To: Kalesh AP Cc: Somnath Kotur , Ajit Khaparde , dpdk stable Date: Fri, 24 Jul 2020 12:59:43 +0100 Message-Id: <20200724120030.1863487-145-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200724120030.1863487-1-luca.boccassi@gmail.com> References: <20200724120030.1863487-1-luca.boccassi@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-stable] patch 'net/bnxt: fix unnecessary HWRM command' has been queued to stable release 19.11.4 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, FYI, your patch has been queued to stable release 19.11.4 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 07/26/20. 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 7806e74cd1dfd85ac31a1ba91ba53f5a6f62149e Mon Sep 17 00:00:00 2001 From: Kalesh AP Date: Thu, 9 Jul 2020 15:08:30 +0530 Subject: [PATCH] net/bnxt: fix unnecessary HWRM command [ upstream commit f456684ac2afafc97106ab8d997c9aa477f6b15f ] During probe, driver issues HWRM_CFA_ADV_FLOW_MGNT_QCAPS command. But it is not using the command response anywhere which makes the fw call redundant. Remove the unnecessary HWRM_CFA_ADV_FLOW_MGNT_QCAPS call to fw. Remove the redundant flow_flags in bnxt struct. Fixes: afef822b2e1b ("net/bnxt: support creating SMAC and inner DMAC filters") Signed-off-by: Kalesh AP Reviewed-by: Somnath Kotur Reviewed-by: Ajit Khaparde --- drivers/net/bnxt/bnxt.h | 2 -- drivers/net/bnxt/bnxt_ethdev.c | 4 ---- drivers/net/bnxt/bnxt_hwrm.c | 32 -------------------------------- drivers/net/bnxt/bnxt_hwrm.h | 1 - 4 files changed, 39 deletions(-) diff --git a/drivers/net/bnxt/bnxt.h b/drivers/net/bnxt/bnxt.h index 96e46868e..46cf41864 100644 --- a/drivers/net/bnxt/bnxt.h +++ b/drivers/net/bnxt/bnxt.h @@ -541,8 +541,6 @@ struct bnxt { #define BNXT_FW_CAP_ERROR_RECOVERY BIT(2) #define BNXT_FW_CAP_ERR_RECOVER_RELOAD BIT(3) - uint32_t flow_flags; -#define BNXT_FLOW_FLAG_L2_HDR_SRC_FILTER_EN BIT(0) pthread_mutex_t flow_lock; uint32_t vnic_cap_flags; diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c index f1bd57535..f6d2ed741 100644 --- a/drivers/net/bnxt/bnxt_ethdev.c +++ b/drivers/net/bnxt/bnxt_ethdev.c @@ -4723,10 +4723,6 @@ static int bnxt_init_fw(struct bnxt *bp) if (rc) return rc; - rc = bnxt_hwrm_cfa_adv_flow_mgmt_qcaps(bp); - if (rc) - return rc; - /* Get the adapter error recovery support info */ rc = bnxt_hwrm_error_recovery_qcfg(bp); if (rc) diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c index 33f352fad..720099a32 100644 --- a/drivers/net/bnxt/bnxt_hwrm.c +++ b/drivers/net/bnxt/bnxt_hwrm.c @@ -5068,35 +5068,3 @@ int bnxt_hwrm_port_ts_query(struct bnxt *bp, uint8_t path, uint64_t *timestamp) return rc; } - -int bnxt_hwrm_cfa_adv_flow_mgmt_qcaps(struct bnxt *bp) -{ - struct hwrm_cfa_adv_flow_mgnt_qcaps_output *resp = - bp->hwrm_cmd_resp_addr; - struct hwrm_cfa_adv_flow_mgnt_qcaps_input req = {0}; - uint32_t flags = 0; - int rc = 0; - - if (!(bp->flags & BNXT_FLAG_ADV_FLOW_MGMT)) - return rc; - - if (!(BNXT_PF(bp) || BNXT_VF_IS_TRUSTED(bp))) { - PMD_DRV_LOG(DEBUG, - "Not a PF or trusted VF. Command not supported\n"); - return 0; - } - - HWRM_PREP(req, CFA_ADV_FLOW_MGNT_QCAPS, BNXT_USE_KONG(bp)); - rc = bnxt_hwrm_send_message(bp, &req, sizeof(req), BNXT_USE_KONG(bp)); - - HWRM_CHECK_RESULT(); - flags = rte_le_to_cpu_32(resp->flags); - HWRM_UNLOCK(); - - if (flags & HWRM_CFA_ADV_FLOW_MGNT_QCAPS_L2_HDR_SRC_FILTER_EN) { - bp->flow_flags |= BNXT_FLOW_FLAG_L2_HDR_SRC_FILTER_EN; - PMD_DRV_LOG(INFO, "Source L2 header filtering enabled\n"); - } - - return rc; -} diff --git a/drivers/net/bnxt/bnxt_hwrm.h b/drivers/net/bnxt/bnxt_hwrm.h index 2753720ae..ad5baf262 100644 --- a/drivers/net/bnxt/bnxt_hwrm.h +++ b/drivers/net/bnxt/bnxt_hwrm.h @@ -229,5 +229,4 @@ int bnxt_hwrm_error_recovery_qcfg(struct bnxt *bp); int bnxt_hwrm_fw_reset(struct bnxt *bp); int bnxt_hwrm_port_ts_query(struct bnxt *bp, uint8_t path, uint64_t *timestamp); -int bnxt_hwrm_cfa_adv_flow_mgmt_qcaps(struct bnxt *bp); #endif -- 2.20.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2020-07-24 12:53:54.147834598 +0100 +++ 0145-net-bnxt-fix-unnecessary-HWRM-command.patch 2020-07-24 12:53:48.491010260 +0100 @@ -1,8 +1,10 @@ -From f456684ac2afafc97106ab8d997c9aa477f6b15f Mon Sep 17 00:00:00 2001 +From 7806e74cd1dfd85ac31a1ba91ba53f5a6f62149e Mon Sep 17 00:00:00 2001 From: Kalesh AP Date: Thu, 9 Jul 2020 15:08:30 +0530 Subject: [PATCH] net/bnxt: fix unnecessary HWRM command +[ upstream commit f456684ac2afafc97106ab8d997c9aa477f6b15f ] + During probe, driver issues HWRM_CFA_ADV_FLOW_MGNT_QCAPS command. But it is not using the command response anywhere which makes the fw call redundant. @@ -11,7 +13,6 @@ Remove the redundant flow_flags in bnxt struct. Fixes: afef822b2e1b ("net/bnxt: support creating SMAC and inner DMAC filters") -Cc: stable@dpdk.org Signed-off-by: Kalesh AP Reviewed-by: Somnath Kotur @@ -24,12 +25,12 @@ 4 files changed, 39 deletions(-) diff --git a/drivers/net/bnxt/bnxt.h b/drivers/net/bnxt/bnxt.h -index 8325e8796..50f93ff5b 100644 +index 96e46868e..46cf41864 100644 --- a/drivers/net/bnxt/bnxt.h +++ b/drivers/net/bnxt/bnxt.h -@@ -638,8 +638,6 @@ struct bnxt { - #define BNXT_FW_CAP_ADV_FLOW_COUNTERS BIT(6) - #define BNXT_FW_CAP_HCOMM_FW_STATUS BIT(7) +@@ -541,8 +541,6 @@ struct bnxt { + #define BNXT_FW_CAP_ERROR_RECOVERY BIT(2) + #define BNXT_FW_CAP_ERR_RECOVER_RELOAD BIT(3) - uint32_t flow_flags; -#define BNXT_FLOW_FLAG_L2_HDR_SRC_FILTER_EN BIT(0) @@ -37,28 +38,29 @@ uint32_t vnic_cap_flags; diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c -index 712de1869..318d6b33a 100644 +index f1bd57535..f6d2ed741 100644 --- a/drivers/net/bnxt/bnxt_ethdev.c +++ b/drivers/net/bnxt/bnxt_ethdev.c -@@ -5472,10 +5472,6 @@ static int bnxt_init_fw(struct bnxt *bp) - - bnxt_hwrm_port_phy_qcaps(bp); +@@ -4723,10 +4723,6 @@ static int bnxt_init_fw(struct bnxt *bp) + if (rc) + return rc; - rc = bnxt_hwrm_cfa_adv_flow_mgmt_qcaps(bp); - if (rc) - return rc; - - bnxt_alloc_error_recovery_info(bp); /* Get the adapter error recovery support info */ rc = bnxt_hwrm_error_recovery_qcfg(bp); + if (rc) diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c -index 6ade32d1b..f9c746109 100644 +index 33f352fad..720099a32 100644 --- a/drivers/net/bnxt/bnxt_hwrm.c +++ b/drivers/net/bnxt/bnxt_hwrm.c -@@ -5320,38 +5320,6 @@ int bnxt_hwrm_port_ts_query(struct bnxt *bp, uint8_t path, uint64_t *timestamp) +@@ -5068,35 +5068,3 @@ int bnxt_hwrm_port_ts_query(struct bnxt *bp, uint8_t path, uint64_t *timestamp) + return rc; } - +- -int bnxt_hwrm_cfa_adv_flow_mgmt_qcaps(struct bnxt *bp) -{ - struct hwrm_cfa_adv_flow_mgnt_qcaps_output *resp = @@ -67,7 +69,7 @@ - uint32_t flags = 0; - int rc = 0; - -- if (!(bp->fw_cap & BNXT_FW_CAP_ADV_FLOW_MGMT)) +- if (!(bp->flags & BNXT_FLAG_ADV_FLOW_MGMT)) - return rc; - - if (!(BNXT_PF(bp) || BNXT_VF_IS_TRUSTED(bp))) { @@ -76,7 +78,7 @@ - return 0; - } - -- HWRM_PREP(&req, HWRM_CFA_ADV_FLOW_MGNT_QCAPS, BNXT_USE_KONG(bp)); +- HWRM_PREP(req, CFA_ADV_FLOW_MGNT_QCAPS, BNXT_USE_KONG(bp)); - rc = bnxt_hwrm_send_message(bp, &req, sizeof(req), BNXT_USE_KONG(bp)); - - HWRM_CHECK_RESULT(); @@ -90,22 +92,16 @@ - - return rc; -} -- - int bnxt_hwrm_cfa_counter_qcaps(struct bnxt *bp, uint16_t *max_fc) - { - int rc = 0; diff --git a/drivers/net/bnxt/bnxt_hwrm.h b/drivers/net/bnxt/bnxt_hwrm.h -index 9e0b79904..1704eddba 100644 +index 2753720ae..ad5baf262 100644 --- a/drivers/net/bnxt/bnxt_hwrm.h +++ b/drivers/net/bnxt/bnxt_hwrm.h -@@ -259,7 +259,6 @@ int bnxt_hwrm_error_recovery_qcfg(struct bnxt *bp); +@@ -229,5 +229,4 @@ int bnxt_hwrm_error_recovery_qcfg(struct bnxt *bp); int bnxt_hwrm_fw_reset(struct bnxt *bp); int bnxt_hwrm_port_ts_query(struct bnxt *bp, uint8_t path, uint64_t *timestamp); -int bnxt_hwrm_cfa_adv_flow_mgmt_qcaps(struct bnxt *bp); - int bnxt_hwrm_cfa_counter_qcaps(struct bnxt *bp, uint16_t *max_fc); - int bnxt_hwrm_ctx_rgtr(struct bnxt *bp, rte_iova_t dma_addr, uint16_t *ctx_id); - int bnxt_hwrm_ctx_unrgtr(struct bnxt *bp, uint16_t ctx_id); + #endif -- 2.20.1