[trusty 2/2] bnx2x: Adapter not recovery from EEH error injection

Andy Whitcroft apw at canonical.com
Thu Aug 21 11:39:31 UTC 2014


From: "wenxiong at linux.vnet.ibm.com" <wenxiong at linux.vnet.ibm.com>

When injecting EEH error to bnx2x adapter, adapter couldn't be recovery
and caused recursive EEH errors. The patch fixes the issue.

Signed-off-by: Wen Xiong <wenxiong at linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem at davemloft.net>

(cherry picked from commit 0c0e63410a393aae4b615849625f539db775d586)
BugLink: http://bugs.launchpad.net/bugs/1353105
Signed-off-by: Andy Whitcroft <apw at canonical.com>
---
 drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
index 0067b97..71d3f0c 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
+++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
@@ -12998,8 +12998,8 @@ static int bnx2x_eeh_nic_unload(struct bnx2x *bp)
 	netdev_reset_tc(bp->dev);
 
 	del_timer_sync(&bp->timer);
-	cancel_delayed_work(&bp->sp_task);
-	cancel_delayed_work(&bp->period_task);
+	cancel_delayed_work_sync(&bp->sp_task);
+	cancel_delayed_work_sync(&bp->period_task);
 
 	spin_lock_bh(&bp->stats_lock);
 	bp->stats_state = STATS_STATE_DISABLED;
-- 
2.1.0.rc1





More information about the kernel-team mailing list