From: Claudiu Manoil <claudiu.man...@freescale.com>
Date: Wed, 6 May 2015 18:07:29 +0300

> Handle TxFIFO underrun exceptions outside the fast path.
> A controller reset is more reliable in this exceptional
> case, as opposed to re-enabling on-the-fly the Tx DMA.
> 
> As the controller reset is handled outside the fast path
> by the reset_gfar() workqueue handler, the locking
> scheme on the Tx path is significantly simplified.
> Because the Tx processing (xmit queues and tx napi) is
> disabled during controller reset, tstat access from xmit
> does not require locking.  So the scope of the txlock on
> the processing path is now reduced to num_txbdfree, which
> is shared only between process context (xmit) and softirq
> (clean_tx_ring).  As a result, the txlock must not guard
> against interrupt context, and the spin_lock_irqsave()
> from xmit can be replaced by spin_lock_bh().  Likewise,
> the locking has been downgraded for clean_tx_ring().
> 
> Signed-off-by: Claudiu Manoil <claudiu.man...@freescale.com>

Applied.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to