From: "Michael S. Tsirkin" <mst@redhat.com>
To: Parav Pandit <parav@nvidia.com>
Cc: Max Gurtovoy <mgurtovoy@nvidia.com>,
"virtio-comment@lists.oasis-open.org"
<virtio-comment@lists.oasis-open.org>,
"cohuck@redhat.com" <cohuck@redhat.com>,
"virtio-dev@lists.oasis-open.org"
<virtio-dev@lists.oasis-open.org>,
"jasowang@redhat.com" <jasowang@redhat.com>,
Shahaf Shuler <shahafs@nvidia.com>, Oren Duer <oren@nvidia.com>,
"stefanha@redhat.com" <stefanha@redhat.com>
Subject: Re: [PATCH 1/5] Add virtio Admin Virtqueue specification
Date: Tue, 18 Jan 2022 02:07:33 -0500 [thread overview]
Message-ID: <20220118015736-mutt-send-email-mst@kernel.org> (raw)
In-Reply-To: <PH0PR12MB5481D2443CB685591E194C11DC589@PH0PR12MB5481.namprd12.prod.outlook.com>
On Tue, Jan 18, 2022 at 03:36:19AM +0000, Parav Pandit wrote:
>
>
> > From: Michael S. Tsirkin <mst@redhat.com>
> > Sent: Tuesday, January 18, 2022 3:33 AM
> >
> > On Mon, Jan 17, 2022 at 02:12:33PM +0000, Parav Pandit wrote:
> > >
> > > > From: Michael S. Tsirkin <mst@redhat.com>
> > > > Sent: Thursday, January 13, 2022 11:24 PM
> > >
> > > >
> > > > We had an off-list meeting where I proposed addressing one device
> > > > from another or grouping multiple devices as a more specific scope.
> > > > That would be one way to address this.
> > > >
> > > > Following this idea, all commands would then gain fields for
> > > > addressing one device from another.
> > > >
> > > Can you please explain your idea more and a need for grouping?
> > > What do you want to group? VFs of parent pci device?
> > > How to refer to each VF within a group?
> >
> > So for example, VFs of a PF are a group right? And they are all controlled by a
> > PF.
> >
> > I can think of setups like nesting where we might want to create a group of VFs
> > and pass them to L1, one of the VFs to act as an admin for the reset of them for
> > purposes of L2. subfunctions with PASID etc are another example.
>
> Subfunctions with PASID can be similarly managed by extending device identification and its MSIX/IMS vector details.
> May be vf_number should be put in the union as,
>
> union device_id {
> struct pci_vf vf_id; /* current */
> struct pci_sf sf_id; /* future */
> };
>
> So that they both can use command opcode.
device id is not a good name, but yes. However this is why I think we
should have a slightly more generic terminology, and more space for
these IDs, and then we'd have a specific binding for VFs.
> > I am not
> > asking you to add such mechanisms straight away but the current proposal
> > kind of obscures this to the point where I don't see how would we extend it
> > with these things down the road.
> >
> Which part in specific make it obscure?
just that the text is not generic. would be nicer if adding
new types would involve only changing one or two places
> New device type can be identifiable by above union.
>
> May be a better structure would be in patch-5 is:
> Something like below,
>
> struct virtio_admin_pci_virt_property_set {
> enum virtio_device_identifier_type type; /* pci pf, pci vf, subfunction */
> union virtio_device_identifier {
> struct virtio_pci_dev_id pf_vf; /* current */
> struct virtio_subfunction sf; /* future */
> };
> enum virtio_interrupt_type interrupt_type; /* msix, ims=device specific, intx, something else */
> union virtio_interrupt_config {
> struct virtio_pci_msix_config msix_config;
> };
> };
>
> struct virtio_pci_interrupt_config {
> le16 msix_count;
> };
you do not need a union straight away, Simply use something like this "device
identifier" everywhere and then add some text explaining that currently
it is a VF number and that admin device is a PF.
However we need better names, device ID is already used in the spec
for enumeration/discovery. come up with something else please.
next prev parent reply other threads:[~2022-01-18 7:07 UTC|newest]
Thread overview: 110+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-13 14:50 [PATCH v1 0/5] VIRTIO: Provision maximum MSI-X vectors for a VF Max Gurtovoy
2022-01-13 14:50 ` [PATCH 1/5] Add virtio Admin Virtqueue specification Max Gurtovoy
2022-01-13 17:53 ` Michael S. Tsirkin
2022-01-17 9:56 ` Max Gurtovoy
2022-01-17 21:30 ` Michael S. Tsirkin
2022-01-18 3:22 ` Parav Pandit
2022-01-18 6:17 ` Michael S. Tsirkin
2022-01-18 7:57 ` Parav Pandit
2022-01-18 8:05 ` Michael S. Tsirkin
2022-01-18 8:23 ` Parav Pandit
2022-01-18 10:26 ` Michael S. Tsirkin
2022-01-18 10:30 ` Parav Pandit
2022-01-18 10:41 ` Michael S. Tsirkin
2022-01-19 3:04 ` Jason Wang
2022-01-19 8:11 ` Michael S. Tsirkin
2022-01-25 3:35 ` Jason Wang
2022-01-17 14:12 ` Parav Pandit
2022-01-17 22:03 ` Michael S. Tsirkin
2022-01-18 3:36 ` Parav Pandit
2022-01-18 7:07 ` Michael S. Tsirkin [this message]
2022-01-18 7:14 ` Parav Pandit
2022-01-18 7:20 ` Michael S. Tsirkin
2022-01-19 11:33 ` Max Gurtovoy
2022-01-19 12:21 ` Parav Pandit
2022-01-19 14:47 ` Max Gurtovoy
2022-01-19 15:38 ` Michael S. Tsirkin
2022-01-19 15:47 ` Max Gurtovoy
2022-01-13 14:51 ` [PATCH 2/5] Introduce VIRTIO_F_ADMIN_VQ_INDIRECT_DESC/VIRTIO_F_ADMIN_VQ_IN_ORDER Max Gurtovoy
2022-01-13 15:33 ` Michael S. Tsirkin
2022-01-13 17:07 ` Max Gurtovoy
2022-01-13 17:25 ` Michael S. Tsirkin
2022-01-17 13:59 ` Parav Pandit
2022-01-17 22:14 ` Michael S. Tsirkin
2022-01-18 4:44 ` Parav Pandit
2022-01-18 6:23 ` Michael S. Tsirkin
2022-01-18 6:32 ` Parav Pandit
2022-01-18 6:54 ` Michael S. Tsirkin
2022-01-18 7:07 ` Parav Pandit
2022-01-18 7:12 ` Michael S. Tsirkin
2022-01-18 7:30 ` Parav Pandit
2022-01-18 7:40 ` Michael S. Tsirkin
2022-01-19 4:21 ` Jason Wang
2022-01-19 9:30 ` Michael S. Tsirkin
2022-01-25 3:39 ` Jason Wang
2022-01-18 10:38 ` Michael S. Tsirkin
2022-01-18 10:50 ` Parav Pandit
2022-01-18 15:09 ` Michael S. Tsirkin
2022-01-18 17:17 ` Parav Pandit
2022-01-19 7:20 ` Michael S. Tsirkin
2022-01-19 8:15 ` [virtio-dev] " Parav Pandit
2022-01-19 8:21 ` Michael S. Tsirkin
2022-01-19 10:10 ` Parav Pandit
2022-01-19 16:40 ` Michael S. Tsirkin
2022-01-19 17:07 ` Parav Pandit
2022-01-18 7:13 ` Michael S. Tsirkin
2022-01-18 7:21 ` Parav Pandit
2022-01-18 7:37 ` Michael S. Tsirkin
2022-01-19 4:03 ` Jason Wang
2022-01-19 4:48 ` Parav Pandit
2022-01-19 20:25 ` Parav Pandit
2022-01-25 3:45 ` Jason Wang
2022-01-25 4:07 ` Parav Pandit
2022-01-25 3:29 ` Jason Wang
2022-01-25 3:52 ` Parav Pandit
2022-01-25 10:59 ` Max Gurtovoy
2022-01-25 12:09 ` Michael S. Tsirkin
2022-01-26 13:29 ` Parav Pandit
2022-01-26 14:11 ` Michael S. Tsirkin
2022-01-27 3:49 ` Parav Pandit
2022-01-27 13:05 ` Michael S. Tsirkin
2022-01-27 13:25 ` [virtio-dev] " Parav Pandit
2022-01-28 4:35 ` Jason Wang
2022-01-26 7:03 ` Jason Wang
2022-01-26 9:27 ` Max Gurtovoy
2022-01-26 9:34 ` Jason Wang
2022-01-26 9:45 ` Max Gurtovoy
2022-01-27 3:46 ` Jason Wang
2022-01-26 5:04 ` Jason Wang
2022-01-26 5:26 ` Parav Pandit
2022-01-26 5:45 ` Jason Wang
2022-01-26 5:58 ` Parav Pandit
2022-01-26 6:06 ` Jason Wang
2022-01-26 6:24 ` Parav Pandit
2022-01-26 6:54 ` Jason Wang
2022-01-26 8:09 ` Parav Pandit
2022-01-26 9:07 ` Jason Wang
2022-01-26 9:47 ` Parav Pandit
2022-01-13 14:51 ` [PATCH 3/5] virtio-blk: add support for VIRTIO_F_ADMIN_VQ Max Gurtovoy
2022-01-13 18:24 ` Michael S. Tsirkin
2022-01-13 14:51 ` [PATCH 4/5] virtio-net: " Max Gurtovoy
2022-01-13 17:56 ` Michael S. Tsirkin
2022-01-16 9:47 ` Max Gurtovoy
2022-01-16 16:45 ` Michael S. Tsirkin
2022-01-17 14:07 ` Parav Pandit
2022-01-17 22:22 ` Michael S. Tsirkin
2022-01-18 2:18 ` Jason Wang
2022-01-18 5:25 ` Michael S. Tsirkin
2022-01-19 4:16 ` Jason Wang
2022-01-19 9:26 ` Michael S. Tsirkin
2022-01-25 3:53 ` Jason Wang
2022-01-25 7:19 ` Michael S. Tsirkin
2022-01-26 5:49 ` Jason Wang
2022-01-26 7:02 ` Michael S. Tsirkin
2022-01-26 7:10 ` Jason Wang
2022-01-13 14:51 ` [PATCH 5/5] Add support for dynamic MSI-X vector mgmt for VFs Max Gurtovoy
2022-01-13 18:20 ` Michael S. Tsirkin
2022-01-18 10:38 ` Michael S. Tsirkin
2022-01-13 18:32 ` [PATCH v1 0/5] VIRTIO: Provision maximum MSI-X vectors for a VF Michael S. Tsirkin
2022-01-17 10:00 ` Shahaf Shuler
2022-01-17 21:41 ` 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=20220118015736-mutt-send-email-mst@kernel.org \
--to=mst@redhat.com \
--cc=cohuck@redhat.com \
--cc=jasowang@redhat.com \
--cc=mgurtovoy@nvidia.com \
--cc=oren@nvidia.com \
--cc=parav@nvidia.com \
--cc=shahafs@nvidia.com \
--cc=stefanha@redhat.com \
--cc=virtio-comment@lists.oasis-open.org \
--cc=virtio-dev@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.