lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 29 May 2019 16:49:28 +0200
From:   Paul Menzel <pmenzel@...gen.mpg.de>
To:     Eric Dumazet <eric.dumazet@...il.com>,
        Jeff Kirsher <jeffrey.t.kirsher@...el.com>
Cc:     intel-wired-lan@...ts.osuosl.org,
        Eric Dumazet <edumazet@...gle.com>, netdev@...r.kernel.org,
        Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: Driver has suspect GRO implementation, TCP performance may be
 compromised.

Dear Eric,


Thank you for the quick reply.

On 05/28/19 19:18, Eric Dumazet wrote:
> On 5/28/19 8:42 AM, Paul Menzel wrote:

>> Occasionally, Linux outputs the message below on the workstation Dell
>> OptiPlex 5040 MT.
>>
>>     TCP: net00: Driver has suspect GRO implementation, TCP performance may be compromised.
>>
>> Linux 4.14.55 and Linux 5.2-rc2 show the message, and the WWW also
>> gives some hits [1][2].
>>
>> ```
>> $ sudo ethtool -i net00
>> driver: e1000e
>> version: 3.2.6-k
>> firmware-version: 0.8-4
>> expansion-rom-version: 
>> bus-info: 0000:00:1f.6
>> supports-statistics: yes
>> supports-test: yes
>> supports-eeprom-access: yes
>> supports-register-dump: yes
>> supports-priv-flags: no
>> ```
>>
>> Can the driver e1000e be improved?
>>
>> Any idea, what triggers this, as I do not see it every boot? Download
>> of big files?
>>
> Maybe the driver/NIC can receive frames bigger than MTU, although this would be strange.
> 
> diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
> index c61edd023b352123e2a77465782e0d32689e96b0..cb0194f66125bcba427e6e7e3cacf0c93040ef61 100644
> --- a/net/ipv4/tcp_input.c
> +++ b/net/ipv4/tcp_input.c
> @@ -150,8 +150,10 @@ static void tcp_gro_dev_warn(struct sock *sk, const struct sk_buff *skb,
>                 rcu_read_lock();
>                 dev = dev_get_by_index_rcu(sock_net(sk), skb->skb_iif);
>                 if (!dev || len >= dev->mtu)
> -                       pr_warn("%s: Driver has suspect GRO implementation, TCP performance may be compromised.\n",
> -                               dev ? dev->name : "Unknown driver");
> +                       pr_warn("%s: Driver has suspect GRO implementation, TCP performance may be compromised."
> +                               " len %u mtu %u\n",
> +                               dev ? dev->name : "Unknown driver",
> +                               len, dev ? dev->mtu : 0);
>                 rcu_read_unlock();
>         }
>  }

I applied your patch on commit 9fb67d643 (Merge tag 'pinctrl-v5.2-2' of
git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl):

     [ 5507.291769] TCP: net00: Driver has suspect GRO implementation, TCP performance may be compromised. len 1856 mtu 1500


Kind regards,

Paul


Download attachment "smime.p7s" of type "application/pkcs7-signature" (5174 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ