netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net 0/6] bnxt_en: Bug fixes.
@ 2018-11-15  8:25 Michael Chan
  2018-11-15  8:25 ` [PATCH net 1/6] bnxt_en: Fix RSS context allocation Michael Chan
                   ` (6 more replies)
  0 siblings, 7 replies; 18+ messages in thread
From: Michael Chan @ 2018-11-15  8:25 UTC (permalink / raw)
  To: davem; +Cc: netdev

Most of the bug fixes are related to the new 57500 chips, including some
initialization and counter fixes, disabling RDMA support, and a
workaround for occasional missing interrupts.  The last patch from
Vasundhara fixes the year/month parameters for firmware coredump.

Michael Chan (5):
  bnxt_en: Fix RSS context allocation.
  bnxt_en: Fix rx_l4_csum_errors counter on 57500 devices.
  bnxt_en: Disable RDMA support on the 57500 chips.
  bnxt_en: Workaround occasional TX timeout on 57500 A0.
  bnxt_en: Add software "missed_irqs" counter.

Vasundhara Volam (1):
  bnxt_en: Fix filling time in bnxt_fill_coredump_record()

 drivers/net/ethernet/broadcom/bnxt/bnxt.c         | 70 ++++++++++++++++++++++-
 drivers/net/ethernet/broadcom/bnxt/bnxt.h         |  4 ++
 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c |  9 ++-
 drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c     |  3 +
 4 files changed, 81 insertions(+), 5 deletions(-)

-- 
2.5.1

^ permalink raw reply	[flat|nested] 18+ messages in thread

* [PATCH net 1/6] bnxt_en: Fix RSS context allocation.
  2018-11-15  8:25 [PATCH net 0/6] bnxt_en: Bug fixes Michael Chan
@ 2018-11-15  8:25 ` Michael Chan
  2018-11-15  8:25 ` [PATCH net 2/6] bnxt_en: Fix rx_l4_csum_errors counter on 57500 devices Michael Chan
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 18+ messages in thread
From: Michael Chan @ 2018-11-15  8:25 UTC (permalink / raw)
  To: davem; +Cc: netdev

Recent commit has added the reservation of RSS context.  This requires
bnxt_hwrm_vnic_qcaps() to be called before allocating any RSS contexts.
The bnxt_hwrm_vnic_qcaps() call sets up proper flags that will
determine how many RSS contexts to allocate to support NTUPLE.

This causes a regression that too many RSS contexts are being reserved
and causing resource shortage when enabling many VFs.  Fix it by calling
bnxt_hwrm_vnic_qcaps() earlier.

Fixes: 41e8d7983752 ("bnxt_en: Modify the ring reservation functions for 57500 series chips.")
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
---
 drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index dd85d79..4a45a2b 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -10087,6 +10087,7 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
 	}
 
 	bnxt_hwrm_func_qcfg(bp);
+	bnxt_hwrm_vnic_qcaps(bp);
 	bnxt_hwrm_port_led_qcaps(bp);
 	bnxt_ethtool_init(bp);
 	bnxt_dcb_init(bp);
@@ -10120,7 +10121,6 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
 				    VNIC_RSS_CFG_REQ_HASH_TYPE_UDP_IPV6;
 	}
 
-	bnxt_hwrm_vnic_qcaps(bp);
 	if (bnxt_rfs_supported(bp)) {
 		dev->hw_features |= NETIF_F_NTUPLE;
 		if (bnxt_rfs_capable(bp)) {
-- 
2.5.1

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH net 2/6] bnxt_en: Fix rx_l4_csum_errors counter on 57500 devices.
  2018-11-15  8:25 [PATCH net 0/6] bnxt_en: Bug fixes Michael Chan
  2018-11-15  8:25 ` [PATCH net 1/6] bnxt_en: Fix RSS context allocation Michael Chan
@ 2018-11-15  8:25 ` Michael Chan
  2018-11-15  8:25 ` [PATCH net 3/6] bnxt_en: Disable RDMA support on the 57500 chips Michael Chan
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 18+ messages in thread
From: Michael Chan @ 2018-11-15  8:25 UTC (permalink / raw)
  To: davem; +Cc: netdev

The software counter structure is defined in both the CP ring's structure
and the NQ ring's structure on the new devices.  The legacy code adds the
counter to the CP ring's structure and the counter won't get displayed
since the ethtool code is looking at the NQ ring's structure.

Since all other counters are contained in the NQ ring's structure, it
makes more sense to count rx_l4_csum_errors in the NQ.

Fixes: 50e3ab7836b5 ("bnxt_en: Allocate completion ring structures for 57500 series chips.")
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
---
 drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 4a45a2b..5856099 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -1675,7 +1675,7 @@ static int bnxt_rx_pkt(struct bnxt *bp, struct bnxt_cp_ring_info *cpr,
 	} else {
 		if (rxcmp1->rx_cmp_cfa_code_errors_v2 & RX_CMP_L4_CS_ERR_BITS) {
 			if (dev->features & NETIF_F_RXCSUM)
-				cpr->rx_l4_csum_errors++;
+				bnapi->cp_ring.rx_l4_csum_errors++;
 		}
 	}
 
-- 
2.5.1

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH net 3/6] bnxt_en: Disable RDMA support on the 57500 chips.
  2018-11-15  8:25 [PATCH net 0/6] bnxt_en: Bug fixes Michael Chan
  2018-11-15  8:25 ` [PATCH net 1/6] bnxt_en: Fix RSS context allocation Michael Chan
  2018-11-15  8:25 ` [PATCH net 2/6] bnxt_en: Fix rx_l4_csum_errors counter on 57500 devices Michael Chan
@ 2018-11-15  8:25 ` Michael Chan
  2018-11-15  8:25 ` [PATCH net 4/6] bnxt_en: Workaround occasional TX timeout on 57500 A0 Michael Chan
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 18+ messages in thread
From: Michael Chan @ 2018-11-15  8:25 UTC (permalink / raw)
  To: davem; +Cc: netdev

There is no RDMA support on 57500 chips yet, so prevent bnxt_re from
registering on these chips.  There is intermittent failure if bnxt_re
is allowed to register and proceed with RDMA operations.

Fixes: 1ab968d2f1d6 ("bnxt_en: Add PCI ID for BCM57508 device.")
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
---
 drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c
index beee612..b59b382 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c
@@ -43,6 +43,9 @@ static int bnxt_register_dev(struct bnxt_en_dev *edev, int ulp_id,
 	if (ulp_id == BNXT_ROCE_ULP) {
 		unsigned int max_stat_ctxs;
 
+		if (bp->flags & BNXT_FLAG_CHIP_P5)
+			return -EOPNOTSUPP;
+
 		max_stat_ctxs = bnxt_get_max_func_stat_ctxs(bp);
 		if (max_stat_ctxs <= BNXT_MIN_ROCE_STAT_CTXS ||
 		    bp->num_stat_ctxs == max_stat_ctxs)
-- 
2.5.1

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH net 4/6] bnxt_en: Workaround occasional TX timeout on 57500 A0.
  2018-11-15  8:25 [PATCH net 0/6] bnxt_en: Bug fixes Michael Chan
                   ` (2 preceding siblings ...)
  2018-11-15  8:25 ` [PATCH net 3/6] bnxt_en: Disable RDMA support on the 57500 chips Michael Chan
@ 2018-11-15  8:25 ` Michael Chan
  2018-11-15  8:25 ` [PATCH net 5/6] bnxt_en: Add software "missed_irqs" counter Michael Chan
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 18+ messages in thread
From: Michael Chan @ 2018-11-15  8:25 UTC (permalink / raw)
  To: davem; +Cc: netdev

Hardware can sometimes not generate NQ MSIX with a single pending
CP ring entry.  This seems to always happen at the last entry of
the CP ring before it wraps.  Add logic to check all the CP rings for
pending entries without the CP ring consumer index advancing.  Calling
HWRM_DBG_RING_INFO_GET to read the context of the CP ring will flush
out the NQ entry and MSIX.

Signed-off-by: Michael Chan <michael.chan@broadcom.com>
---
 drivers/net/ethernet/broadcom/bnxt/bnxt.c | 65 +++++++++++++++++++++++++++++++
 drivers/net/ethernet/broadcom/bnxt/bnxt.h |  3 ++
 2 files changed, 68 insertions(+)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 5856099..5d4147a 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -8714,6 +8714,26 @@ static int bnxt_set_features(struct net_device *dev, netdev_features_t features)
 	return rc;
 }
 
+static int bnxt_dbg_hwrm_ring_info_get(struct bnxt *bp, u8 ring_type,
+				       u32 ring_id, u32 *prod, u32 *cons)
+{
+	struct hwrm_dbg_ring_info_get_output *resp = bp->hwrm_cmd_resp_addr;
+	struct hwrm_dbg_ring_info_get_input req = {0};
+	int rc;
+
+	bnxt_hwrm_cmd_hdr_init(bp, &req, HWRM_DBG_RING_INFO_GET, -1, -1);
+	req.ring_type = ring_type;
+	req.fw_ring_id = cpu_to_le32(ring_id);
+	mutex_lock(&bp->hwrm_cmd_lock);
+	rc = _hwrm_send_message(bp, &req, sizeof(req), HWRM_CMD_TIMEOUT);
+	if (!rc) {
+		*prod = le32_to_cpu(resp->producer_index);
+		*cons = le32_to_cpu(resp->consumer_index);
+	}
+	mutex_unlock(&bp->hwrm_cmd_lock);
+	return rc;
+}
+
 static void bnxt_dump_tx_sw_state(struct bnxt_napi *bnapi)
 {
 	struct bnxt_tx_ring_info *txr = bnapi->tx_ring;
@@ -8821,6 +8841,11 @@ static void bnxt_timer(struct timer_list *t)
 			bnxt_queue_sp_work(bp);
 		}
 	}
+
+	if ((bp->flags & BNXT_FLAG_CHIP_P5) && netif_carrier_ok(dev)) {
+		set_bit(BNXT_RING_COAL_NOW_SP_EVENT, &bp->sp_event);
+		bnxt_queue_sp_work(bp);
+	}
 bnxt_restart_timer:
 	mod_timer(&bp->timer, jiffies + bp->current_interval);
 }
@@ -8851,6 +8876,43 @@ static void bnxt_reset(struct bnxt *bp, bool silent)
 	bnxt_rtnl_unlock_sp(bp);
 }
 
+static void bnxt_chk_missed_irq(struct bnxt *bp)
+{
+	int i;
+
+	if (!(bp->flags & BNXT_FLAG_CHIP_P5))
+		return;
+
+	for (i = 0; i < bp->cp_nr_rings; i++) {
+		struct bnxt_napi *bnapi = bp->bnapi[i];
+		struct bnxt_cp_ring_info *cpr;
+		u32 fw_ring_id;
+		int j;
+
+		if (!bnapi)
+			continue;
+
+		cpr = &bnapi->cp_ring;
+		for (j = 0; j < 2; j++) {
+			struct bnxt_cp_ring_info *cpr2 = cpr->cp_ring_arr[j];
+			u32 val[2];
+
+			if (!cpr2 || cpr2->has_more_work ||
+			    !bnxt_has_work(bp, cpr2))
+				continue;
+
+			if (cpr2->cp_raw_cons != cpr2->last_cp_raw_cons) {
+				cpr2->last_cp_raw_cons = cpr2->cp_raw_cons;
+				continue;
+			}
+			fw_ring_id = cpr2->cp_ring_struct.fw_ring_id;
+			bnxt_dbg_hwrm_ring_info_get(bp,
+				DBG_RING_INFO_GET_REQ_RING_TYPE_L2_CMPL,
+				fw_ring_id, &val[0], &val[1]);
+		}
+	}
+}
+
 static void bnxt_cfg_ntp_filters(struct bnxt *);
 
 static void bnxt_sp_task(struct work_struct *work)
@@ -8930,6 +8992,9 @@ static void bnxt_sp_task(struct work_struct *work)
 	if (test_and_clear_bit(BNXT_FLOW_STATS_SP_EVENT, &bp->sp_event))
 		bnxt_tc_flow_stats_work(bp);
 
+	if (test_and_clear_bit(BNXT_RING_COAL_NOW_SP_EVENT, &bp->sp_event))
+		bnxt_chk_missed_irq(bp);
+
 	/* These functions below will clear BNXT_STATE_IN_SP_TASK.  They
 	 * must be the last functions to be called before exiting.
 	 */
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.h b/drivers/net/ethernet/broadcom/bnxt/bnxt.h
index 498b373..00bd17e 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.h
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.h
@@ -798,6 +798,8 @@ struct bnxt_cp_ring_info {
 	u8			had_work_done:1;
 	u8			has_more_work:1;
 
+	u32			last_cp_raw_cons;
+
 	struct bnxt_coal	rx_ring_coal;
 	u64			rx_packets;
 	u64			rx_bytes;
@@ -1527,6 +1529,7 @@ struct bnxt {
 #define BNXT_LINK_SPEED_CHNG_SP_EVENT	14
 #define BNXT_FLOW_STATS_SP_EVENT	15
 #define BNXT_UPDATE_PHY_SP_EVENT	16
+#define BNXT_RING_COAL_NOW_SP_EVENT	17
 
 	struct bnxt_hw_resc	hw_resc;
 	struct bnxt_pf_info	pf;
-- 
2.5.1

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH net 5/6] bnxt_en: Add software "missed_irqs" counter.
  2018-11-15  8:25 [PATCH net 0/6] bnxt_en: Bug fixes Michael Chan
                   ` (3 preceding siblings ...)
  2018-11-15  8:25 ` [PATCH net 4/6] bnxt_en: Workaround occasional TX timeout on 57500 A0 Michael Chan
@ 2018-11-15  8:25 ` Michael Chan
  2018-11-15  8:25 ` [PATCH net 6/6] bnxt_en: Fix filling time in bnxt_fill_coredump_record() Michael Chan
  2018-11-15 17:40 ` [PATCH net 0/6] bnxt_en: Bug fixes David Miller
  6 siblings, 0 replies; 18+ messages in thread
From: Michael Chan @ 2018-11-15  8:25 UTC (permalink / raw)
  To: davem; +Cc: netdev

To keep track of the number of times the workaround code for 57500 A0
has been triggered.  This is a per NQ counter.

Signed-off-by: Michael Chan <michael.chan@broadcom.com>
---
 drivers/net/ethernet/broadcom/bnxt/bnxt.c         | 1 +
 drivers/net/ethernet/broadcom/bnxt/bnxt.h         | 1 +
 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 5 ++++-
 3 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 5d4147a..d4c3001 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -8909,6 +8909,7 @@ static void bnxt_chk_missed_irq(struct bnxt *bp)
 			bnxt_dbg_hwrm_ring_info_get(bp,
 				DBG_RING_INFO_GET_REQ_RING_TYPE_L2_CMPL,
 				fw_ring_id, &val[0], &val[1]);
+			cpr->missed_irqs++;
 		}
 	}
 }
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.h b/drivers/net/ethernet/broadcom/bnxt/bnxt.h
index 00bd17e..9e99d4a 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.h
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.h
@@ -818,6 +818,7 @@ struct bnxt_cp_ring_info {
 	dma_addr_t		hw_stats_map;
 	u32			hw_stats_ctx_id;
 	u64			rx_l4_csum_errors;
+	u64			missed_irqs;
 
 	struct bnxt_ring_struct	cp_ring_struct;
 
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
index 4807856..4b734cd 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
@@ -137,7 +137,7 @@ static int bnxt_set_coalesce(struct net_device *dev,
 	return rc;
 }
 
-#define BNXT_NUM_STATS	21
+#define BNXT_NUM_STATS	22
 
 #define BNXT_RX_STATS_ENTRY(counter)	\
 	{ BNXT_RX_STATS_OFFSET(counter), __stringify(counter) }
@@ -384,6 +384,7 @@ static void bnxt_get_ethtool_stats(struct net_device *dev,
 		for (k = 0; k < stat_fields; j++, k++)
 			buf[j] = le64_to_cpu(hw_stats[k]);
 		buf[j++] = cpr->rx_l4_csum_errors;
+		buf[j++] = cpr->missed_irqs;
 
 		bnxt_sw_func_stats[RX_TOTAL_DISCARDS].counter +=
 			le64_to_cpu(cpr->hw_stats->rx_discard_pkts);
@@ -468,6 +469,8 @@ static void bnxt_get_strings(struct net_device *dev, u32 stringset, u8 *buf)
 			buf += ETH_GSTRING_LEN;
 			sprintf(buf, "[%d]: rx_l4_csum_errors", i);
 			buf += ETH_GSTRING_LEN;
+			sprintf(buf, "[%d]: missed_irqs", i);
+			buf += ETH_GSTRING_LEN;
 		}
 		for (i = 0; i < BNXT_NUM_SW_FUNC_STATS; i++) {
 			strcpy(buf, bnxt_sw_func_stats[i].string);
-- 
2.5.1

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH net 6/6] bnxt_en: Fix filling time in bnxt_fill_coredump_record()
  2018-11-15  8:25 [PATCH net 0/6] bnxt_en: Bug fixes Michael Chan
                   ` (4 preceding siblings ...)
  2018-11-15  8:25 ` [PATCH net 5/6] bnxt_en: Add software "missed_irqs" counter Michael Chan
@ 2018-11-15  8:25 ` Michael Chan
  2018-11-15 17:40 ` [PATCH net 0/6] bnxt_en: Bug fixes David Miller
  6 siblings, 0 replies; 18+ messages in thread
From: Michael Chan @ 2018-11-15  8:25 UTC (permalink / raw)
  To: davem; +Cc: netdev, Vasundhara Volam

From: Vasundhara Volam <vasundhara-v.volam@broadcom.com>

Fix the year and month offset while storing it in
bnxt_fill_coredump_record().

Fixes: 6c5657d085ae ("bnxt_en: Add support for ethtool get dump.")
Signed-off-by: Vasundhara Volam <vasundhara-v.volam@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
---
 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
index 4b734cd..6cc69a5 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
@@ -2945,8 +2945,8 @@ bnxt_fill_coredump_record(struct bnxt *bp, struct bnxt_coredump_record *record,
 	record->asic_state = 0;
 	strlcpy(record->system_name, utsname()->nodename,
 		sizeof(record->system_name));
-	record->year = cpu_to_le16(tm.tm_year);
-	record->month = cpu_to_le16(tm.tm_mon);
+	record->year = cpu_to_le16(tm.tm_year + 1900);
+	record->month = cpu_to_le16(tm.tm_mon + 1);
 	record->day = cpu_to_le16(tm.tm_mday);
 	record->hour = cpu_to_le16(tm.tm_hour);
 	record->minute = cpu_to_le16(tm.tm_min);
-- 
2.5.1

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* Re: [PATCH net 0/6] bnxt_en: Bug fixes.
  2018-11-15  8:25 [PATCH net 0/6] bnxt_en: Bug fixes Michael Chan
                   ` (5 preceding siblings ...)
  2018-11-15  8:25 ` [PATCH net 6/6] bnxt_en: Fix filling time in bnxt_fill_coredump_record() Michael Chan
@ 2018-11-15 17:40 ` David Miller
  6 siblings, 0 replies; 18+ messages in thread
From: David Miller @ 2018-11-15 17:40 UTC (permalink / raw)
  To: michael.chan; +Cc: netdev

From: Michael Chan <michael.chan@broadcom.com>
Date: Thu, 15 Nov 2018 03:25:36 -0500

> Most of the bug fixes are related to the new 57500 chips, including some
> initialization and counter fixes, disabling RDMA support, and a
> workaround for occasional missing interrupts.  The last patch from
> Vasundhara fixes the year/month parameters for firmware coredump.

Series applied, thanks Michael.

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH net 0/6] bnxt_en: Bug fixes
  2023-06-07  7:54 Michael Chan
@ 2023-06-08  9:20 ` patchwork-bot+netdevbpf
  0 siblings, 0 replies; 18+ messages in thread
From: patchwork-bot+netdevbpf @ 2023-06-08  9:20 UTC (permalink / raw)
  To: Michael Chan; +Cc: davem, netdev, edumazet, kuba, pabeni, gospo

Hello:

This series was applied to netdev/net.git (main)
by Paolo Abeni <pabeni@redhat.com>:

On Wed,  7 Jun 2023 00:54:03 -0700 you wrote:
> This patchset has the following fixes for bnxt_en:
> 
> 1. Add missing VNIC ID parameter in the FW message when getting an
> updated RSS configuration from the FW.
> 
> 2. Fix a warning when doing ethtool reset on newer chips.
> 
> [...]

Here is the summary with links:
  - [net,1/6] bnxt_en: Fix bnxt_hwrm_update_rss_hash_cfg()
    https://git.kernel.org/netdev/net/c/095d5dc0c1d9
  - [net,2/6] bnxt_en: Don't issue AP reset during ethtool's reset operation
    https://git.kernel.org/netdev/net/c/1d997801c7cc
  - [net,3/6] bnxt_en: Query default VLAN before VNIC setup on a VF
    https://git.kernel.org/netdev/net/c/1a9e4f501bc6
  - [net,4/6] bnxt_en: Skip firmware fatal error recovery if chip is not accessible
    https://git.kernel.org/netdev/net/c/83474a9b252a
  - [net,5/6] bnxt_en: Prevent kernel panic when receiving unexpected PHC_UPDATE event
    https://git.kernel.org/netdev/net/c/319a7827df97
  - [net,6/6] bnxt_en: Implement .set_port / .unset_port UDP tunnel callbacks
    https://git.kernel.org/netdev/net/c/1eb4ef125913

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



^ permalink raw reply	[flat|nested] 18+ messages in thread

* [PATCH net 0/6] bnxt_en: Bug fixes
@ 2023-06-07  7:54 Michael Chan
  2023-06-08  9:20 ` patchwork-bot+netdevbpf
  0 siblings, 1 reply; 18+ messages in thread
From: Michael Chan @ 2023-06-07  7:54 UTC (permalink / raw)
  To: davem; +Cc: netdev, edumazet, kuba, pabeni, gospo

[-- Attachment #1: Type: text/plain, Size: 1184 bytes --]

This patchset has the following fixes for bnxt_en:

1. Add missing VNIC ID parameter in the FW message when getting an
updated RSS configuration from the FW.

2. Fix a warning when doing ethtool reset on newer chips.

3. Fix VLAN issue on a VF when a default VLAN is assigned.

4. Fix a problem during DPC (Downstream Port containment) scenario.

5. Fix a NULL pointer dereference when receiving a PTP event from FW.

6. Fix VXLAN/Geneve UDP port delete/add with newer FW.

Pavan Chebbi (2):
  bnxt_en: Fix bnxt_hwrm_update_rss_hash_cfg()
  bnxt_en: Prevent kernel panic when receiving unexpected PHC_UPDATE
    event

Somnath Kotur (2):
  bnxt_en: Query default VLAN before VNIC setup on a VF
  bnxt_en: Implement .set_port / .unset_port UDP tunnel callbacks

Sreekanth Reddy (1):
  bnxt_en: Don't issue AP reset during ethtool's reset operation

Vikas Gupta (1):
  bnxt_en: Skip firmware fatal error recovery if chip is not accessible

 drivers/net/ethernet/broadcom/bnxt/bnxt.c     | 40 ++++++++++++++-----
 .../net/ethernet/broadcom/bnxt/bnxt_ethtool.c |  2 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt_ptp.c |  1 +
 3 files changed, 33 insertions(+), 10 deletions(-)

-- 
2.30.1


[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 4209 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH net 0/6] bnxt_en: Bug fixes.
  2020-09-21  1:08 Michael Chan
@ 2020-09-21  2:05 ` David Miller
  0 siblings, 0 replies; 18+ messages in thread
From: David Miller @ 2020-09-21  2:05 UTC (permalink / raw)
  To: michael.chan; +Cc: netdev, kuba

From: Michael Chan <michael.chan@broadcom.com>
Date: Sun, 20 Sep 2020 21:08:53 -0400

> A series of small driver fixes covering VPD length logic,
> ethtool_get_regs on VF, hwmon temperature error handling,
> mutex locking for EEE and pause ethtool settings, and
> parameters for statistics related firmware calls.

Series applied.

> Please queue patches 1, 2, and 3 for -stable.  Thanks.

Queued up, thanks.

^ permalink raw reply	[flat|nested] 18+ messages in thread

* [PATCH net 0/6] bnxt_en: Bug fixes.
@ 2020-09-21  1:08 Michael Chan
  2020-09-21  2:05 ` David Miller
  0 siblings, 1 reply; 18+ messages in thread
From: Michael Chan @ 2020-09-21  1:08 UTC (permalink / raw)
  To: davem; +Cc: netdev, kuba

A series of small driver fixes covering VPD length logic,
ethtool_get_regs on VF, hwmon temperature error handling,
mutex locking for EEE and pause ethtool settings, and
parameters for statistics related firmware calls.

Please queue patches 1, 2, and 3 for -stable.  Thanks.

Edwin Peer (1):
  bnxt_en: return proper error codes in bnxt_show_temp

Michael Chan (3):
  bnxt_en: Protect bnxt_set_eee() and bnxt_set_pauseparam() with mutex.
  bnxt_en: Fix HWRM_FUNC_QSTATS_EXT firmware call.
  bnxt_en: Fix wrong flag value passed to HWRM_PORT_QSTATS_EXT fw call.

Vasundhara Volam (2):
  bnxt_en: Use memcpy to copy VPD field info.
  bnxt_en: Return -EOPNOTSUPP for ETHTOOL_GREGS on VFs.

 drivers/net/ethernet/broadcom/bnxt/bnxt.c         | 30 +++++++++++++-------
 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 34 +++++++++++++++--------
 2 files changed, 43 insertions(+), 21 deletions(-)

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH net 0/6] bnxt_en: Bug fixes.
  2019-08-16 22:33 Michael Chan
@ 2019-08-18 20:06 ` David Miller
  0 siblings, 0 replies; 18+ messages in thread
From: David Miller @ 2019-08-18 20:06 UTC (permalink / raw)
  To: michael.chan; +Cc: netdev

From: Michael Chan <michael.chan@broadcom.com>
Date: Fri, 16 Aug 2019 18:33:31 -0400

> 2 Bug fixes related to 57500 shutdown sequence and doorbell sequence,
> 2 TC Flower bug fixes related to the setting of the flow direction,
> 1 NVRAM update bug fix, and a minor fix to suppress an unnecessary
> error message.  Please queue for -stable as well.  Thanks.

Series applied and queued up for -stable, thanks.

^ permalink raw reply	[flat|nested] 18+ messages in thread

* [PATCH net 0/6] bnxt_en: Bug fixes.
@ 2019-08-16 22:33 Michael Chan
  2019-08-18 20:06 ` David Miller
  0 siblings, 1 reply; 18+ messages in thread
From: Michael Chan @ 2019-08-16 22:33 UTC (permalink / raw)
  To: davem; +Cc: netdev

2 Bug fixes related to 57500 shutdown sequence and doorbell sequence,
2 TC Flower bug fixes related to the setting of the flow direction,
1 NVRAM update bug fix, and a minor fix to suppress an unnecessary
error message.  Please queue for -stable as well.  Thanks.

Michael Chan (2):
  bnxt_en: Fix VNIC clearing logic for 57500 chips.
  bnxt_en: Improve RX doorbell sequence.

Somnath Kotur (1):
  bnxt_en: Fix to include flow direction in L2 key

Vasundhara Volam (2):
  bnxt_en: Fix handling FRAG_ERR when NVM_INSTALL_UPDATE cmd fails
  bnxt_en: Suppress HWRM errors for HWRM_NVM_GET_VARIABLE command

Venkat Duvvuru (1):
  bnxt_en: Use correct src_fid to determine direction of the flow

 drivers/net/ethernet/broadcom/bnxt/bnxt.c         | 36 ++++++++++++++++-------
 drivers/net/ethernet/broadcom/bnxt/bnxt_devlink.c |  9 ++++--
 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 12 ++++----
 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c      |  8 ++---
 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.h      |  2 +-
 5 files changed, 40 insertions(+), 27 deletions(-)

-- 
2.5.1


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH net 0/6] bnxt_en: Bug fixes.
  2018-07-09  6:24 Michael Chan
@ 2018-07-09 23:28 ` David Miller
  0 siblings, 0 replies; 18+ messages in thread
From: David Miller @ 2018-07-09 23:28 UTC (permalink / raw)
  To: michael.chan; +Cc: netdev

From: Michael Chan <michael.chan@broadcom.com>
Date: Mon,  9 Jul 2018 02:24:46 -0400

> These are bug fixes in error code paths, TC Flower VLAN TCI flow
> checking bug fix, proper filtering of Broadcast packets if IFF_BROADCAST
> is not set, and a bug fix in bnxt_get_max_rings() to return 0 ring
> parameters when the return value is -ENOMEM.

Series applied, thank you.

^ permalink raw reply	[flat|nested] 18+ messages in thread

* [PATCH net 0/6] bnxt_en: Bug fixes.
@ 2018-07-09  6:24 Michael Chan
  2018-07-09 23:28 ` David Miller
  0 siblings, 1 reply; 18+ messages in thread
From: Michael Chan @ 2018-07-09  6:24 UTC (permalink / raw)
  To: davem; +Cc: netdev

These are bug fixes in error code paths, TC Flower VLAN TCI flow
checking bug fix, proper filtering of Broadcast packets if IFF_BROADCAST
is not set, and a bug fix in bnxt_get_max_rings() to return 0 ring
parameters when the return value is -ENOMEM.

Michael Chan (4):
  bnxt_en: Fix inconsistent BNXT_FLAG_AGG_RINGS logic.
  bnxt_en: Always set output parameters in bnxt_get_max_rings().
  bnxt_en: Support clearing of the IFF_BROADCAST flag.
  bnxt_en: Do not modify max IRQ count after RDMA driver requests/frees
    IRQs.

Venkat Duvvuru (1):
  bnxt_en: Fix the vlan_tci exact match check.

Vikas Gupta (1):
  bnxt_en: Fix for system hang if request_irq fails

 drivers/net/ethernet/broadcom/bnxt/bnxt.c     | 24 ++++++++++++++-------
 drivers/net/ethernet/broadcom/bnxt/bnxt.h     |  1 -
 drivers/net/ethernet/broadcom/bnxt/bnxt_tc.c  | 30 ++++++++++++++++++++++++---
 drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c |  2 --
 4 files changed, 44 insertions(+), 13 deletions(-)

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH net 0/6] bnxt_en: bug fixes.
  2017-10-14  1:09 [PATCH net 0/6] bnxt_en: bug fixes Michael Chan
@ 2017-10-15  1:52 ` David Miller
  0 siblings, 0 replies; 18+ messages in thread
From: David Miller @ 2017-10-15  1:52 UTC (permalink / raw)
  To: michael.chan; +Cc: netdev

From: Michael Chan <michael.chan@broadcom.com>
Date: Fri, 13 Oct 2017 21:09:28 -0400

> Various bug fixes for the VF/PF link change logic, VF resource checking,
> potential firmware response corruption on NVRAM and DCB parameters,
> and reading the wrong register for PCIe link speed on the VF.

Series applied, thanks.

^ permalink raw reply	[flat|nested] 18+ messages in thread

* [PATCH net 0/6] bnxt_en: bug fixes.
@ 2017-10-14  1:09 Michael Chan
  2017-10-15  1:52 ` David Miller
  0 siblings, 1 reply; 18+ messages in thread
From: Michael Chan @ 2017-10-14  1:09 UTC (permalink / raw)
  To: davem; +Cc: netdev

Various bug fixes for the VF/PF link change logic, VF resource checking,
potential firmware response corruption on NVRAM and DCB parameters,
and reading the wrong register for PCIe link speed on the VF.

Michael Chan (4):
  bnxt_en: Improve VF/PF link change logic.
  bnxt_en: Don't use rtnl lock to protect link change logic in
    workqueue.
  bnxt_en: Fix VF resource checking.
  bnxt_en: Fix possible corrupted NVRAM parameters from firmware
    response.

Sankar Patchineelam (1):
  bnxt_en: Fix possible corruption in DCB parameters from firmware.

Vasundhara Volam (1):
  bnxt_en: Fix VF PCIe link speed and width logic.

 drivers/net/ethernet/broadcom/bnxt/bnxt.c         | 99 +++++++++++++++++------
 drivers/net/ethernet/broadcom/bnxt/bnxt.h         |  5 ++
 drivers/net/ethernet/broadcom/bnxt/bnxt_dcb.c     | 23 ++++--
 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c |  8 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c   | 11 ++-
 5 files changed, 112 insertions(+), 34 deletions(-)

-- 
1.8.3.1

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2023-06-08  9:20 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-15  8:25 [PATCH net 0/6] bnxt_en: Bug fixes Michael Chan
2018-11-15  8:25 ` [PATCH net 1/6] bnxt_en: Fix RSS context allocation Michael Chan
2018-11-15  8:25 ` [PATCH net 2/6] bnxt_en: Fix rx_l4_csum_errors counter on 57500 devices Michael Chan
2018-11-15  8:25 ` [PATCH net 3/6] bnxt_en: Disable RDMA support on the 57500 chips Michael Chan
2018-11-15  8:25 ` [PATCH net 4/6] bnxt_en: Workaround occasional TX timeout on 57500 A0 Michael Chan
2018-11-15  8:25 ` [PATCH net 5/6] bnxt_en: Add software "missed_irqs" counter Michael Chan
2018-11-15  8:25 ` [PATCH net 6/6] bnxt_en: Fix filling time in bnxt_fill_coredump_record() Michael Chan
2018-11-15 17:40 ` [PATCH net 0/6] bnxt_en: Bug fixes David Miller
  -- strict thread matches above, loose matches on Subject: below --
2023-06-07  7:54 Michael Chan
2023-06-08  9:20 ` patchwork-bot+netdevbpf
2020-09-21  1:08 Michael Chan
2020-09-21  2:05 ` David Miller
2019-08-16 22:33 Michael Chan
2019-08-18 20:06 ` David Miller
2018-07-09  6:24 Michael Chan
2018-07-09 23:28 ` David Miller
2017-10-14  1:09 [PATCH net 0/6] bnxt_en: bug fixes Michael Chan
2017-10-15  1:52 ` David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).