Re: 1e918876 breaks r8169 (linux-3.18+)

From: Florian Westphal
Date: Sat Feb 21 2015 - 12:46:47 EST


Eric Dumazet <eric.dumazet@xxxxxxxxx> wrote:
> Hold on.
>
> I believe there is one race in the way you access skb->xmit_more _after_
>
> txd->opts1 = cpu_to_le32(status);
>
> After this point, TX might have completed and TX completion already have
> freed skb

Hmm, I _thought_ HW would not start xmit of this descriptor/skb until after

RTL_W8(TxPoll, NPQ);

call a bit later... your patch surely looks safer though, thanks for
looking into this.

> Could Tomas try following fix ?

In addition -- Tomas, on your affected board -- did you try
turning off gso/tso?

Holger Hoffstätte mentioned on lkml that his affected r8169 nic is
stable with xmit_more+bql after disabling gso/tso on the nic

(ethtool -k $dev to display settings, "-K $dev tso off gso off" to
disable offloads).
--
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/