All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net 0/4] bnxt_en: Bug fixes.
@ 2019-05-22 23:12 Michael Chan
  2019-05-22 23:12 ` [PATCH net 1/4] bnxt_en: Fix aggregation buffer leak under OOM condition Michael Chan
                   ` (4 more replies)
  0 siblings, 5 replies; 22+ messages in thread
From: Michael Chan @ 2019-05-22 23:12 UTC (permalink / raw)
  To: davem; +Cc: netdev

There are 4 driver fixes in this series:

1. Fix RX buffer leak during OOM condition.
2. Call pci_disable_msix() under correct conditions to prevent hitting BUG.
3. Reduce unneeded mmeory allocation in kdump kernel to prevent OOM.
4. Don't read device serial number on VFs because it is not supported.

Please queue #1, #2, #3 for -stable as well.  Thanks.

Michael Chan (3):
  bnxt_en: Fix aggregation buffer leak under OOM condition.
  bnxt_en: Fix possible BUG() condition when calling pci_disable_msix().
  bnxt_en: Reduce memory usage when running in kdump kernel.

Vasundhara Volam (1):
  bnxt_en: Device serial number is supported only for PFs.

 drivers/net/ethernet/broadcom/bnxt/bnxt.c         | 30 +++++++++++++----------
 drivers/net/ethernet/broadcom/bnxt/bnxt.h         |  6 +++--
 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c |  2 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c     |  2 +-
 4 files changed, 23 insertions(+), 17 deletions(-)

-- 
2.5.1


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

* [PATCH net 1/4] bnxt_en: Fix aggregation buffer leak under OOM condition.
  2019-05-22 23:12 [PATCH net 0/4] bnxt_en: Bug fixes Michael Chan
@ 2019-05-22 23:12 ` Michael Chan
  2019-05-22 23:12 ` [PATCH net 2/4] bnxt_en: Fix possible BUG() condition when calling pci_disable_msix() Michael Chan
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 22+ messages in thread
From: Michael Chan @ 2019-05-22 23:12 UTC (permalink / raw)
  To: davem; +Cc: netdev

For every RX packet, the driver replenishes all buffers used for that
packet and puts them back into the RX ring and RX aggregation ring.
In one code path where the RX packet has one RX buffer and one or more
aggregation buffers, we missed recycling the aggregation buffer(s) if
we are unable to allocate a new SKB buffer.  This leads to the
aggregation ring slowly running out of buffers over time.  Fix it
by properly recycling the aggregation buffers.

Fixes: c0c050c58d84 ("bnxt_en: New Broadcom ethernet driver.")
Reported-by: Rakesh Hemnani <rhemnani@fb.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
---
 drivers/net/ethernet/broadcom/bnxt/bnxt.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 8314c00..21f6826 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -1642,6 +1642,8 @@ static int bnxt_rx_pkt(struct bnxt *bp, struct bnxt_cp_ring_info *cpr,
 		skb = bnxt_copy_skb(bnapi, data_ptr, len, dma_addr);
 		bnxt_reuse_rx_data(rxr, cons, data);
 		if (!skb) {
+			if (agg_bufs)
+				bnxt_reuse_rx_agg_bufs(cpr, cp_cons, agg_bufs);
 			rc = -ENOMEM;
 			goto next_rx;
 		}
-- 
2.5.1


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

* [PATCH net 2/4] bnxt_en: Fix possible BUG() condition when calling pci_disable_msix().
  2019-05-22 23:12 [PATCH net 0/4] bnxt_en: Bug fixes Michael Chan
  2019-05-22 23:12 ` [PATCH net 1/4] bnxt_en: Fix aggregation buffer leak under OOM condition Michael Chan
@ 2019-05-22 23:12 ` Michael Chan
  2019-05-22 23:12 ` [PATCH net 3/4] bnxt_en: Reduce memory usage when running in kdump kernel Michael Chan
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 22+ messages in thread
From: Michael Chan @ 2019-05-22 23:12 UTC (permalink / raw)
  To: davem; +Cc: netdev

When making configuration changes, the driver calls bnxt_close_nic()
and then bnxt_open_nic() for the changes to take effect.  A parameter
irq_re_init is passed to the call sequence to indicate if IRQ
should be re-initialized.  This irq_re_init parameter needs to
be included in the bnxt_reserve_rings() call.  bnxt_reserve_rings()
can only call pci_disable_msix() if the irq_re_init parameter is
true, otherwise it may hit BUG() because some IRQs may not have been
freed yet.

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         | 13 +++++++------
 drivers/net/ethernet/broadcom/bnxt/bnxt.h         |  2 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c |  2 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c     |  2 +-
 4 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 21f6826..cfcc33c 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -7618,22 +7618,23 @@ static void bnxt_clear_int_mode(struct bnxt *bp)
 	bp->flags &= ~BNXT_FLAG_USING_MSIX;
 }
 
-int bnxt_reserve_rings(struct bnxt *bp)
+int bnxt_reserve_rings(struct bnxt *bp, bool irq_re_init)
 {
 	int tcs = netdev_get_num_tc(bp->dev);
-	bool reinit_irq = false;
+	bool irq_cleared = false;
 	int rc;
 
 	if (!bnxt_need_reserve_rings(bp))
 		return 0;
 
-	if (BNXT_NEW_RM(bp) && (bnxt_get_num_msix(bp) != bp->total_irqs)) {
+	if (irq_re_init && BNXT_NEW_RM(bp) &&
+	    bnxt_get_num_msix(bp) != bp->total_irqs) {
 		bnxt_ulp_irq_stop(bp);
 		bnxt_clear_int_mode(bp);
-		reinit_irq = true;
+		irq_cleared = true;
 	}
 	rc = __bnxt_reserve_rings(bp);
-	if (reinit_irq) {
+	if (irq_cleared) {
 		if (!rc)
 			rc = bnxt_init_int_mode(bp);
 		bnxt_ulp_irq_restart(bp, rc);
@@ -8532,7 +8533,7 @@ static int __bnxt_open_nic(struct bnxt *bp, bool irq_re_init, bool link_re_init)
 			return rc;
 		}
 	}
-	rc = bnxt_reserve_rings(bp);
+	rc = bnxt_reserve_rings(bp, irq_re_init);
 	if (rc)
 		return rc;
 	if ((bp->flags & BNXT_FLAG_RFS) &&
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.h b/drivers/net/ethernet/broadcom/bnxt/bnxt.h
index eca36dd..acc73f3 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.h
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.h
@@ -1790,7 +1790,7 @@ unsigned int bnxt_get_avail_stat_ctxs_for_en(struct bnxt *bp);
 unsigned int bnxt_get_max_func_cp_rings(struct bnxt *bp);
 unsigned int bnxt_get_avail_cp_rings_for_en(struct bnxt *bp);
 int bnxt_get_avail_msix(struct bnxt *bp, int num);
-int bnxt_reserve_rings(struct bnxt *bp);
+int bnxt_reserve_rings(struct bnxt *bp, bool irq_re_init);
 void bnxt_tx_disable(struct bnxt *bp);
 void bnxt_tx_enable(struct bnxt *bp);
 int bnxt_hwrm_set_pause(struct bnxt *);
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
index b126382..a6c7baf 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c
@@ -831,7 +831,7 @@ static int bnxt_set_channels(struct net_device *dev,
 			 */
 		}
 	} else {
-		rc = bnxt_reserve_rings(bp);
+		rc = bnxt_reserve_rings(bp, true);
 	}
 
 	return rc;
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c b/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c
index cf47587..bfa342a 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c
@@ -147,7 +147,7 @@ static int bnxt_req_msix_vecs(struct bnxt_en_dev *edev, int ulp_id,
 			bnxt_close_nic(bp, true, false);
 			rc = bnxt_open_nic(bp, true, false);
 		} else {
-			rc = bnxt_reserve_rings(bp);
+			rc = bnxt_reserve_rings(bp, true);
 		}
 	}
 	if (rc) {
-- 
2.5.1


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

* [PATCH net 3/4] bnxt_en: Reduce memory usage when running in kdump kernel.
  2019-05-22 23:12 [PATCH net 0/4] bnxt_en: Bug fixes Michael Chan
  2019-05-22 23:12 ` [PATCH net 1/4] bnxt_en: Fix aggregation buffer leak under OOM condition Michael Chan
  2019-05-22 23:12 ` [PATCH net 2/4] bnxt_en: Fix possible BUG() condition when calling pci_disable_msix() Michael Chan
@ 2019-05-22 23:12 ` Michael Chan
  2019-05-22 23:12 ` [PATCH net 4/4] bnxt_en: Device serial number is supported only for PFs Michael Chan
  2019-05-23  1:03 ` [PATCH net 0/4] bnxt_en: Bug fixes David Miller
  4 siblings, 0 replies; 22+ messages in thread
From: Michael Chan @ 2019-05-22 23:12 UTC (permalink / raw)
  To: davem; +Cc: netdev

Skip RDMA context memory allocations, reduce to 1 ring, and disable
TPA when running in the kdump kernel.  Without this patch, the driver
fails to initialize with memory allocation errors when running in a
typical kdump kernel.

Fixes: cf6daed098d1 ("bnxt_en: Increase context memory allocations on 57500 chips for RDMA.")
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
---
 drivers/net/ethernet/broadcom/bnxt/bnxt.c | 4 ++--
 drivers/net/ethernet/broadcom/bnxt/bnxt.h | 4 +++-
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index cfcc33c..79812da 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -6379,7 +6379,7 @@ static int bnxt_alloc_ctx_mem(struct bnxt *bp)
 	if (!ctx || (ctx->flags & BNXT_CTX_FLAG_INITED))
 		return 0;
 
-	if (bp->flags & BNXT_FLAG_ROCE_CAP) {
+	if ((bp->flags & BNXT_FLAG_ROCE_CAP) && !is_kdump_kernel()) {
 		pg_lvl = 2;
 		extra_qps = 65536;
 		extra_srqs = 8192;
@@ -10437,7 +10437,7 @@ static int bnxt_set_dflt_rings(struct bnxt *bp, bool sh)
 
 	if (sh)
 		bp->flags |= BNXT_FLAG_SHARED_RINGS;
-	dflt_rings = netif_get_num_default_rss_queues();
+	dflt_rings = is_kdump_kernel() ? 1 : netif_get_num_default_rss_queues();
 	/* Reduce default rings on multi-port cards so that total default
 	 * rings do not exceed CPU count.
 	 */
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.h b/drivers/net/ethernet/broadcom/bnxt/bnxt.h
index acc73f3..be438d8 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.h
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.h
@@ -20,6 +20,7 @@
 
 #include <linux/interrupt.h>
 #include <linux/rhashtable.h>
+#include <linux/crash_dump.h>
 #include <net/devlink.h>
 #include <net/dst_metadata.h>
 #include <net/xdp.h>
@@ -1369,7 +1370,8 @@ struct bnxt {
 #define BNXT_CHIP_TYPE_NITRO_A0(bp) ((bp)->flags & BNXT_FLAG_CHIP_NITRO_A0)
 #define BNXT_RX_PAGE_MODE(bp)	((bp)->flags & BNXT_FLAG_RX_PAGE_MODE)
 #define BNXT_SUPPORTS_TPA(bp)	(!BNXT_CHIP_TYPE_NITRO_A0(bp) &&	\
-				 !(bp->flags & BNXT_FLAG_CHIP_P5))
+				 !(bp->flags & BNXT_FLAG_CHIP_P5) &&	\
+				 !is_kdump_kernel())
 
 /* Chip class phase 5 */
 #define BNXT_CHIP_P5(bp)			\
-- 
2.5.1


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

* [PATCH net 4/4] bnxt_en: Device serial number is supported only for PFs.
  2019-05-22 23:12 [PATCH net 0/4] bnxt_en: Bug fixes Michael Chan
                   ` (2 preceding siblings ...)
  2019-05-22 23:12 ` [PATCH net 3/4] bnxt_en: Reduce memory usage when running in kdump kernel Michael Chan
@ 2019-05-22 23:12 ` Michael Chan
  2019-05-23  1:03 ` [PATCH net 0/4] bnxt_en: Bug fixes David Miller
  4 siblings, 0 replies; 22+ messages in thread
From: Michael Chan @ 2019-05-22 23:12 UTC (permalink / raw)
  To: davem; +Cc: netdev

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

Don't read DSN on VFs that do not have the PCI capability.

Fixes: 03213a996531 ("bnxt: move bp->switch_id initialization to PF probe")
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.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
index 79812da..f758b2e 100644
--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -10725,11 +10725,12 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
 		goto init_err_pci_clean;
 	}
 
-	/* Read the adapter's DSN to use as the eswitch switch_id */
-	rc = bnxt_pcie_dsn_get(bp, bp->switch_id);
-	if (rc)
-		goto init_err_pci_clean;
-
+	if (BNXT_PF(bp)) {
+		/* Read the adapter's DSN to use as the eswitch switch_id */
+		rc = bnxt_pcie_dsn_get(bp, bp->switch_id);
+		if (rc)
+			goto init_err_pci_clean;
+	}
 	bnxt_hwrm_func_qcfg(bp);
 	bnxt_hwrm_vnic_qcaps(bp);
 	bnxt_hwrm_port_led_qcaps(bp);
-- 
2.5.1


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

* Re: [PATCH net 0/4] bnxt_en: Bug fixes.
  2019-05-22 23:12 [PATCH net 0/4] bnxt_en: Bug fixes Michael Chan
                   ` (3 preceding siblings ...)
  2019-05-22 23:12 ` [PATCH net 4/4] bnxt_en: Device serial number is supported only for PFs Michael Chan
@ 2019-05-23  1:03 ` David Miller
  4 siblings, 0 replies; 22+ messages in thread
From: David Miller @ 2019-05-23  1:03 UTC (permalink / raw)
  To: michael.chan; +Cc: netdev

From: Michael Chan <michael.chan@broadcom.com>
Date: Wed, 22 May 2019 19:12:53 -0400

> There are 4 driver fixes in this series:
> 
> 1. Fix RX buffer leak during OOM condition.
> 2. Call pci_disable_msix() under correct conditions to prevent hitting BUG.
> 3. Reduce unneeded mmeory allocation in kdump kernel to prevent OOM.
> 4. Don't read device serial number on VFs because it is not supported.

Series applied.

> Please queue #1, #2, #3 for -stable as well.  Thanks.

Queued up, thank you.

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

* Re: [PATCH net 0/4] bnxt_en: Bug fixes
  2022-11-03 23:33 Michael Chan
@ 2022-11-05  2:40 ` patchwork-bot+netdevbpf
  0 siblings, 0 replies; 22+ messages in thread
From: patchwork-bot+netdevbpf @ 2022-11-05  2:40 UTC (permalink / raw)
  To: Michael Chan; +Cc: davem, netdev, kuba, edumazet, pabeni, gospo

Hello:

This series was applied to netdev/net.git (master)
by Jakub Kicinski <kuba@kernel.org>:

On Thu,  3 Nov 2022 19:33:23 -0400 you wrote:
> This bug fix series includes fixes for PCIE AER, a crash that may occur
> when doing ethtool -C in the middle of error recovery, and aRFS.
> 
> Alex Barba (1):
>   bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer
> 
> Michael Chan (1):
>   bnxt_en: Fix possible crash in bnxt_hwrm_set_coal()
> 
> [...]

Here is the summary with links:
  - [net,1/4] bnxt_en: refactor bnxt_cancel_reservations()
    https://git.kernel.org/netdev/net/c/b4c66425771d
  - [net,2/4] bnxt_en: fix the handling of PCIE-AER
    https://git.kernel.org/netdev/net/c/0cf736a18a1e
  - [net,3/4] bnxt_en: Fix possible crash in bnxt_hwrm_set_coal()
    https://git.kernel.org/netdev/net/c/6d81ea3765df
  - [net,4/4] bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer
    https://git.kernel.org/netdev/net/c/02597d39145b

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] 22+ messages in thread

* [PATCH net 0/4] bnxt_en: Bug fixes
@ 2022-11-03 23:33 Michael Chan
  2022-11-05  2:40 ` patchwork-bot+netdevbpf
  0 siblings, 1 reply; 22+ messages in thread
From: Michael Chan @ 2022-11-03 23:33 UTC (permalink / raw)
  To: davem; +Cc: netdev, kuba, edumazet, pabeni, gospo

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

This bug fix series includes fixes for PCIE AER, a crash that may occur
when doing ethtool -C in the middle of error recovery, and aRFS.

Alex Barba (1):
  bnxt_en: fix potentially incorrect return value for ndo_rx_flow_steer

Michael Chan (1):
  bnxt_en: Fix possible crash in bnxt_hwrm_set_coal()

Vikas Gupta (2):
  bnxt_en: refactor bnxt_cancel_reservations()
  bnxt_en: fix the handling of PCIE-AER

 drivers/net/ethernet/broadcom/bnxt/bnxt.c     | 54 +++++++++++++++----
 drivers/net/ethernet/broadcom/bnxt/bnxt.h     |  1 +
 .../net/ethernet/broadcom/bnxt/bnxt_ethtool.c |  2 +-
 .../net/ethernet/broadcom/bnxt/bnxt_hwrm.c    |  3 +-
 4 files changed, 49 insertions(+), 11 deletions(-)

-- 
2.18.1


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

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

* Re: [PATCH net 0/4] bnxt_en: Bug fixes
  2022-08-22 15:06 Michael Chan
  2022-08-23  3:04 ` Jakub Kicinski
@ 2022-08-23 22:40 ` patchwork-bot+netdevbpf
  1 sibling, 0 replies; 22+ messages in thread
From: patchwork-bot+netdevbpf @ 2022-08-23 22:40 UTC (permalink / raw)
  To: Michael Chan; +Cc: davem, netdev, kuba, edumazet, pabeni, gospo

Hello:

This series was applied to netdev/net.git (master)
by Jakub Kicinski <kuba@kernel.org>:

On Mon, 22 Aug 2022 11:06:50 -0400 you wrote:
> This series includes 2 fixes for regressions introduced by the XDP
> multi-buffer feature, 1 devlink reload bug fix, and 1 SRIOV resource
> accounting bug fix.
> 
> Pavan Chebbi (1):
>   bnxt_en: Use PAGE_SIZE to init buffer when multi buffer XDP is not in
>     use
> 
> [...]

Here is the summary with links:
  - [net,1/4] bnxt_en: Use PAGE_SIZE to init buffer when multi buffer XDP is not in use
    https://git.kernel.org/netdev/net/c/7dd3de7cb1d6
  - [net,2/4] bnxt_en: set missing reload flag in devlink features
    https://git.kernel.org/netdev/net/c/574b2bb9692f
  - [net,3/4] bnxt_en: fix NQ resource accounting during vf creation on 57500 chips
    https://git.kernel.org/netdev/net/c/09a89cc59ad6
  - [net,4/4] bnxt_en: fix LRO/GRO_HW features in ndo_fix_features callback
    https://git.kernel.org/netdev/net/c/366c30474172

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] 22+ messages in thread

* Re: [PATCH net 0/4] bnxt_en: Bug fixes
  2022-08-22 15:06 Michael Chan
@ 2022-08-23  3:04 ` Jakub Kicinski
  2022-08-23 22:40 ` patchwork-bot+netdevbpf
  1 sibling, 0 replies; 22+ messages in thread
From: Jakub Kicinski @ 2022-08-23  3:04 UTC (permalink / raw)
  To: Michael Chan; +Cc: davem, netdev, edumazet, pabeni, gospo

On Mon, 22 Aug 2022 11:06:50 -0400 Michael Chan wrote:
> This series includes 2 fixes for regressions introduced by the XDP
> multi-buffer feature, 1 devlink reload bug fix, and 1 SRIOV resource
> accounting bug fix.

Acked-by: Jakub Kicinski <kuba@kernel.org>

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

* [PATCH net 0/4] bnxt_en: Bug fixes
@ 2022-08-22 15:06 Michael Chan
  2022-08-23  3:04 ` Jakub Kicinski
  2022-08-23 22:40 ` patchwork-bot+netdevbpf
  0 siblings, 2 replies; 22+ messages in thread
From: Michael Chan @ 2022-08-22 15:06 UTC (permalink / raw)
  To: davem; +Cc: netdev, kuba, edumazet, pabeni, gospo

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

This series includes 2 fixes for regressions introduced by the XDP
multi-buffer feature, 1 devlink reload bug fix, and 1 SRIOV resource
accounting bug fix.

Pavan Chebbi (1):
  bnxt_en: Use PAGE_SIZE to init buffer when multi buffer XDP is not in
    use

Vikas Gupta (3):
  bnxt_en: set missing reload flag in devlink features
  bnxt_en: fix NQ resource accounting during vf creation on 57500 chips
  bnxt_en: fix LRO/GRO_HW features in ndo_fix_features callback

 drivers/net/ethernet/broadcom/bnxt/bnxt.c         |  5 +----
 drivers/net/ethernet/broadcom/bnxt/bnxt.h         |  1 +
 drivers/net/ethernet/broadcom/bnxt/bnxt_devlink.c |  1 +
 drivers/net/ethernet/broadcom/bnxt/bnxt_sriov.c   |  2 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c     | 10 ++++++++--
 5 files changed, 12 insertions(+), 7 deletions(-)

-- 
2.18.1


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

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

* Re: [PATCH net 0/4] bnxt_en: Bug fixes.
  2020-11-16  0:27 Michael Chan
@ 2020-11-17  1:44 ` Jakub Kicinski
  0 siblings, 0 replies; 22+ messages in thread
From: Jakub Kicinski @ 2020-11-17  1:44 UTC (permalink / raw)
  To: Michael Chan; +Cc: netdev, gospo

On Sun, 15 Nov 2020 19:27:48 -0500 Michael Chan wrote:
> This first patch fixes a module eeprom A2h addressing issue.  The next
> 2 patches fix counter related issues.  The last one skips an
> unsupported firmware call on the VF to avoid the error log.
> 
> Please queue the 1st 3 patches for -stable.  Thanks.

Applied, thanks!

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

* [PATCH net 0/4] bnxt_en: Bug fixes.
@ 2020-11-16  0:27 Michael Chan
  2020-11-17  1:44 ` Jakub Kicinski
  0 siblings, 1 reply; 22+ messages in thread
From: Michael Chan @ 2020-11-16  0:27 UTC (permalink / raw)
  To: kuba; +Cc: netdev, gospo

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

This first patch fixes a module eeprom A2h addressing issue.  The next
2 patches fix counter related issues.  The last one skips an
unsupported firmware call on the VF to avoid the error log.

Please queue the 1st 3 patches for -stable.  Thanks.

Edwin Peer (1):
  bnxt_en: read EEPROM A2h address using page 0

Michael Chan (2):
  bnxt_en: Free port stats during firmware reset.
  bnxt_en: Fix counter overflow logic.

Vasundhara Volam (1):
  bnxt_en: Avoid unnecessary NVM_GET_DEV_INFO cmd error log on VFs.

 drivers/net/ethernet/broadcom/bnxt/bnxt.c         | 4 +++-
 drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c | 5 ++++-
 2 files changed, 7 insertions(+), 2 deletions(-)

-- 
2.18.1


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

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

* Re: [PATCH net 0/4] bnxt_en: Bug fixes.
  2020-06-23 23:01 Michael Chan
  2020-06-23 23:45 ` Jakub Kicinski
@ 2020-06-24  3:15 ` David Miller
  1 sibling, 0 replies; 22+ messages in thread
From: David Miller @ 2020-06-24  3:15 UTC (permalink / raw)
  To: michael.chan; +Cc: netdev, kuba

From: Michael Chan <michael.chan@broadcom.com>
Date: Tue, 23 Jun 2020 19:01:34 -0400

> The first patch stores the firmware version code which is needed by the
> next 2 patches to determine some worarounds based on the firmware version.
> The workarounds are to disable legacy TX push mode and to clear the
> hardware statistics during ifdown.  The last patch checks that it is
> a PF before reading the VPD.

Series applied.

> Please also queue these for -stable.  Thanks.

Queued up, thanks.

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

* Re: [PATCH net 0/4] bnxt_en: Bug fixes.
  2020-06-23 23:01 Michael Chan
@ 2020-06-23 23:45 ` Jakub Kicinski
  2020-06-24  3:15 ` David Miller
  1 sibling, 0 replies; 22+ messages in thread
From: Jakub Kicinski @ 2020-06-23 23:45 UTC (permalink / raw)
  To: Michael Chan; +Cc: davem, netdev

On Tue, 23 Jun 2020 19:01:34 -0400 Michael Chan wrote:
> The first patch stores the firmware version code which is needed by the
> next 2 patches to determine some worarounds based on the firmware version.
> The workarounds are to disable legacy TX push mode and to clear the
> hardware statistics during ifdown.  The last patch checks that it is
> a PF before reading the VPD.
> 
> Please also queue these for -stable.  Thanks.

FWIW looks good to me:

Reviewed-by: Jakub Kicinski <kuba@kernel.org>

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

* [PATCH net 0/4] bnxt_en: Bug fixes.
@ 2020-06-23 23:01 Michael Chan
  2020-06-23 23:45 ` Jakub Kicinski
  2020-06-24  3:15 ` David Miller
  0 siblings, 2 replies; 22+ messages in thread
From: Michael Chan @ 2020-06-23 23:01 UTC (permalink / raw)
  To: davem; +Cc: netdev, kuba

The first patch stores the firmware version code which is needed by the
next 2 patches to determine some worarounds based on the firmware version.
The workarounds are to disable legacy TX push mode and to clear the
hardware statistics during ifdown.  The last patch checks that it is
a PF before reading the VPD.

Please also queue these for -stable.  Thanks.

Michael Chan (3):
  bnxt_en: Store the running firmware version code.
  bnxt_en: Do not enable legacy TX push on older firmware.
  bnxt_en: Fix statistics counters issue during ifdown with older
    firmware.

Vasundhara Volam (1):
  bnxt_en: Read VPD info only for PFs

 drivers/net/ethernet/broadcom/bnxt/bnxt.c | 36 +++++++++++++++++++++++++------
 drivers/net/ethernet/broadcom/bnxt/bnxt.h |  5 +++++
 2 files changed, 34 insertions(+), 7 deletions(-)

-- 
1.8.3.1


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

* Re: [PATCH net 0/4] bnxt_en: Bug fixes.
  2020-06-14 23:57 Michael Chan
@ 2020-06-15 20:29 ` David Miller
  0 siblings, 0 replies; 22+ messages in thread
From: David Miller @ 2020-06-15 20:29 UTC (permalink / raw)
  To: michael.chan; +Cc: netdev, kuba

From: Michael Chan <michael.chan@broadcom.com>
Date: Sun, 14 Jun 2020 19:57:06 -0400

> Four fixes related to the bnxt_en driver's resume path, AER reset, and
> the timer function.

Series applied, thanks Michael.

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

* [PATCH net 0/4] bnxt_en: Bug fixes.
@ 2020-06-14 23:57 Michael Chan
  2020-06-15 20:29 ` David Miller
  0 siblings, 1 reply; 22+ messages in thread
From: Michael Chan @ 2020-06-14 23:57 UTC (permalink / raw)
  To: davem; +Cc: netdev, kuba

Four fixes related to the bnxt_en driver's resume path, AER reset, and
the timer function.

Michael Chan (3):
  bnxt_en: Simplify bnxt_resume().
  bnxt_en: Re-enable SRIOV during resume.
  bnxt_en: Fix AER reset logic on 57500 chips.

Vasundhara Volam (1):
  bnxt_en: Return from timer if interface is not in open state.

 drivers/net/ethernet/broadcom/bnxt/bnxt.c | 35 +++++++++++++++----------------
 1 file changed, 17 insertions(+), 18 deletions(-)

-- 
1.8.3.1


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

* Re: [PATCH net 0/4] bnxt_en: Bug fixes.
  2020-02-02  7:41 Michael Chan
@ 2020-02-03 23:22 ` Jakub Kicinski
  0 siblings, 0 replies; 22+ messages in thread
From: Jakub Kicinski @ 2020-02-03 23:22 UTC (permalink / raw)
  To: Michael Chan; +Cc: davem, netdev

On Sun,  2 Feb 2020 02:41:34 -0500, Michael Chan wrote:
> 3 patches that fix some issues in the firmware reset logic, starting
> with a small patch to refactor the code that re-enables SRIOV.  The
> last patch fixes a TC queue mapping issue.
> 
> Michael Chan (3):
>   bnxt_en: Refactor logic to re-enable SRIOV after firmware reset
>     detected.
>   bnxt_en: Fix RDMA driver failure with SRIOV after firmware reset.
>   bnxt_en: Fix TC queue mapping.
> 
> Vasundhara Volam (1):
>   bnxt_en: Fix logic that disables Bus Master during firmware reset.

Applied and added to stable queued, thank you!

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

* [PATCH net 0/4] bnxt_en: Bug fixes.
@ 2020-02-02  7:41 Michael Chan
  2020-02-03 23:22 ` Jakub Kicinski
  0 siblings, 1 reply; 22+ messages in thread
From: Michael Chan @ 2020-02-02  7:41 UTC (permalink / raw)
  To: davem; +Cc: netdev

3 patches that fix some issues in the firmware reset logic, starting
with a small patch to refactor the code that re-enables SRIOV.  The
last patch fixes a TC queue mapping issue.

Michael Chan (3):
  bnxt_en: Refactor logic to re-enable SRIOV after firmware reset
    detected.
  bnxt_en: Fix RDMA driver failure with SRIOV after firmware reset.
  bnxt_en: Fix TC queue mapping.

Vasundhara Volam (1):
  bnxt_en: Fix logic that disables Bus Master during firmware reset.

 drivers/net/ethernet/broadcom/bnxt/bnxt.c | 37 ++++++++++++++++++++-----------
 1 file changed, 24 insertions(+), 13 deletions(-)

-- 
2.5.1


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

* Re: [PATCH net 0/4] bnxt_en: Bug fixes.
  2018-12-09 12:00 Michael Chan
@ 2018-12-09 19:47 ` David Miller
  0 siblings, 0 replies; 22+ messages in thread
From: David Miller @ 2018-12-09 19:47 UTC (permalink / raw)
  To: michael.chan; +Cc: netdev

From: Michael Chan <michael.chan@broadcom.com>
Date: Sun,  9 Dec 2018 07:00:58 -0500

> The first patch fixes a regression on CoS queue setup, introduced
> recently by the 57500 new chip support patches.  The rest are
> fixes related to ring and resource accounting on the new 57500 chips.

Series applied.

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

* [PATCH net 0/4] bnxt_en: Bug fixes.
@ 2018-12-09 12:00 Michael Chan
  2018-12-09 19:47 ` David Miller
  0 siblings, 1 reply; 22+ messages in thread
From: Michael Chan @ 2018-12-09 12:00 UTC (permalink / raw)
  To: davem; +Cc: netdev

The first patch fixes a regression on CoS queue setup, introduced
recently by the 57500 new chip support patches.  The rest are
fixes related to ring and resource accounting on the new 57500 chips.

Michael Chan (4):
  bnxt_en: Fix CNP CoS queue regression.
  bnxt_en: Keep track of reserved IRQs.
  bnxt_en: Fix NQ/CP rings accounting on the new 57500 chips.
  bnxt_en: Fix _bnxt_get_max_rings() for 57500 chips.

 drivers/net/ethernet/broadcom/bnxt/bnxt.c     | 60 +++++++++++++++++++++------
 drivers/net/ethernet/broadcom/bnxt/bnxt.h     |  1 +
 drivers/net/ethernet/broadcom/bnxt/bnxt_ulp.c |  2 +-
 3 files changed, 50 insertions(+), 13 deletions(-)

-- 
2.5.1

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

end of thread, other threads:[~2022-11-05  2:40 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-05-22 23:12 [PATCH net 0/4] bnxt_en: Bug fixes Michael Chan
2019-05-22 23:12 ` [PATCH net 1/4] bnxt_en: Fix aggregation buffer leak under OOM condition Michael Chan
2019-05-22 23:12 ` [PATCH net 2/4] bnxt_en: Fix possible BUG() condition when calling pci_disable_msix() Michael Chan
2019-05-22 23:12 ` [PATCH net 3/4] bnxt_en: Reduce memory usage when running in kdump kernel Michael Chan
2019-05-22 23:12 ` [PATCH net 4/4] bnxt_en: Device serial number is supported only for PFs Michael Chan
2019-05-23  1:03 ` [PATCH net 0/4] bnxt_en: Bug fixes David Miller
  -- strict thread matches above, loose matches on Subject: below --
2022-11-03 23:33 Michael Chan
2022-11-05  2:40 ` patchwork-bot+netdevbpf
2022-08-22 15:06 Michael Chan
2022-08-23  3:04 ` Jakub Kicinski
2022-08-23 22:40 ` patchwork-bot+netdevbpf
2020-11-16  0:27 Michael Chan
2020-11-17  1:44 ` Jakub Kicinski
2020-06-23 23:01 Michael Chan
2020-06-23 23:45 ` Jakub Kicinski
2020-06-24  3:15 ` David Miller
2020-06-14 23:57 Michael Chan
2020-06-15 20:29 ` David Miller
2020-02-02  7:41 Michael Chan
2020-02-03 23:22 ` Jakub Kicinski
2018-12-09 12:00 Michael Chan
2018-12-09 19:47 ` David Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.