On 10/2/20 10:26 AM, Eric Dumazet wrote:
> On Thu, Oct 1, 2020 at 10:34 PM Heiner Kallweit <hkallwe...@gmail.com> wrote:
>>
>> I have a problem with the following code in ndo_start_xmit() of
>> the r8169 driver. A user reported the WARN being triggered due
>> to gso_size > 0 and gso_type = 0. The chip supports TSO(6).
>> The driver is widely used, therefore I'd expect much more such
>> reports if it should be a common problem. Not sure what's special.
>> My primary question: Is it a valid use case that gso_size is
>> greater than 0, and no SKB_GSO_ flag is set?
>> Any hint would be appreciated.
>>
>>
> 
> Maybe this is not a TCP packet ? But in this case GSO should have taken place.
> 
> You might add a
> pr_err_once("gso_type=%x\n", shinfo->gso_type);
> 
>>
>> u32 mss = shinfo->gso_size;
>>
>>         if (mss) {
> 
> 
> 
>>                 if (shinfo->gso_type & SKB_GSO_TCPV4) {
>>                         opts[0] |= TD1_GTSENV4;
>>                 } else if (shinfo->gso_type & SKB_GSO_TCPV6) {
>>                         if (skb_cow_head(skb, 0))
>>                                 return false;
>>
>>                         tcp_v6_gso_csum_prep(skb);
>>                         opts[0] |= TD1_GTSENV6;
>>                 } else {
>>                         WARN_ON_ONCE(1);
>>                 }
>>
>>
>>
>>
>> -------- Forwarded Message --------
>> Subject: [Bug 209423] WARN_ON_ONCE() at rtl8169_tso_csum_v2()
>> Date: Thu, 01 Oct 2020 19:19:24 +0000
>> From: bugzilla-dae...@bugzilla.kernel.org
>> To: hkallwe...@gmail.com
>>
>> https://bugzilla.kernel.org/show_bug.cgi?id=209423
>>
>> --- Comment #7 from Damian Wrobel (dwro...@ertelnet.rybnik.pl) ---
>> Here it comes:
>>
>> [86678.377120] ------------[ cut here ]------------
>> [86678.377155] gso_size = 1448, gso_type = 0x00000000

Ah, sorry I see you already printed gso_type

Must then be a bug somewhere :/

Reply via email to