]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
bnx2x: stop tx before CNIC_STOP
authorVladislav Zolotarov <vladz@broadcom.com>
Tue, 19 Jul 2011 01:39:41 +0000 (01:39 +0000)
committerJoe Jin <joe.jin@oracle.com>
Wed, 16 May 2012 08:31:31 +0000 (16:31 +0800)
It may take some time to cnic to respond, this prevents tx_timeout
when it happens.

Signed-off-by: Dmitry Kravkov <dmitry@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit 9505ee376739c26cf1d7d4e551d2f63b9d7e5729)

Signed-off-by: Joe Jin <joe.jin@oracle.com>
drivers/net/bnx2x/bnx2x_cmn.c

index 48efddf8d24e53b295b2f0dbf7f77ea2024f2b7f..deb17a4fc29faff4cd9a0c865ccdcd3d12dc11f7 100644 (file)
@@ -1987,6 +1987,9 @@ int bnx2x_nic_unload(struct bnx2x *bp, int unload_mode)
                return -EINVAL;
        }
 
+       /* Stop Tx */
+       bnx2x_tx_disable(bp);
+
 #ifdef BCM_CNIC
        bnx2x_cnic_notify(bp, CNIC_CTL_STOP_CMD);
 #endif
@@ -1995,9 +1998,6 @@ int bnx2x_nic_unload(struct bnx2x *bp, int unload_mode)
 
        bp->rx_mode = BNX2X_RX_MODE_NONE;
 
-       /* Stop Tx */
-       bnx2x_tx_disable(bp);
-
        del_timer_sync(&bp->timer);
 
        /* Set ALWAYS_ALIVE bit in shmem */