diff options
author | Michael Chan | 2019-05-23 01:12:56 +0200 |
---|---|---|
committer | David S. Miller | 2019-05-23 03:02:14 +0200 |
commit | d629522e1d66561f38e5c8d4f52bb6d254ec0707 (patch) | |
tree | a96920d3cb4bf1a72bf7b00038619027ac2c558d /drivers/net/ethernet/broadcom/bnxt/bnxt.c | |
parent | bnxt_en: Fix possible BUG() condition when calling pci_disable_msix(). (diff) | |
download | kernel-qcow2-linux-d629522e1d66561f38e5c8d4f52bb6d254ec0707.tar.gz kernel-qcow2-linux-d629522e1d66561f38e5c8d4f52bb6d254ec0707.tar.xz kernel-qcow2-linux-d629522e1d66561f38e5c8d4f52bb6d254ec0707.zip |
bnxt_en: Reduce memory usage when running in kdump kernel.
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>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom/bnxt/bnxt.c')
-rw-r--r-- | drivers/net/ethernet/broadcom/bnxt/bnxt.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/broadcom/bnxt/bnxt.c b/drivers/net/ethernet/broadcom/bnxt/bnxt.c index cfcc33c52685..79812daa4127 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. */ |