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 --- drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) Index: b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c =================================================================== --- a/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 2014-05-22 18:42:48.000000000 -0500 +++ b/drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c 2014-05-22 18:44:36.757765539 -0500 @@ -13279,8 +13279,8 @@ static int bnx2x_eeh_nic_unload(struct b 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; --