Re: [PATCH RT 2/4] net: gianfar: do not try to cleanup TX packets if they are not done

From: Sebastian Andrzej Siewior
Date: Mon Apr 28 2014 - 02:38:15 EST


On 04/27/2014 04:31 PM, Steven Rostedt wrote:
> diff --git a/drivers/net/ethernet/freescale/gianfar.c b/drivers/net/ethernet/freescale/gianfar.c
> index 5c0efcc..8aecc1d 100644
> --- a/drivers/net/ethernet/freescale/gianfar.c
> +++ b/drivers/net/ethernet/freescale/gianfar.c
> @@ -2856,10 +2855,14 @@ static int gfar_poll(struct napi_struct *napi, int budget)
> tx_queue = priv->tx_queue[i];
> /* run Tx cleanup to completion */
> if (tx_queue->tx_skbuff[tx_queue->skb_dirtytx]) {
> - gfar_clean_tx_ring(tx_queue);
> - has_tx_work = 1;
> + int ret;
> +
> + ret = gfar_clean_tx_ring(tx_queue);
> + if (ret)
> + has_tx_work++;
> }
> }
> + work_done += has_tx_work;
>
> for_each_set_bit(i, &gfargrp->rx_bit_map, priv->num_rx_queues) {
> /* skip queue if not active */

The 3.14-RT version of the patch should have an additional return
statement here which I forgot initially.

Sebastian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/