Fix races between wpi_rx_done() and wpi_stop()
PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com>
This commit is contained in:
parent
e336bd5499
commit
71258eb207
@ -1952,6 +1952,12 @@ wpi_notif_intr(struct wpi_softc *sc)
|
|||||||
case WPI_RX_DONE:
|
case WPI_RX_DONE:
|
||||||
/* An 802.11 frame has been received. */
|
/* An 802.11 frame has been received. */
|
||||||
wpi_rx_done(sc, desc, data);
|
wpi_rx_done(sc, desc, data);
|
||||||
|
|
||||||
|
if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) {
|
||||||
|
/* wpi_stop() was called. */
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WPI_TX_DONE:
|
case WPI_TX_DONE:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user