public inbox for virtio-dev@lists.linux.dev
 help / color / mirror / Atom feed
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: [virtio-dev] Re: [virtio-comment] Re: [PATCH v18] virtio-net: support inner header hash
Date: Thu, 22 Jun 2023 13:37:40 -0400	[thread overview]
Message-ID: <20230622132837-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <PH0PR12MB5481367BAA5DE0BAA33DBAA8DC22A@PH0PR12MB5481.namprd12.prod.outlook.com>

On Thu, Jun 22, 2023 at 05:15:50PM +0000, Parav Pandit wrote:
> 
> 
> > From: Michael S. Tsirkin <mst@redhat.com>
> > Sent: Thursday, June 22, 2023 1:11 PM
> 
> > > Provisioning driver usually do not attach to the member device directly.
> > > This requires device reset, followed by reaching _DRIVER stage, querying
> > features etc and config area.
> > > And unbinding it and second reset by member driver. Ugh.
> > > Provisioning driver also needs to get the state or capabilities even when
> > member driver is already attached.
> > > So config space is not much a gain either.
> > 
> > Actually it's RO so you *can* read it without any issues:
> 
> It is RO but not same across all devices.

If you provision VFs differently. I got it.

> > - block guest access to status
> > - check DRIVER.
> > If set:
> > 	- read features, config
> > If not set:
> > 	- read features, config
> > 	- reset
> > 
> This is what I explained.
> It is more messy if you equate to GET command has mess.

At least it works.

> > I am not saying it is elegant but then all of vdpa pile of hacks is not elegant.
> > 
> I don't want to comment for vdpa. But it is not part of the spec...

Neither is QEMU.  It's one of spec implementations. Yes, we care about
not adding blockers for features that, superficially, might make
sense for them.

> > And I am all for building something better but we didn't build it yet.
> 
> 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.


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.


-- 
MST


---------------------------------------------------------------------
To unsubscribe, e-mail: virtio-dev-unsubscribe@lists.oasis-open.org
For additional commands, e-mail: virtio-dev-help@lists.oasis-open.org


  reply	other threads:[~2023-06-22 17:37 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                         ` Michael S. Tsirkin [this message]
2023-06-22 17:51                           ` [virtio-dev] " 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
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=20230622132837-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