OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: RE: [virtio-dev] RE: RE: RE: RE: [PATCH v16] virtio-net: support device stats


On Mon, 4 Sep 2023 12:21:48 +0000, Parav Pandit <parav@nvidia.com> wrote:
> > From: Heng Qi <hengqi@linux.alibaba.com>
> > Sent: Monday, September 4, 2023 4:41 PM
> >
> > å 2023/9/4 äå6:26, Parav Pandit åé:
> > >> From: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
> > >> Sent: Monday, September 4, 2023 2:23 PM
> > >
> > >>> "The device MUST NOT pass received packets that exceed mtu (plus low
> > >>> level ethernet header length) size with gso_type NONE or ECN after
> > >> VIRTIO_NET_F_MTU has been successfully negotiated."
> > >>
> > >> NO.
> > >>
> > >> If the mtu is 1500, we can pass 64k packets to the driver with
> > >> gso_type (not NONE).
> > > Any supporting citation to spec for above comment?
> >
> > I think it can be referred here:
> > "The converse features are also available: a driver can save the virtual device
> > some work by negotiating these features. Note: For example, a network packet
> > transported between two guests on the same system might not need
> > checksumming at all, nor segmentation, if both guests are amenable."
> >
> Sure, it can avoid segmentation, but not at the cost of skipping mtu check.
> For example, sender sends skb with gso with each segment of 9K, and receiver has mtu of 1500, same skb without segmentation is not good.
> Because gso_size should be same as 1500 to match the mtu.

First, for me, I think the size of the each buffer specified by the desc is
irrelated to the gso_size.

And the receiver can set the gso_size to match the MTU.

So the sender can send a gso packet with any segments, any gso_size.
For the receiver, it receives a big packet, it copys to the driver with multple
buffers, and sets the right gso_size.

Is that right?

Thanks.


> One can say with violation of line " The device MUST NOT pass received packets..." things still work fine because guest is amenable. :)
>
> So counter looks ok to me when VIRTIO_NET_F_MTU is not negotiated or when mtu matches.
>
> > >
> > > Each packet must be 1500 for the mtu normative above.
> > > gso_size to <= mtu (ingoring the hdr math for simplicity for now).
> > > whole GSO completion can be for 64K to be reported in used_elem.len.
> > >
> > > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
> > > For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
>
>


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]