From: Jason Baron <jbaron@akamai.com>
To: Willem de Bruijn <willemdebruijn.kernel@gmail.com>
Cc: Alexander Duyck <alexander.duyck@gmail.com>,
David Miller <davem@davemloft.net>,
Netdev <netdev@vger.kernel.org>, Joshua Hunt <johunt@akamai.com>,
Willem de Bruijn <willemb@google.com>,
Paolo Abeni <pabeni@redhat.com>
Subject: Re: [PATCH net-next] gso: enable udp gso for virtual devices
Date: Fri, 14 Jun 2019 16:53:46 -0400 [thread overview]
Message-ID: <f91fb37a-379a-4a59-7e04-cf8a6d161efa@akamai.com> (raw)
In-Reply-To: <CAF=yD-+BMvToWvRwayTrxQBQ-Lgq7QVA6E+rGe3e5ic7rQ_gSg@mail.gmail.com>
On 6/13/19 5:20 PM, Willem de Bruijn wrote:
>>>> @@ -237,6 +237,7 @@ static inline int find_next_netdev_feature(u64 feature, unsigned long start)
>>>> NETIF_F_GSO_GRE_CSUM | \
>>>> NETIF_F_GSO_IPXIP4 | \
>>>> NETIF_F_GSO_IPXIP6 | \
>>>> + NETIF_F_GSO_UDP_L4 | \
>>>> NETIF_F_GSO_UDP_TUNNEL | \
>>>> NETIF_F_GSO_UDP_TUNNEL_CSUM)
>>>
>>> Are you adding this to NETIF_F_GSO_ENCAP_ALL? Wouldn't it make more
>>> sense to add it to NETIF_F_GSO_SOFTWARE?
>>>
>>
>> Yes, I'm adding to NETIF_F_GSO_ENCAP_ALL (not very clear from the
>> context). I will fix the commit log.
>>
>> In: 83aa025 udp: add gso support to virtual devices, the support was
>> also added to NETIF_F_GSO_ENCAP_ALL (although subsequently reverted due
>> to UDP GRO not being in place), so I wonder what the reason was for that?
>
> That was probably just a bad choice on my part.
>
> It worked in practice, but if NETIF_F_GSO_SOFTWARE works the same
> without unexpected side effects, then I agree that it is the better choice.
>
> That choice does appear to change behavior when sending over tunnel
> devices. Might it send tunneled GSO packets over loopback?
>
>
I set up a test case using fou tunneling through a bridge device using
the udpgso_bench_tx test where packets are not received correctly if
NETIF_F_GSO_UDP_L4 is added to NETIF_F_GSO_SOFTWARE. If I have it added
to NETIF_F_GSO_ENCAP_ALL, it does work correctly. So there are more
fixes required to include it in NETIF_F_GSO_SOFTWARE.
The use-case I have only requires it to be in NETIF_F_GSO_ENCAP_ALL, but
if it needs to go in NETIF_F_GSO_SOFTWARE, I can look at what's required
more next week.
Thanks,
-Jason
>
>> I agree that NETIF_F_GSO_SOFTWARE seems conceptually more logical and
>> further I think it adds support for more 'virtual' devices. For example,
>> I tested loopback with NETIF_F_GSO_UDP_L4 being added to
>> NETIF_F_GSO_SOFTWARE and it shows a nice performance gain, whereas
>> NETIF_F_GSO_ENCAP_ALL isn't included for loopback.
>>
>> Thanks,
>>
>> -Jason
next prev parent reply other threads:[~2019-06-14 20:55 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-06-12 23:12 [PATCH net-next] gso: enable udp gso for virtual devices Jason Baron
2019-06-13 17:15 ` Alexander Duyck
2019-06-13 19:03 ` Jason Baron
2019-06-13 21:20 ` Willem de Bruijn
2019-06-14 20:53 ` Jason Baron [this message]
2019-06-26 19:15 ` Jason Baron
2019-06-26 23:41 ` Willem de Bruijn
2019-08-09 18:58 ` Josh Hunt
2019-08-09 19:13 ` Willem de Bruijn
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=f91fb37a-379a-4a59-7e04-cf8a6d161efa@akamai.com \
--to=jbaron@akamai.com \
--cc=alexander.duyck@gmail.com \
--cc=davem@davemloft.net \
--cc=johunt@akamai.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=willemb@google.com \
--cc=willemdebruijn.kernel@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).