public inbox for stable@vger.kernel.org
 help / color / mirror / Atom feed
* Patch "bnxt_en: Need to unconditionally shut down RoCE in bnxt_shutdown" has been added to the 4.14-stable tree
@ 2018-02-23 11:10 gregkh
  0 siblings, 0 replies; only message in thread
From: gregkh @ 2018-02-23 11:10 UTC (permalink / raw)
  To: ray.jui, alexander.levin, davem, gregkh, michael.chan
  Cc: stable, stable-commits


This is a note to let you know that I've just added the patch titled

    bnxt_en: Need to unconditionally shut down RoCE in bnxt_shutdown

to the 4.14-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     bnxt_en-need-to-unconditionally-shut-down-roce-in-bnxt_shutdown.patch
and it can be found in the queue-4.14 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.


>From foo@baz Fri Feb 23 11:45:09 CET 2018
From: Ray Jui <ray.jui@broadcom.com>
Date: Fri, 1 Dec 2017 03:13:02 -0500
Subject: bnxt_en: Need to unconditionally shut down RoCE in bnxt_shutdown

From: Ray Jui <ray.jui@broadcom.com>


[ Upstream commit a7f3f939dd7d8398acebecd1ceb2e9e7ffbe91d2 ]

The current 'bnxt_shutdown' implementation only invokes
'bnxt_ulp_shutdown' to shut down RoCE in the case when the system is in
the path of power off (SYSTEM_POWER_OFF). While this may work in most
cases, it does not work in the smart NIC case, when Linux 'reboot'
command is initiated from the Linux that runs on the ARM cores of the
NIC card. In this particular case, Linux 'reboot' results in a system
'L3' level reset where the entire ARM and associated subsystems are
being reset, but at the same time, Nitro core is being kept in sane state
(to allow external PCIe connected servers to continue to work). Without
properly shutting down RoCE and freeing all associated resources, it
results in the ARM core to hang immediately after the 'reboot'

By always invoking 'bnxt_ulp_shutdown' in 'bnxt_shutdown', it fixes the
above issue

Fixes: 0efd2fc65c92 ("bnxt_en: Add a callback to inform RDMA driver during PCI shutdown.")

Signed-off-by: Ray Jui <ray.jui@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 drivers/net/ethernet/broadcom/bnxt/bnxt.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

--- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c
+++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c
@@ -8218,8 +8218,9 @@ static void bnxt_shutdown(struct pci_dev
 	if (netif_running(dev))
 		dev_close(dev);
 
+	bnxt_ulp_shutdown(bp);
+
 	if (system_state == SYSTEM_POWER_OFF) {
-		bnxt_ulp_shutdown(bp);
 		bnxt_clear_int_mode(bp);
 		pci_wake_from_d3(pdev, bp->wol);
 		pci_set_power_state(pdev, PCI_D3hot);


Patches currently in stable-queue which might be from ray.jui@broadcom.com are

queue-4.14/bnxt_en-need-to-unconditionally-shut-down-roce-in-bnxt_shutdown.patch

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2018-02-23 11:10 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-23 11:10 Patch "bnxt_en: Need to unconditionally shut down RoCE in bnxt_shutdown" has been added to the 4.14-stable tree gregkh

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox