From: "Michael S. Tsirkin" <mst@redhat.com>
To: Parav Pandit <parav@nvidia.com>
Cc: Heng Qi <hengqi@linux.alibaba.com>,
"virtio-comment@lists.oasis-open.org"
<virtio-comment@lists.oasis-open.org>,
"virtio-dev@lists.oasis-open.org"
<virtio-dev@lists.oasis-open.org>,
Jason Wang <jasowang@redhat.com>,
Yuri Benditovich <yuri.benditovich@daynix.com>,
Xuan Zhuo <xuanzhuo@linux.alibaba.com>,
Cornelia Huck <cohuck@redhat.com>
Subject: Re: [virtio-dev] Re: [virtio-comment] Re: [PATCH v18] virtio-net: support inner header hash
Date: Thu, 22 Jun 2023 14:40:02 -0400 [thread overview]
Message-ID: <20230622143626-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <PH0PR12MB5481BE907C0BBACC00389091DC22A@PH0PR12MB5481.namprd12.prod.outlook.com>
On Thu, Jun 22, 2023 at 06:17:54PM +0000, Parav Pandit wrote:
>
>
> > From: virtio-dev@lists.oasis-open.org <virtio-dev@lists.oasis-open.org> On
> > Behalf Of Michael S. Tsirkin
> > Sent: Thursday, June 22, 2023 2:12 PM
>
> [..]
>
> > > > > The proposal for 1.4 is literally very simple as below.
> > > > > 1. All existing fields of cfg space stays in cfg space 2. Any new
> > > > > capabilities to be queried, query using a vq (aq, cfgvq, whatevervq).
> > > > > 3. Optionally existing fields can be queries over vq of #2 Once
> > > > > this arrive, no need for new GET commands.
> > > > > Till that time, don't keep infinitely grow the cfg space.
> > > > > Any next addition to cfg space, should work on defining the cfgvq.
> > > >
> > > > Simple, but short sighted. I know you guys don't support your
> > > > hardware for 10-
> > > > 20 years but for software people do.
> > > > And so "All existing fields of cfg space stays in cfg space" is a
> > > > bad idea simply because this does not allow removing things from
> > > > config space not in 10 not in
> > > > 20 years not ever.
> > > >
> > > #1 is for backward compat for existing drivers.
> > > You missed about #3. Existing cfg space fields can be queries using the cfgvq
> > too.
> >
> > Then #1 does not matter. We can give devices choice.
> >
> > > >
> > > > Instead we need to allow two ways to access config space. Teach
> > > > drivers about both, actually mandate supporting both. And then
> > > > devices will make their own cost/benefit decision about which features they
> > want to support in MMIO.
> > >
> > > If both method is mandated, I don't see benefit at all of two methods.
> >
> > Mandated for driver.
> > Benefit is for devices, they will have the choice which drivers to support. In 10-
> > 20 years all drivers support cfg command and then people can start shipping
> > devices without MMIO access to any registers.
> >
> Until that point devices are forced to burn memory, which is not needed at all in < 3 years.
No they are not. They can make their own decision which fields to support in MMIO space.
If they want to cut at 1.3 time, they can, but they also can cut it
at 1.2 time, this means some features will not be accessible through
MMIO only through the new commands.
> Once cfgvq is present for new fields, from the day 1, device does not need to store any newly defined fields on MMIO.
Exactly.
> And 10 to 20 years, it can stop for existing fields..
>
> The clear benefit is fields defined in 1.4 no longer needs to be stored starting from 2023-24.
And why is it a problem that someone can also build a 1.4 device with MMIO?
> > > VQ is generic part of the spec for slow and fast operation, so it is not at all a
> > cost for config reading.
> >
> > This will depend. E.g. if there's a single command to get all of config in one go,
> > then it actually can be a speedup, reducing the # of VM exits.
>
> Yes, one command to get all at least device specific config.
---------------------------------------------------------------------
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-06-22 18:40 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-21 13:50 [virtio-dev] [PATCH v18] virtio-net: support inner header hash Heng Qi
2023-06-21 15:38 ` [virtio-dev] " Michael S. Tsirkin
2023-06-21 16:46 ` [virtio-dev] Re: [virtio-comment] " Heng Qi
2023-06-21 17:52 ` [virtio-dev] " Parav Pandit
2023-06-21 19:25 ` [virtio-dev] " Michael S. Tsirkin
2023-06-21 19:28 ` [virtio-dev] " Parav Pandit
2023-06-21 19:35 ` [virtio-dev] " Michael S. Tsirkin
2023-06-21 19:39 ` [virtio-dev] " Parav Pandit
2023-06-21 19:45 ` [virtio-dev] " Michael S. Tsirkin
2023-06-22 0:46 ` Heng Qi
2023-06-21 19:32 ` Michael S. Tsirkin
2023-06-21 19:37 ` [virtio-dev] " Parav Pandit
2023-06-21 20:16 ` [virtio-dev] " Michael S. Tsirkin
2023-06-21 20:24 ` [virtio-dev] " Parav Pandit
2023-06-21 20:37 ` [virtio-dev] " Michael S. Tsirkin
2023-06-21 20:52 ` [virtio-dev] " Parav Pandit
2023-06-22 0:59 ` Heng Qi
2023-06-22 1:04 ` Parav Pandit
2023-06-22 1:17 ` Heng Qi
2023-06-22 6:23 ` [virtio-dev] " Michael S. Tsirkin
2023-06-22 12:32 ` [virtio-dev] " Parav Pandit
2023-06-22 13:42 ` [virtio-dev] " Heng Qi
2023-06-22 14:27 ` [virtio-dev] " Parav Pandit
2023-06-22 16:46 ` [virtio-dev] " Michael S. Tsirkin
2023-06-22 16:54 ` [virtio-dev] " Parav Pandit
2023-06-22 17:03 ` [virtio-dev] " Michael S. Tsirkin
2023-06-22 17:11 ` [virtio-dev] " Parav Pandit
2023-06-22 17:28 ` [virtio-dev] " Michael S. Tsirkin
2023-06-22 17:58 ` [virtio-dev] " Parav Pandit
2023-06-28 10:41 ` [virtio-dev] " Michael S. Tsirkin
2023-06-28 16:46 ` [virtio-dev] " Parav Pandit
2023-06-28 17:08 ` [virtio-dev] " Michael S. Tsirkin
2023-06-22 16:28 ` Michael S. Tsirkin
2023-06-22 16:42 ` [virtio-dev] " Parav Pandit
2023-06-22 16:54 ` [virtio-dev] " Michael S. Tsirkin
2023-06-22 17:04 ` Parav Pandit
2023-06-22 17:14 ` Michael S. Tsirkin
2023-06-22 17:20 ` Parav Pandit
2023-06-22 17:43 ` Michael S. Tsirkin
2023-06-22 18:12 ` Parav Pandit
2023-06-22 18:36 ` Michael S. Tsirkin
2023-06-22 17:11 ` Michael S. Tsirkin
2023-06-22 17:15 ` [virtio-dev] " Parav Pandit
2023-06-22 17:37 ` [virtio-dev] " Michael S. Tsirkin
2023-06-22 17:51 ` Parav Pandit
2023-06-22 18:11 ` Michael S. Tsirkin
2023-06-22 18:17 ` Parav Pandit
2023-06-22 18:40 ` Michael S. Tsirkin [this message]
2023-06-22 18:50 ` [virtio-dev] RE: [virtio-comment] " Parav Pandit
2023-06-22 19:02 ` [virtio-dev] " Michael S. Tsirkin
2023-06-22 20:27 ` [virtio-dev] " Parav Pandit
2023-06-28 10:47 ` [virtio-dev] " Michael S. Tsirkin
2023-06-22 0:41 ` 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=20230622143626-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=cohuck@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