From: "Michael S. Tsirkin" <mst@redhat.com>
To: Parav Pandit <parav@nvidia.com>
Cc: Heng Qi <hengqi@linux.alibaba.com>,
"virtio-dev@lists.oasis-open.org"
<virtio-dev@lists.oasis-open.org>,
"virtio-comment@lists.oasis-open.org"
<virtio-comment@lists.oasis-open.org>,
Jason Wang <jasowang@redhat.com>,
Yuri Benditovich <yuri.benditovich@daynix.com>,
Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Subject: [virtio-dev] Re: [virtio-comment] Re: [PATCH v13] virtio-net: support inner header hash
Date: Wed, 26 Apr 2023 00:12:22 -0400 [thread overview]
Message-ID: <20230426000032-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <PH0PR12MB548148E35F4F0242A71FC5DFDC649@PH0PR12MB5481.namprd12.prod.outlook.com>
On Tue, Apr 25, 2023 at 09:39:28PM +0000, Parav Pandit wrote:
>
> > From: Michael S. Tsirkin <mst@redhat.com>
> > Sent: Tuesday, April 25, 2023 5:06 PM
> > > On 4/23/2023 3:35 AM, Heng Qi wrote:
> > > > \subsubsection{Legacy Interface: Feature bits}\label{sec:Device
> > > > Types / Network Device / Feature bits / Legacy Interface: Feature bits} @@
> > -198,6 +202,7 @@ \subsection{Device configuration layout}\label{sec:Device
> > Types / Network Device
> > > > u8 rss_max_key_size;
> > > > le16 rss_max_indirection_table_length;
> > > > le32 supported_hash_types;
> > > > + le32 supported_tunnel_hash_types;
> >
> > this needs a comment explaining it only exists with some feature bits.
> >
> Yes, it is already there.
> +Field \field{supported_tunnel_hash_types} only exists if the device supports inner header hash, i.e. if VIRTIO_NET_F_HASH_TUNNEL is set.
> +
> I think it should be changed from "device supports" to "driver negotiated".
>
> > > > };
> > > In v12 I was asking this to move to above field from the config area
> > > to the GET command in comment [1] as,
> > >
> > > "With that no need to define two fields at two different places in
> > > config area and also in cvq."
> >
> > I think I disagree.
> > the proposed design is consistent with regular tunneling.
> >
> Sure.
> I understand how config space has evolved from 0.9.5 to know without much attention, but really expanding this way is not helpful.
> It requires building more and more RAM based devices even for PCI PFs, which is sub optimal.
No, this is ROM, not RAM.
> CVQ already exists and provides the SET command. There is no reason to do GET in some other way.
Spoken looking at just hardware cost :)
The reason is that this is device specific. Maintainance overhead and
system RAM cost for the code to support this should not be ignored.
> Device has single channel to provide a value and hence it doesn't need any internal synchronization between two paths.
>
> So, if we add a new feature bit as VIRTIO_F_CFG_SPACE_OVER_AQ it is an improvement.
> But it still comes with a cost which device cannot mitigate.
> The cost is,
> 1. a driver may not negotiate such feature bit, and device ends up burning memory.
> 1.b Device provisioning becomes a factor of what some guests may use/not use/already using on the live system.
>
> 2. Every device needs AQ even when the CVQ exists.
>
> Hence, better to avoid expanding current structure for any new fields, specially which has the SET equivalent.
>
> But if we want to with the path of VIRTIO_F_CFG_SPACE_OVER_AQ, it is fine.
> More things can evolve for generic things like config space over AQ.
I am not sure what does VIRTIO_F_CFG_SPACE_OVER_AQ mean, and what are
these costs. What I had in mind is extending proposed vq transport to
support sriov. I don't see why we can not have exactly 0 bytes of memory
per VF.
And if we care about single bytes of PF memory (do we? there's only one
PF per SRIOV device ...), what we should do is a variant of pci
transport that aggressively saves memory.
--
MST
---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org
next prev parent reply other threads:[~2023-04-26 4:12 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-23 7:35 [virtio-dev] [PATCH v13] virtio-net: support inner header hash Heng Qi
2023-04-25 20:28 ` [virtio-dev] " Parav Pandit
2023-04-25 21:06 ` [virtio-dev] Re: [virtio-comment] " Michael S. Tsirkin
2023-04-25 21:39 ` [virtio-dev] " Parav Pandit
2023-04-26 4:12 ` Michael S. Tsirkin [this message]
2023-04-26 4:27 ` Parav Pandit
2023-04-26 5:02 ` [virtio-dev] " Michael S. Tsirkin
2023-04-26 13:42 ` [virtio-dev] " Heng Qi
2023-04-26 13:47 ` [virtio-dev] " Parav Pandit
2023-04-26 14:03 ` [virtio-dev] Re: [virtio-comment] " Heng Qi
2023-04-26 14:24 ` [virtio-dev] " Parav Pandit
2023-04-26 14:57 ` [virtio-dev] " Michael S. Tsirkin
2023-04-26 15:20 ` [virtio-dev] " Parav Pandit
2023-04-27 2:19 ` Heng Qi
2023-04-25 21:03 ` [virtio-dev] Re: [virtio-comment] " Michael S. Tsirkin
2023-04-26 14:14 ` Heng Qi
2023-04-26 14:48 ` Michael S. Tsirkin
2023-04-27 2:28 ` Heng Qi
2023-04-27 17:13 ` Michael S. Tsirkin
2023-05-05 13:51 ` [virtio-dev] Re: [virtio-comment] " Heng Qi
2023-05-05 14:56 ` Michael S. Tsirkin
2023-05-09 14:22 ` Heng Qi
2023-05-09 15:15 ` Michael S. Tsirkin
2023-05-10 9:15 ` [virtio-dev] Re: [virtio-comment] " Heng Qi
2023-05-11 6:22 ` Michael S. Tsirkin
2023-05-12 6:00 ` Heng Qi
2023-05-12 6:54 ` Michael S. Tsirkin
2023-05-12 7:23 ` Heng Qi
2023-05-12 11:27 ` Michael S. Tsirkin
2023-05-15 6:51 ` Heng Qi
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=20230426000032-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=hengqi@linux.alibaba.com \
--cc=jasowang@redhat.com \
--cc=parav@nvidia.com \
--cc=virtio-comment@lists.oasis-open.org \
--cc=virtio-dev@lists.oasis-open.org \
--cc=xuanzhuo@linux.alibaba.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