From: "Michael S. Tsirkin" <mst@redhat.com>
To: Jason Wang <jasowang@redhat.com>
Cc: Max Gurtovoy <mgurtovoy@nvidia.com>,
virtio-comment@lists.oasis-open.org,
Cornelia Huck <cohuck@redhat.com>,
Virtio-Dev <virtio-dev@lists.oasis-open.org>,
Oren Duer <oren@nvidia.com>, Parav Pandit <parav@nvidia.com>,
Shahaf Shuler <shahafs@nvidia.com>, Ariel Adam <aadam@redhat.com>,
virtio@lists.oasis-open.org, eperezma <eperezma@redhat.com>
Subject: Re: [PATCH v6 1/5] Introduce device group
Date: Wed, 3 Aug 2022 02:10:54 -0400 [thread overview]
Message-ID: <20220803020125-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <CACGkMEtgghEpPk=eE4z=5QiGTW42768i4729KR0-+ThHaQE3bA@mail.gmail.com>
On Wed, Aug 03, 2022 at 12:44:38PM +0800, Jason Wang wrote:
> On Tue, Aug 2, 2022 at 9:42 PM Michael S. Tsirkin <mst@redhat.com> wrote:
> >
> > I feel some of my latest review opened some questions that I don't have
> > good answers for and might have felt a bit rambling.
> > So to focus the discussion:
> >
> > On Sun, Jul 31, 2022 at 06:43:50PM +0300, Max Gurtovoy wrote:
> > > +A device can be a member of one or more device groups.
> >
> > Presumably this is so we can e.g. create subfunctions inside a VF.
>
> Then VF should have its own transport virtqueue. And subfunctions need
> to be created there. If we don't all thing in PF, we may end up with
> nesting issue when assign VF to the guest.
> > A VF now is a member of a SRIOV and SIOV type groups and we
> > can use type to distinguish between these.
> >
> > We should probably be explicit that each of these groups has to
> > have a distinct group type then.
> >
> > And this raises the question: different types have different
> > capabilities. So let's say admin queue is used to both
> > control features for SRIOV VFs and to create SIOV SFs.
>
> I don't get how the admin queue can be used to control VF features
> considering VF has its capabilities. (SR-IOV lacks the ability to
> provision a single VF).
Well look at latest proposal, last patch controls VF features from PF.
> > I guess we'll have a feature bit to say "command to create
> > SIOV SFs is supported" but how do we say that this command
> > is only supported for VFs not SFs?
>
> I think we should first answer if having VF and SF to be dealt with a
> single type of virtqueue is a good idea. They have something in common
> but they distinguish each other:
>
> - SF requires per virtual device lifecycle management
> - SF requires a transport other than PCI
> - SF requires more mediation in the software layer for presenting a
> virtual device
>
> Using a single type of virtqueue may end up with complex design.
> Having a dedicated queue for SF might be a better choice.
And dedicated feature bits for commands thereof? For example, I imagine
we could have commands to control the MAC of the group member. That is
the same for SF and VF, yes? How do we avoid duplication for that?
> >
> > Do we just make features list a superset of what is supported and simply
> > say in the spec which commands are legal with which group types?
> >
> >
> > Jason Cornelia what do you think?
>
> It looks to me it would be much more simpler if we use separated
> virtqueues for SRIOV and SIOV.
>
> Thanks
Then is it still helpful that we have the generic group type concept?
I was hoping it will work so the same command can be used for VFs
and SFs.
> >
> >
> >
> > > +\item Self type (group identifier = 0) - this group has only one device in the group. Each virtio device is a member of at least one device group, the Self type group.
> >
> > Presumably, this is here so we can send commands that refer to the
> > device itself as opposed to a group member (e.g. to
> > PF as opposed to VF). Is that right?
> >
> > It's handy but again the problem here is, this refers to
> > device as part of which group? Let's just drop this type?
> >
> >
> > --
> > MST
> >
next prev parent reply other threads:[~2022-08-03 6:10 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-31 15:43 [PATCH v6 0/5] Introduce device group and device management Max Gurtovoy
2022-07-31 15:43 ` [PATCH v6 1/5] Introduce device group Max Gurtovoy
2022-07-31 20:38 ` Michael S. Tsirkin
2022-07-31 20:42 ` Michael S. Tsirkin
2022-07-31 21:19 ` Michael S. Tsirkin
2022-08-02 13:41 ` Michael S. Tsirkin
2022-08-03 4:44 ` Jason Wang
2022-08-03 6:10 ` Michael S. Tsirkin [this message]
2022-08-03 8:04 ` Jason Wang
2022-08-03 12:33 ` Michael S. Tsirkin
2022-08-04 2:08 ` Jason Wang
2022-08-04 6:17 ` Michael S. Tsirkin
2022-08-04 7:17 ` Jason Wang
2022-08-03 6:43 ` Michael S. Tsirkin
2022-08-03 23:45 ` [virtio-comment] " Max Gurtovoy
2022-08-04 6:20 ` Michael S. Tsirkin
2022-07-31 15:43 ` [PATCH v6 2/5] Introduce admin command set Max Gurtovoy
2022-07-31 20:59 ` Michael S. Tsirkin
2022-07-31 23:56 ` [virtio-comment] " Max Gurtovoy
2022-07-31 15:43 ` [virtio-comment] [PATCH v6 3/5] Introduce virtio admin virtqueue Max Gurtovoy
2022-07-31 21:00 ` Michael S. Tsirkin
2022-07-31 23:07 ` Max Gurtovoy
2022-08-01 6:03 ` Michael S. Tsirkin
2022-07-31 15:43 ` [PATCH v6 4/5] Add admin_queue_index register to PCI common configuration structure Max Gurtovoy
2022-07-31 21:03 ` Michael S. Tsirkin
2022-08-01 0:11 ` Max Gurtovoy
2022-08-01 6:13 ` Michael S. Tsirkin
2022-08-04 0:01 ` [virtio-comment] " Max Gurtovoy
2022-08-04 6:26 ` Michael S. Tsirkin
2022-07-31 15:43 ` [PATCH v6 5/5] Introduce MGMT admin commands Max Gurtovoy
2022-07-31 21:16 ` Michael S. Tsirkin
2022-07-31 16:27 ` [PATCH v6 0/5] Introduce device group and device management Michael S. Tsirkin
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=20220803020125-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=aadam@redhat.com \
--cc=cohuck@redhat.com \
--cc=eperezma@redhat.com \
--cc=jasowang@redhat.com \
--cc=mgurtovoy@nvidia.com \
--cc=oren@nvidia.com \
--cc=parav@nvidia.com \
--cc=shahafs@nvidia.com \
--cc=virtio-comment@lists.oasis-open.org \
--cc=virtio-dev@lists.oasis-open.org \
--cc=virtio@lists.oasis-open.org \
/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