On Mon, Apr 21, 2014 at 4:14 PM, Tim Harvey <tharvey@xxxxxxxxxxxxx> wrote: > If a flush is requested, make sure to clear the descriptor once we've > processed it. > > This resolves a hang that will occur if all RX descriptors are full when a > flush is requested. > > Signed-off-by: Tim Harvey <tharvey@xxxxxxxxxxxxx> > --- > drivers/net/wireless/ath/ath9k/recv.c | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/drivers/net/wireless/ath/ath9k/recv.c b/drivers/net/wireless/ath/ath9k/recv.c > index 6c9accd..e77a253 100644 > --- a/drivers/net/wireless/ath/ath9k/recv.c > +++ b/drivers/net/wireless/ath/ath9k/recv.c > @@ -1113,14 +1113,13 @@ requeue_drop_frag: > } > requeue: > list_add_tail(&bf->list, &sc->rx.rxbuf); > - if (flush) > - continue; > > if (edma) { > ath_rx_edma_buf_link(sc, qtype); > } else { > ath_rx_buf_relink(sc, bf); > - ath9k_hw_rxena(ah); > + if (!flush) > + ath9k_hw_rxena(ah); > } > } while (1); > > -- > 1.8.3.2 > +cc ath9k-devel@xxxxxxxxxxxxxxx Tim -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html