On Mon, Apr 21, 2014 at 4:14 PM, Tim Harvey <thar...@gateworks.com> 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 <thar...@gateworks.com>
> ---
>  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@lists.ath9k.org

Tim
_______________________________________________
ath9k-devel mailing list
ath9k-devel@lists.ath9k.org
https://lists.ath9k.org/mailman/listinfo/ath9k-devel

Reply via email to