Re: [PATCH net] net: stmmac: fix completely hung TX when using TSO

From: David Miller
Date: Tue Jun 06 2017 - 16:25:23 EST


From: Niklas Cassel <niklas.cassel@xxxxxxxx>
Date: Tue, 6 Jun 2017 09:25:00 +0200

> stmmac_tso_allocator can fail to set the Last Descriptor bit
> on a descriptor that actually was the last descriptor.
>
> This happens when the buffer of the last descriptor ends
> up having a size of exactly TSO_MAX_BUFF_SIZE.
>
> When the IP eventually reaches the next last descriptor,
> which actually has the bit set, the DMA will hang.
>
> When the DMA hangs, we get a tx timeout, however,
> since stmmac does not do a complete reset of the IP
> in stmmac_tx_timeout, we end up in a state with
> completely hung TX.
>
> Signed-off-by: Niklas Cassel <niklas.cassel@xxxxxxxx>

Applied and queued up for -stable, thank you.