linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jason Wang <jasowang@redhat.com>
To: Yuri Benditovich <yuri.benditovich@daynix.com>
Cc: "David S. Miller" <davem@davemloft.net>,
	Jakub Kicinski <kuba@kernel.org>,
	"Michael S . Tsirkin" <mst@redhat.com>,
	Network Development <netdev@vger.kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	virtualization@lists.linux-foundation.org,
	Yan Vugenfirer <yan@daynix.com>
Subject: Re: [PATCH 4/4] tun: indicate support for USO feature
Date: Wed, 12 May 2021 09:33:14 +0800	[thread overview]
Message-ID: <89759261-3a72-df6c-7a81-b7a48abfad44@redhat.com> (raw)
In-Reply-To: <CAOEp5OdrCDPx4ijLcEOm=Wxma6hc=nyqw4Xm6bggBxvgtR0tbg@mail.gmail.com>


在 2021/5/11 下午4:33, Yuri Benditovich 写道:
> On Tue, May 11, 2021 at 9:50 AM Jason Wang <jasowang@redhat.com> wrote:
>>
>> 在 2021/5/11 下午12:42, Yuri Benditovich 写道:
>>> Signed-off-by: Yuri Benditovich <yuri.benditovich@daynix.com>
>>> ---
>>>    drivers/net/tun.c | 2 +-
>>>    1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/net/tun.c b/drivers/net/tun.c
>>> index 84f832806313..a35054f9d941 100644
>>> --- a/drivers/net/tun.c
>>> +++ b/drivers/net/tun.c
>>> @@ -2812,7 +2812,7 @@ static int set_offload(struct tun_struct *tun, unsigned long arg)
>>>                        arg &= ~(TUN_F_TSO4|TUN_F_TSO6);
>>>                }
>>>
>>> -             arg &= ~TUN_F_UFO;
>>> +             arg &= ~(TUN_F_UFO|TUN_F_USO);
>>
>> It looks to me kernel doesn't use "USO", so TUN_F_UDP_GSO_L4 is a better
>> name for this
> No problem, I can change it in v2
>
>   and I guess we should toggle NETIF_F_UDP_GSO_l4 here?
>
> No, we do not, because this indicates only the fact that the guest can
> send large UDP packets and have them splitted to UDP segments.


Actually the reverse. The set_offload() controls the tuntap TX path 
(guest RX path).

When VIRTIO_NET_F_GUEST_XXX was not negotiated, the corresponding netdev 
features needs to be disabled. When host tries to send those packets to 
guest, it needs to do software segmentation.

See virtio_net_apply_guest_offloads().

There's currently no way (or not need) to prevent tuntap from receiving 
GSO packets.

Thanks


>
>> And how about macvtap?
> We will check how to do that for macvtap. We will send a separate
> patch for macvtap or ask for advice.
>
>> Thanks
>>
>>
>>>        }
>>>
>>>        /* This gives the user a way to test for new features in future by


  parent reply	other threads:[~2021-05-12  1:33 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-11  4:42 [PATCH 0/4] Add host USO support to TUN device Yuri Benditovich
2021-05-11  4:42 ` [PATCH 1/4] virtio-net: add definitions for host USO feature Yuri Benditovich
2021-05-11  6:47   ` Jason Wang
2021-05-11  8:12     ` Yuri Benditovich
2021-05-11  8:24       ` Jason Wang
2021-05-11  9:21         ` Yuri Benditovich
2021-05-12  1:21           ` Jason Wang
2021-05-11  4:42 ` [PATCH 2/4] virtio-net: add support of UDP segmentation (USO) on the host Yuri Benditovich
2021-05-11  6:47   ` Jason Wang
2021-05-11  8:23     ` Yuri Benditovich
2021-05-11  8:31       ` Jason Wang
2021-05-11 17:47   ` Willem de Bruijn
2021-05-12  6:09     ` Yuri Benditovich
2021-05-12 14:32       ` Willem de Bruijn
2021-05-12 18:56         ` Yuri Benditovich
2021-05-12 19:53           ` Willem de Bruijn
2021-05-11  4:42 ` [PATCH 3/4] tun: define feature bit for USO support Yuri Benditovich
2021-05-11  4:42 ` [PATCH 4/4] tun: indicate support for USO feature Yuri Benditovich
2021-05-11  6:50   ` Jason Wang
2021-05-11  8:33     ` Yuri Benditovich
2021-05-11 19:06       ` Yuri Benditovich
2021-05-12  1:33       ` Jason Wang [this message]
2021-05-12  5:24         ` Yuri Benditovich
     [not found]           ` <CACGkMEsZBCzV+d_eLj1aYT+pkS5m1QAy7q8rUkNsdV0C8aL8tQ@mail.gmail.com>
     [not found]             ` <CAOEp5OeSankfA6urXLW_fquSMrZ+WYXDtKNacort1UwR=WgxqA@mail.gmail.com>
     [not found]               ` <CACGkMEt3bZrdqbWtWjSkXvv5v8iCHiN8hkD3T602RZnb6nPd9A@mail.gmail.com>
     [not found]                 ` <CAOEp5Odw=eaQWZCXr+U8PipPtO1Avjw-t3gEdKyvNYxuNa5TfQ@mail.gmail.com>
     [not found]                   ` <CACGkMEuqXaJxGqC+CLoq7k4XDu+W3E3Kk3WvG-D6tnn2K4ZPNA@mail.gmail.com>
     [not found]                     ` <CAOEp5OfB62SQzxMj_GkVD4EM=Z+xf43TPoTZwMbPPa3BsX2ooA@mail.gmail.com>
2021-05-13  7:04                       ` Jason Wang
2021-05-13  8:14                         ` Yuri Benditovich
2021-05-13 20:43                           ` Willem de Bruijn
2021-05-14  5:48                             ` Yuri Benditovich
2021-05-13 20:34                         ` Willem de Bruijn
2021-05-14  7:16                           ` Jason Wang
2021-05-14  7:38                             ` Yuri Benditovich
2021-05-14 12:41                               ` 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=89759261-3a72-df6c-7a81-b7a48abfad44@redhat.com \
    --to=jasowang@redhat.com \
    --cc=davem@davemloft.net \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mst@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=virtualization@lists.linux-foundation.org \
    --cc=yan@daynix.com \
    --cc=yuri.benditovich@daynix.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).