svn commit: r339885 - stable/9/sys/dev/bxe
David C Somayajulu
davidcs at FreeBSD.org
Mon Oct 29 21:36:11 UTC 2018
Author: davidcs
Date: Mon Oct 29 21:36:10 2018
New Revision: 339885
URL: https://svnweb.freebsd.org/changeset/base/339885
Log:
MFC r338734
Fixed isses:
State check before enqueuing transmit task in bxe_link_attn() routine.
State check before invoking bxe_nic_unload in bxe_shutdown().
Submitted by:Vaishali.Kulkarni at cavium.com
Modified:
stable/9/sys/dev/bxe/bxe.c
Directory Properties:
stable/9/ (props changed)
stable/9/sys/ (props changed)
Modified: stable/9/sys/dev/bxe/bxe.c
==============================================================================
--- stable/9/sys/dev/bxe/bxe.c Mon Oct 29 21:31:23 2018 (r339884)
+++ stable/9/sys/dev/bxe/bxe.c Mon Oct 29 21:36:10 2018 (r339885)
@@ -7081,13 +7081,13 @@ bxe_link_attn(struct bxe_softc *sc)
if (sc->state == BXE_STATE_OPEN) {
bxe_stats_handle(sc, STATS_EVENT_LINK_UP);
+ /* Restart tx when the link comes back. */
+ FOR_EACH_ETH_QUEUE(sc, i) {
+ fp = &sc->fp[i];
+ taskqueue_enqueue(fp->tq, &fp->tx_task);
+ }
}
- /* Restart tx when the link comes back. */
- FOR_EACH_ETH_QUEUE(sc, i) {
- fp = &sc->fp[i];
- taskqueue_enqueue(fp->tq, &fp->tx_task);
- }
}
if (sc->link_vars.link_up && sc->link_vars.line_speed) {
@@ -16284,9 +16284,11 @@ bxe_shutdown(device_t dev)
/* stop the periodic callout */
bxe_periodic_stop(sc);
- BXE_CORE_LOCK(sc);
- bxe_nic_unload(sc, UNLOAD_NORMAL, FALSE);
- BXE_CORE_UNLOCK(sc);
+ if (sc->state != BXE_STATE_CLOSED) {
+ BXE_CORE_LOCK(sc);
+ bxe_nic_unload(sc, UNLOAD_NORMAL, FALSE);
+ BXE_CORE_UNLOCK(sc);
+ }
return (0);
}
More information about the svn-src-stable-9
mailing list