On 14-04-28 02:37 AM, Sebastian Andrzej Siewior wrote: > 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. Sanity boot tested the 3.10 rc1 on a sbc8548 (UP PPC with gianfar), with the one-liner added as follows: diff --git a/drivers/net/ethernet/freescale/gianfar.c b/drivers/net/ethernet/freescale/gianfar.c index 8aecc1d81395..b87a8c919c3e 100644 --- a/drivers/net/ethernet/freescale/gianfar.c +++ b/drivers/net/ethernet/freescale/gianfar.c @@ -2574,6 +2574,7 @@ static int gfar_clean_tx_ring(struct gfar_priv_tx_q *tx_queue) tx_queue->dirty_tx = bdp; netdev_tx_completed_queue(txq, howmany, bytes_sent); + return howmany; } static void gfar_schedule_cleanup(struct gfar_priv_grp *gfargrp) Paul. -- > > Sebastian > -- To unsubscribe from this list: send the line "unsubscribe stable-rt" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html