Skip to content

Commit a573130

Browse files
Vasundhara Volamgregkh
authored andcommitted
bnxt_en: Issue PCIe FLR in kdump kernel to cleanup pending DMAs.
[ Upstream commit 8743db4 ] If crashed kernel does not shutdown the NIC properly, PCIe FLR is required in the kdump kernel in order to initialize all the functions properly. Fixes: d629522 ("bnxt_en: Reduce memory usage when running in kdump kernel.") Signed-off-by: Vasundhara Volam <vasundhara-v.volam@broadcom.com> Signed-off-by: Michael Chan <michael.chan@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
1 parent d8b2411 commit a573130

File tree

1 file changed

+8
-0
lines changed
  • drivers/net/ethernet/broadcom/bnxt

1 file changed

+8
-0
lines changed

drivers/net/ethernet/broadcom/bnxt/bnxt.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11775,6 +11775,14 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
1177511775
if (version_printed++ == 0)
1177611776
pr_info("%s", version);
1177711777

11778+
/* Clear any pending DMA transactions from crash kernel
11779+
* while loading driver in capture kernel.
11780+
*/
11781+
if (is_kdump_kernel()) {
11782+
pci_clear_master(pdev);
11783+
pcie_flr(pdev);
11784+
}
11785+
1177811786
max_irqs = bnxt_get_max_irq(pdev);
1177911787
dev = alloc_etherdev_mq(sizeof(*bp), max_irqs);
1178011788
if (!dev)

0 commit comments

Comments
 (0)