All of lore.kernel.org
 help / color / mirror / Atom feed
* [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
@ 2018-05-23 15:16 Venu Busireddy
  2018-05-23 15:16 ` [virtio-dev] [PATCH 1/1] " Venu Busireddy
  2018-06-01 15:42 ` [virtio-dev] [PATCH 0/1] " Michael S. Tsirkin
  0 siblings, 2 replies; 14+ messages in thread
From: Venu Busireddy @ 2018-05-23 15:16 UTC (permalink / raw)
  To: venu.busireddy, virtio-dev

During live migration involving passthrough devices, the guest needs
to know which virtio device will be a fail-over device for a given
passthrough device.

Extending the virtio specification with a new "Group Identifier"
capability allows qemu to set up the grouping at the time the guest
is created. The "Group Identifier" can be as simple as a number, or an
UUID. The driver can use the group identifier to pair the virtio device
with the passthrough device. The passthrough device can contain the
group identifier in the PCIe bridge to which it is attached.

Venu Busireddy (1):
  Add "Group Identifier" to virtio PCI capabilities.

 content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)


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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [virtio-dev] [PATCH 1/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-05-23 15:16 [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities Venu Busireddy
@ 2018-05-23 15:16 ` Venu Busireddy
  2018-06-01 15:42 ` [virtio-dev] [PATCH 0/1] " Michael S. Tsirkin
  1 sibling, 0 replies; 14+ messages in thread
From: Venu Busireddy @ 2018-05-23 15:16 UTC (permalink / raw)
  To: venu.busireddy, virtio-dev

Add VIRTIO_PCI_CAP_GROUP_ID_CFG (Group Identifier) capability to the
virtio PCI capabilities to allow for the grouping of devices.

Signed-off-by: Venu Busireddy <venu.busireddy@oracle.com>
---
 content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/content.tex b/content.tex
index 7a92cb1..7ea6267 100644
--- a/content.tex
+++ b/content.tex
@@ -599,6 +599,8 @@ The fields are interpreted as follows:
 #define VIRTIO_PCI_CAP_DEVICE_CFG        4
 /* PCI configuration access */
 #define VIRTIO_PCI_CAP_PCI_CFG           5
+/* Group Identifier */
+#define VIRTIO_PCI_CAP_GROUP_ID_CFG      6
 \end{lstlisting}
 
         Any other value is reserved for future use.
@@ -997,6 +999,47 @@ address \field{cap.length} bytes within a BAR range
 specified by some other Virtio Structure PCI Capability
 of type other than \field{VIRTIO_PCI_CAP_PCI_CFG}.
 
+\subsubsection{Group Identifier capability}\label{sec:Virtio Transport Options / Virtio Over PCI Bus / PCI Device Layout / Group Identifier capability}
+
+The VIRTIO_PCI_CAP_GROUP_ID_CFG capability provides means for grouping devices together.
+
+The capability is immediately followed by an identifier of arbitrary size as below:
+
+\begin{lstlisting}
+struct virtio_pci_group_id_cap {
+        struct virtio_pci_cap cap;
+        u8 group_id[]; /* Group Identifier */
+};
+\end{lstlisting}
+
+The fields \field{cap.bar}, \field{cap.length}, \field{cap.offset}
+and \field{group_id} are read-only for the driver.
+
+The specification does not impose any restrictions on the size or
+structure of group_id[]. Vendors are free to declare this array as
+large as needed, as long as the combined size of all capabilities can
+be accommodated within the PCI configuration space.
+
+If there is enough room in the PCI configuration space to accommodate
+the group identifier, the fields \field{cap.bar}, \field{cap.offset}
+and \field{cap.length} should be set to 0.
+
+If there isn't enough room, some or all of the group identifier can be
+presented in the BAR region, in which case the fields \field{cap.bar},
+\field{cap.offset} and \field{cap.length} should be set appropriately.
+
+In either case, the field \field{cap.cap_len} indicates the length of
+the group identifier information present in the configuration space
+itself.
+
+\devicenormative{\paragraph}{Group Identifier capability}{Virtio Transport Options / Virtio Over PCI Bus / PCI Device Layout / Group Identifier capability}
+
+The device MAY present the VIRTIO_PCI_CAP_GROUP_ID_CFG capability.
+
+\drivernormative{\paragraph}{Group Identifier capability}{Virtio Transport Options / Virtio Over PCI Bus / PCI Device Layout / Group Identifier capability}
+
+The driver MUST NOT write to group_id[] area or the BAR region.
+
 \subsubsection{Legacy Interfaces: A Note on PCI Device Layout}\label{sec:Virtio Transport Options / Virtio Over PCI Bus / PCI Device Layout / Legacy Interfaces: A Note on PCI Device Layout}
 
 Transitional devices MUST present part of configuration

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


^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-05-23 15:16 [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities Venu Busireddy
  2018-05-23 15:16 ` [virtio-dev] [PATCH 1/1] " Venu Busireddy
@ 2018-06-01 15:42 ` Michael S. Tsirkin
  2018-06-01 17:01   ` Venu Busireddy
  1 sibling, 1 reply; 14+ messages in thread
From: Michael S. Tsirkin @ 2018-06-01 15:42 UTC (permalink / raw)
  To: Venu Busireddy; +Cc: virtio-dev

On Wed, May 23, 2018 at 11:16:12AM -0400, Venu Busireddy wrote:
> During live migration involving passthrough devices, the guest needs
> to know which virtio device will be a fail-over device for a given
> passthrough device.
> 
> Extending the virtio specification with a new "Group Identifier"
> capability allows qemu to set up the grouping at the time the guest
> is created. The "Group Identifier" can be as simple as a number, or an
> UUID. The driver can use the group identifier to pair the virtio device
> with the passthrough device. The passthrough device can contain the
> group identifier in the PCIe bridge to which it is attached.
> 
> Venu Busireddy (1):
>   Add "Group Identifier" to virtio PCI capabilities.
> 
>  content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 43 insertions(+)

Is this a PCI thing, or can this somehow be used with non-PCI
devices? If PCI, we can just add a PCI UUID capability to
virtio without need to worry about the spec.

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

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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-06-01 15:42 ` [virtio-dev] [PATCH 0/1] " Michael S. Tsirkin
@ 2018-06-01 17:01   ` Venu Busireddy
  2018-06-01 20:03     ` Michael S. Tsirkin
  0 siblings, 1 reply; 14+ messages in thread
From: Venu Busireddy @ 2018-06-01 17:01 UTC (permalink / raw)
  To: Michael S. Tsirkin; +Cc: virtio-dev

On 2018-06-01 18:42:06 +0300, Michael S. Tsirkin wrote:
> On Wed, May 23, 2018 at 11:16:12AM -0400, Venu Busireddy wrote:
> > During live migration involving passthrough devices, the guest needs
> > to know which virtio device will be a fail-over device for a given
> > passthrough device.
> > 
> > Extending the virtio specification with a new "Group Identifier"
> > capability allows qemu to set up the grouping at the time the guest
> > is created. The "Group Identifier" can be as simple as a number, or an
> > UUID. The driver can use the group identifier to pair the virtio device
> > with the passthrough device. The passthrough device can contain the
> > group identifier in the PCIe bridge to which it is attached.
> > 
> > Venu Busireddy (1):
> >   Add "Group Identifier" to virtio PCI capabilities.
> > 
> >  content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
> >  1 file changed, 43 insertions(+)
> 
> Is this a PCI thing, or can this somehow be used with non-PCI

This is applicable to all virtio PCI devices, but not to non-PCI
devices.

> devices? If PCI, we can just add a PCI UUID capability to
> virtio without need to worry about the spec.

What is a "PCI UUID capability?" "PCI Local Bus Specification
Revision 3.0, Appendix H" does not list any such capability.

Regards,

Venu


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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-06-01 17:01   ` Venu Busireddy
@ 2018-06-01 20:03     ` Michael S. Tsirkin
  2018-06-01 20:36       ` Siwei Liu
  2018-06-01 20:50       ` Venu Busireddy
  0 siblings, 2 replies; 14+ messages in thread
From: Michael S. Tsirkin @ 2018-06-01 20:03 UTC (permalink / raw)
  To: Venu Busireddy; +Cc: virtio-dev

On Fri, Jun 01, 2018 at 12:01:26PM -0500, Venu Busireddy wrote:
> On 2018-06-01 18:42:06 +0300, Michael S. Tsirkin wrote:
> > On Wed, May 23, 2018 at 11:16:12AM -0400, Venu Busireddy wrote:
> > > During live migration involving passthrough devices, the guest needs
> > > to know which virtio device will be a fail-over device for a given
> > > passthrough device.
> > > 
> > > Extending the virtio specification with a new "Group Identifier"
> > > capability allows qemu to set up the grouping at the time the guest
> > > is created. The "Group Identifier" can be as simple as a number, or an
> > > UUID. The driver can use the group identifier to pair the virtio device
> > > with the passthrough device. The passthrough device can contain the
> > > group identifier in the PCIe bridge to which it is attached.
> > > 
> > > Venu Busireddy (1):
> > >   Add "Group Identifier" to virtio PCI capabilities.
> > > 
> > >  content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
> > >  1 file changed, 43 insertions(+)
> > 
> > Is this a PCI thing, or can this somehow be used with non-PCI
> 
> This is applicable to all virtio PCI devices, but not to non-PCI
> devices.
> 
> > devices? If PCI, we can just add a PCI UUID capability to
> > virtio without need to worry about the spec.
> 
> What is a "PCI UUID capability?" "PCI Local Bus Specification
> Revision 3.0, Appendix H" does not list any such capability.
> 
> Regards,
> 
> Venu

Sorry that I'm unclear. What I meant is the
PCI Express serial number capability (0003h).

-- 
MST

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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-06-01 20:03     ` Michael S. Tsirkin
@ 2018-06-01 20:36       ` Siwei Liu
  2018-06-01 21:03         ` Michael S. Tsirkin
  2018-06-01 20:50       ` Venu Busireddy
  1 sibling, 1 reply; 14+ messages in thread
From: Siwei Liu @ 2018-06-01 20:36 UTC (permalink / raw)
  To: Michael S. Tsirkin; +Cc: Venu Busireddy, virtio-dev

On Fri, Jun 1, 2018 at 1:03 PM, Michael S. Tsirkin <mst@redhat.com> wrote:
> On Fri, Jun 01, 2018 at 12:01:26PM -0500, Venu Busireddy wrote:
>> On 2018-06-01 18:42:06 +0300, Michael S. Tsirkin wrote:
>> > On Wed, May 23, 2018 at 11:16:12AM -0400, Venu Busireddy wrote:
>> > > During live migration involving passthrough devices, the guest needs
>> > > to know which virtio device will be a fail-over device for a given
>> > > passthrough device.
>> > >
>> > > Extending the virtio specification with a new "Group Identifier"
>> > > capability allows qemu to set up the grouping at the time the guest
>> > > is created. The "Group Identifier" can be as simple as a number, or an
>> > > UUID. The driver can use the group identifier to pair the virtio device
>> > > with the passthrough device. The passthrough device can contain the
>> > > group identifier in the PCIe bridge to which it is attached.
>> > >
>> > > Venu Busireddy (1):
>> > >   Add "Group Identifier" to virtio PCI capabilities.
>> > >
>> > >  content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
>> > >  1 file changed, 43 insertions(+)
>> >
>> > Is this a PCI thing, or can this somehow be used with non-PCI
>>
>> This is applicable to all virtio PCI devices, but not to non-PCI
>> devices.
>>
>> > devices? If PCI, we can just add a PCI UUID capability to
>> > virtio without need to worry about the spec.
>>
>> What is a "PCI UUID capability?" "PCI Local Bus Specification
>> Revision 3.0, Appendix H" does not list any such capability.
>>
>> Regards,
>>
>> Venu
>
> Sorry that I'm unclear. What I meant is the
> PCI Express serial number capability (0003h).

Then what's on legacy PCI bridge device with i440fx chipset? VPD capability?

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

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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-06-01 20:03     ` Michael S. Tsirkin
  2018-06-01 20:36       ` Siwei Liu
@ 2018-06-01 20:50       ` Venu Busireddy
  2018-06-01 21:09         ` Michael S. Tsirkin
  1 sibling, 1 reply; 14+ messages in thread
From: Venu Busireddy @ 2018-06-01 20:50 UTC (permalink / raw)
  To: Michael S. Tsirkin; +Cc: virtio-dev

On 2018-06-01 23:03:16 +0300, Michael S. Tsirkin wrote:
> On Fri, Jun 01, 2018 at 12:01:26PM -0500, Venu Busireddy wrote:
> > On 2018-06-01 18:42:06 +0300, Michael S. Tsirkin wrote:
> > > On Wed, May 23, 2018 at 11:16:12AM -0400, Venu Busireddy wrote:
> > > > During live migration involving passthrough devices, the guest needs
> > > > to know which virtio device will be a fail-over device for a given
> > > > passthrough device.
> > > > 
> > > > Extending the virtio specification with a new "Group Identifier"
> > > > capability allows qemu to set up the grouping at the time the guest
> > > > is created. The "Group Identifier" can be as simple as a number, or an
> > > > UUID. The driver can use the group identifier to pair the virtio device
> > > > with the passthrough device. The passthrough device can contain the
> > > > group identifier in the PCIe bridge to which it is attached.
> > > > 
> > > > Venu Busireddy (1):
> > > >   Add "Group Identifier" to virtio PCI capabilities.
> > > > 
> > > >  content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
> > > >  1 file changed, 43 insertions(+)
> > > 
> > > Is this a PCI thing, or can this somehow be used with non-PCI
> > 
> > This is applicable to all virtio PCI devices, but not to non-PCI
> > devices.
> > 
> > > devices? If PCI, we can just add a PCI UUID capability to
> > > virtio without need to worry about the spec.
> > 
> > What is a "PCI UUID capability?" "PCI Local Bus Specification
> > Revision 3.0, Appendix H" does not list any such capability.
> > 
> > Regards,
> > 
> > Venu
> 
> Sorry that I'm unclear. What I meant is the
> PCI Express serial number capability (0003h).

0003h is the VPD capability. Serial Number ("SN") is part of the VPD. QEMU
does not support VPD, and adding the VPD capability to QEMU is lot more
involved than storing the UUID in Vendor-Specific capability.

Do you strongly believe that adding VPD is required? Or, can we live
with using Vendor-Specific capability? The bridge device is going to be
QEMU specific device anyway, so there should be no ambiguity of mixing
up with other bridges.

Thanks,

Venu


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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-06-01 20:36       ` Siwei Liu
@ 2018-06-01 21:03         ` Michael S. Tsirkin
  2018-06-01 21:29           ` Siwei Liu
  0 siblings, 1 reply; 14+ messages in thread
From: Michael S. Tsirkin @ 2018-06-01 21:03 UTC (permalink / raw)
  To: Siwei Liu; +Cc: Venu Busireddy, virtio-dev

On Fri, Jun 01, 2018 at 01:36:34PM -0700, Siwei Liu wrote:
> On Fri, Jun 1, 2018 at 1:03 PM, Michael S. Tsirkin <mst@redhat.com> wrote:
> > On Fri, Jun 01, 2018 at 12:01:26PM -0500, Venu Busireddy wrote:
> >> On 2018-06-01 18:42:06 +0300, Michael S. Tsirkin wrote:
> >> > On Wed, May 23, 2018 at 11:16:12AM -0400, Venu Busireddy wrote:
> >> > > During live migration involving passthrough devices, the guest needs
> >> > > to know which virtio device will be a fail-over device for a given
> >> > > passthrough device.
> >> > >
> >> > > Extending the virtio specification with a new "Group Identifier"
> >> > > capability allows qemu to set up the grouping at the time the guest
> >> > > is created. The "Group Identifier" can be as simple as a number, or an
> >> > > UUID. The driver can use the group identifier to pair the virtio device
> >> > > with the passthrough device. The passthrough device can contain the
> >> > > group identifier in the PCIe bridge to which it is attached.
> >> > >
> >> > > Venu Busireddy (1):
> >> > >   Add "Group Identifier" to virtio PCI capabilities.
> >> > >
> >> > >  content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
> >> > >  1 file changed, 43 insertions(+)
> >> >
> >> > Is this a PCI thing, or can this somehow be used with non-PCI
> >>
> >> This is applicable to all virtio PCI devices, but not to non-PCI
> >> devices.
> >>
> >> > devices? If PCI, we can just add a PCI UUID capability to
> >> > virtio without need to worry about the spec.
> >>
> >> What is a "PCI UUID capability?" "PCI Local Bus Specification
> >> Revision 3.0, Appendix H" does not list any such capability.
> >>
> >> Regards,
> >>
> >> Venu
> >
> > Sorry that I'm unclear. What I meant is the
> > PCI Express serial number capability (0003h).
> 
> Then what's on legacy PCI bridge device with i440fx chipset? VPD capability?

Or just limit this to Express.
At this point main benefit of legacy PCI is to support legacy virtio
and that won't support this new feature.

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

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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-06-01 20:50       ` Venu Busireddy
@ 2018-06-01 21:09         ` Michael S. Tsirkin
  2018-06-01 21:10           ` Michael S. Tsirkin
  0 siblings, 1 reply; 14+ messages in thread
From: Michael S. Tsirkin @ 2018-06-01 21:09 UTC (permalink / raw)
  To: Venu Busireddy; +Cc: virtio-dev

On Fri, Jun 01, 2018 at 03:50:43PM -0500, Venu Busireddy wrote:
> On 2018-06-01 23:03:16 +0300, Michael S. Tsirkin wrote:
> > On Fri, Jun 01, 2018 at 12:01:26PM -0500, Venu Busireddy wrote:
> > > On 2018-06-01 18:42:06 +0300, Michael S. Tsirkin wrote:
> > > > On Wed, May 23, 2018 at 11:16:12AM -0400, Venu Busireddy wrote:
> > > > > During live migration involving passthrough devices, the guest needs
> > > > > to know which virtio device will be a fail-over device for a given
> > > > > passthrough device.
> > > > > 
> > > > > Extending the virtio specification with a new "Group Identifier"
> > > > > capability allows qemu to set up the grouping at the time the guest
> > > > > is created. The "Group Identifier" can be as simple as a number, or an
> > > > > UUID. The driver can use the group identifier to pair the virtio device
> > > > > with the passthrough device. The passthrough device can contain the
> > > > > group identifier in the PCIe bridge to which it is attached.
> > > > > 
> > > > > Venu Busireddy (1):
> > > > >   Add "Group Identifier" to virtio PCI capabilities.
> > > > > 
> > > > >  content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
> > > > >  1 file changed, 43 insertions(+)
> > > > 
> > > > Is this a PCI thing, or can this somehow be used with non-PCI
> > > 
> > > This is applicable to all virtio PCI devices, but not to non-PCI
> > > devices.
> > > 
> > > > devices? If PCI, we can just add a PCI UUID capability to
> > > > virtio without need to worry about the spec.
> > > 
> > > What is a "PCI UUID capability?" "PCI Local Bus Specification
> > > Revision 3.0, Appendix H" does not list any such capability.
> > > 
> > > Regards,
> > > 
> > > Venu
> > 
> > Sorry that I'm unclear. What I meant is the
> > PCI Express serial number capability (0003h).
> 
> 0003h is the VPD capability.

You are talking about the PCI capabilities.
I'm talking about PCI Extended capabilities.

These are not the same thing.

> Serial Number ("SN") is part of the VPD. QEMU
> does not support VPD, and adding the VPD capability to QEMU is lot more
> involved than storing the UUID in Vendor-Specific capability.

Formatting VPD is not so hard really. Another question would be how hard
is it to parse VPD in guests? It might be hard e.g. for windows drivers.

> Do you strongly believe that adding VPD is required? Or, can we live
> with using Vendor-Specific capability? The bridge device is going to be
> QEMU specific device anyway, so there should be no ambiguity of mixing
> up with other bridges.
> 
> Thanks,
> 
> Venu

I'm inclined to say use the serial number extended capability.
If not, I'd look at how hard it is to parse VPD.

Standard cap is better in that guests will be able to show it more
easily.

-- 
MST

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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-06-01 21:09         ` Michael S. Tsirkin
@ 2018-06-01 21:10           ` Michael S. Tsirkin
  2018-06-04 16:44             ` Venu Busireddy
  0 siblings, 1 reply; 14+ messages in thread
From: Michael S. Tsirkin @ 2018-06-01 21:10 UTC (permalink / raw)
  To: Venu Busireddy; +Cc: virtio-dev

On Sat, Jun 02, 2018 at 12:09:35AM +0300, Michael S. Tsirkin wrote:
> On Fri, Jun 01, 2018 at 03:50:43PM -0500, Venu Busireddy wrote:
> > On 2018-06-01 23:03:16 +0300, Michael S. Tsirkin wrote:
> > > On Fri, Jun 01, 2018 at 12:01:26PM -0500, Venu Busireddy wrote:
> > > > On 2018-06-01 18:42:06 +0300, Michael S. Tsirkin wrote:
> > > > > On Wed, May 23, 2018 at 11:16:12AM -0400, Venu Busireddy wrote:
> > > > > > During live migration involving passthrough devices, the guest needs
> > > > > > to know which virtio device will be a fail-over device for a given
> > > > > > passthrough device.
> > > > > > 
> > > > > > Extending the virtio specification with a new "Group Identifier"
> > > > > > capability allows qemu to set up the grouping at the time the guest
> > > > > > is created. The "Group Identifier" can be as simple as a number, or an
> > > > > > UUID. The driver can use the group identifier to pair the virtio device
> > > > > > with the passthrough device. The passthrough device can contain the
> > > > > > group identifier in the PCIe bridge to which it is attached.
> > > > > > 
> > > > > > Venu Busireddy (1):
> > > > > >   Add "Group Identifier" to virtio PCI capabilities.
> > > > > > 
> > > > > >  content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
> > > > > >  1 file changed, 43 insertions(+)
> > > > > 
> > > > > Is this a PCI thing, or can this somehow be used with non-PCI
> > > > 
> > > > This is applicable to all virtio PCI devices, but not to non-PCI
> > > > devices.
> > > > 
> > > > > devices? If PCI, we can just add a PCI UUID capability to
> > > > > virtio without need to worry about the spec.
> > > > 
> > > > What is a "PCI UUID capability?" "PCI Local Bus Specification
> > > > Revision 3.0, Appendix H" does not list any such capability.
> > > > 
> > > > Regards,
> > > > 
> > > > Venu
> > > 
> > > Sorry that I'm unclear. What I meant is the
> > > PCI Express serial number capability (0003h).
> > 
> > 0003h is the VPD capability.
> 
> You are talking about the PCI capabilities.
> I'm talking about PCI Extended capabilities.
> 
> These are not the same thing.
> 
> > Serial Number ("SN") is part of the VPD. QEMU
> > does not support VPD, and adding the VPD capability to QEMU is lot more
> > involved than storing the UUID in Vendor-Specific capability.
> 
> Formatting VPD is not so hard really. Another question would be how hard
> is it to parse VPD in guests? It might be hard e.g. for windows drivers.
> 
> > Do you strongly believe that adding VPD is required? Or, can we live
> > with using Vendor-Specific capability? The bridge device is going to be
> > QEMU specific device anyway, so there should be no ambiguity of mixing
> > up with other bridges.
> > 
> > Thanks,
> > 
> > Venu
> 
> I'm inclined to say use the serial number extended capability.
> If not, I'd look at how hard it is to parse VPD.
> 
> Standard cap is better in that guests will be able to show it more
> easily.

But yes, it's not a very strong preference. If you strongly
believe we must use a vendor specific cap, I can live with
that decision.

> -- 
> MST

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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-06-01 21:03         ` Michael S. Tsirkin
@ 2018-06-01 21:29           ` Siwei Liu
  0 siblings, 0 replies; 14+ messages in thread
From: Siwei Liu @ 2018-06-01 21:29 UTC (permalink / raw)
  To: Michael S. Tsirkin; +Cc: Venu Busireddy, virtio-dev

On Fri, Jun 1, 2018 at 2:03 PM, Michael S. Tsirkin <mst@redhat.com> wrote:
> On Fri, Jun 01, 2018 at 01:36:34PM -0700, Siwei Liu wrote:
>> On Fri, Jun 1, 2018 at 1:03 PM, Michael S. Tsirkin <mst@redhat.com> wrote:
>> > On Fri, Jun 01, 2018 at 12:01:26PM -0500, Venu Busireddy wrote:
>> >> On 2018-06-01 18:42:06 +0300, Michael S. Tsirkin wrote:
>> >> > On Wed, May 23, 2018 at 11:16:12AM -0400, Venu Busireddy wrote:
>> >> > > During live migration involving passthrough devices, the guest needs
>> >> > > to know which virtio device will be a fail-over device for a given
>> >> > > passthrough device.
>> >> > >
>> >> > > Extending the virtio specification with a new "Group Identifier"
>> >> > > capability allows qemu to set up the grouping at the time the guest
>> >> > > is created. The "Group Identifier" can be as simple as a number, or an
>> >> > > UUID. The driver can use the group identifier to pair the virtio device
>> >> > > with the passthrough device. The passthrough device can contain the
>> >> > > group identifier in the PCIe bridge to which it is attached.
>> >> > >
>> >> > > Venu Busireddy (1):
>> >> > >   Add "Group Identifier" to virtio PCI capabilities.
>> >> > >
>> >> > >  content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
>> >> > >  1 file changed, 43 insertions(+)
>> >> >
>> >> > Is this a PCI thing, or can this somehow be used with non-PCI
>> >>
>> >> This is applicable to all virtio PCI devices, but not to non-PCI
>> >> devices.
>> >>
>> >> > devices? If PCI, we can just add a PCI UUID capability to
>> >> > virtio without need to worry about the spec.
>> >>
>> >> What is a "PCI UUID capability?" "PCI Local Bus Specification
>> >> Revision 3.0, Appendix H" does not list any such capability.
>> >>
>> >> Regards,
>> >>
>> >> Venu
>> >
>> > Sorry that I'm unclear. What I meant is the
>> > PCI Express serial number capability (0003h).
>>
>> Then what's on legacy PCI bridge device with i440fx chipset? VPD capability?
>
> Or just limit this to Express.
> At this point main benefit of legacy PCI is to support legacy virtio
> and that won't support this new feature.

The legacy i440fx model might already exist for a while that I'd fear
switching to Q35 over night for those existing setups would perhaps
not be practical. And they might be using transitional virtio device
by default meaning that new features get exposed immediately once
added. I would think for completeness and transition point of view
there's still some sense to support legacy PCI bridge, no?

-Siwei


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

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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-06-01 21:10           ` Michael S. Tsirkin
@ 2018-06-04 16:44             ` Venu Busireddy
  2018-06-04 17:42               ` Michael S. Tsirkin
  0 siblings, 1 reply; 14+ messages in thread
From: Venu Busireddy @ 2018-06-04 16:44 UTC (permalink / raw)
  To: Michael S. Tsirkin; +Cc: virtio-dev

On 2018-06-02 00:10:31 +0300, Michael S. Tsirkin wrote:
> On Sat, Jun 02, 2018 at 12:09:35AM +0300, Michael S. Tsirkin wrote:
> > On Fri, Jun 01, 2018 at 03:50:43PM -0500, Venu Busireddy wrote:
> > > On 2018-06-01 23:03:16 +0300, Michael S. Tsirkin wrote:
> > > > On Fri, Jun 01, 2018 at 12:01:26PM -0500, Venu Busireddy wrote:
> > > > > On 2018-06-01 18:42:06 +0300, Michael S. Tsirkin wrote:
> > > > > > On Wed, May 23, 2018 at 11:16:12AM -0400, Venu Busireddy wrote:
> > > > > > > During live migration involving passthrough devices, the guest needs
> > > > > > > to know which virtio device will be a fail-over device for a given
> > > > > > > passthrough device.
> > > > > > > 
> > > > > > > Extending the virtio specification with a new "Group Identifier"
> > > > > > > capability allows qemu to set up the grouping at the time the guest
> > > > > > > is created. The "Group Identifier" can be as simple as a number, or an
> > > > > > > UUID. The driver can use the group identifier to pair the virtio device
> > > > > > > with the passthrough device. The passthrough device can contain the
> > > > > > > group identifier in the PCIe bridge to which it is attached.
> > > > > > > 
> > > > > > > Venu Busireddy (1):
> > > > > > >   Add "Group Identifier" to virtio PCI capabilities.
> > > > > > > 
> > > > > > >  content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
> > > > > > >  1 file changed, 43 insertions(+)
> > > > > > 
> > > > > > Is this a PCI thing, or can this somehow be used with non-PCI
> > > > > 
> > > > > This is applicable to all virtio PCI devices, but not to non-PCI
> > > > > devices.
> > > > > 
> > > > > > devices? If PCI, we can just add a PCI UUID capability to
> > > > > > virtio without need to worry about the spec.
> > > > > 
> > > > > What is a "PCI UUID capability?" "PCI Local Bus Specification
> > > > > Revision 3.0, Appendix H" does not list any such capability.
> > > > > 
> > > > > Regards,
> > > > > 
> > > > > Venu
> > > > 
> > > > Sorry that I'm unclear. What I meant is the
> > > > PCI Express serial number capability (0003h).
> > > 
> > > 0003h is the VPD capability.
> > 
> > You are talking about the PCI capabilities.
> > I'm talking about PCI Extended capabilities.
> > 
> > These are not the same thing.
> > 
> > > Serial Number ("SN") is part of the VPD. QEMU
> > > does not support VPD, and adding the VPD capability to QEMU is lot more
> > > involved than storing the UUID in Vendor-Specific capability.
> > 
> > Formatting VPD is not so hard really. Another question would be how hard
> > is it to parse VPD in guests? It might be hard e.g. for windows drivers.
> > 
> > > Do you strongly believe that adding VPD is required? Or, can we live
> > > with using Vendor-Specific capability? The bridge device is going to be
> > > QEMU specific device anyway, so there should be no ambiguity of mixing
> > > up with other bridges.
> > > 
> > > Thanks,
> > > 
> > > Venu
> > 
> > I'm inclined to say use the serial number extended capability.
> > If not, I'd look at how hard it is to parse VPD.
> > 
> > Standard cap is better in that guests will be able to show it more
> > easily.
> 
> But yes, it's not a very strong preference. If you strongly
> believe we must use a vendor specific cap, I can live with
> that decision.

Let me summarize the discussion so far...

One of the suggestions was to use the "Device Serial Number" PCIe
extended capability. The problem I see with that is that, by default,
virtio devices are exposed as PCI devices, not as PCIe devices (bit 4 in
the Status Register in the configuration space is set to 0). As a result,
there is no extended configuration space.

Do we want to modify QEMU to expose all virtio devices as PCI express
devices? This may have backward compatibility issues!

The other suggestion was to use VPD. Implementing VPD support into
QEMU will be a lot harder than adding a new virtio PCI capability. A
quick look at the VPD format, and the handshake mechanism involved in
exchanging the VPD, will be sufficient to see how complicated it will be.

Therefore, shall we go ahead with the current proposal to add
VIRTIO_PCI_CAP_GROUP_ID_CFG to the virtio PCI capability list?

Please note that VIRTIO_PCI_CAP_GROUP_ID_CFG is a capability that "may be
present." If we enhance QEMU to support VPD in the future, we can switch
to using that. The driver in the guest should be coded to look for the
VPD, and if it not present, look for the VIRTIO_PCI_CAP_GROUP_ID_CFG
capability.

Thanks,

Venu
 

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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-06-04 16:44             ` Venu Busireddy
@ 2018-06-04 17:42               ` Michael S. Tsirkin
  2018-06-04 18:13                 ` Venu Busireddy
  0 siblings, 1 reply; 14+ messages in thread
From: Michael S. Tsirkin @ 2018-06-04 17:42 UTC (permalink / raw)
  To: Venu Busireddy; +Cc: virtio-dev

On Mon, Jun 04, 2018 at 11:44:40AM -0500, Venu Busireddy wrote:
> On 2018-06-02 00:10:31 +0300, Michael S. Tsirkin wrote:
> > On Sat, Jun 02, 2018 at 12:09:35AM +0300, Michael S. Tsirkin wrote:
> > > On Fri, Jun 01, 2018 at 03:50:43PM -0500, Venu Busireddy wrote:
> > > > On 2018-06-01 23:03:16 +0300, Michael S. Tsirkin wrote:
> > > > > On Fri, Jun 01, 2018 at 12:01:26PM -0500, Venu Busireddy wrote:
> > > > > > On 2018-06-01 18:42:06 +0300, Michael S. Tsirkin wrote:
> > > > > > > On Wed, May 23, 2018 at 11:16:12AM -0400, Venu Busireddy wrote:
> > > > > > > > During live migration involving passthrough devices, the guest needs
> > > > > > > > to know which virtio device will be a fail-over device for a given
> > > > > > > > passthrough device.
> > > > > > > > 
> > > > > > > > Extending the virtio specification with a new "Group Identifier"
> > > > > > > > capability allows qemu to set up the grouping at the time the guest
> > > > > > > > is created. The "Group Identifier" can be as simple as a number, or an
> > > > > > > > UUID. The driver can use the group identifier to pair the virtio device
> > > > > > > > with the passthrough device. The passthrough device can contain the
> > > > > > > > group identifier in the PCIe bridge to which it is attached.
> > > > > > > > 
> > > > > > > > Venu Busireddy (1):
> > > > > > > >   Add "Group Identifier" to virtio PCI capabilities.
> > > > > > > > 
> > > > > > > >  content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
> > > > > > > >  1 file changed, 43 insertions(+)
> > > > > > > 
> > > > > > > Is this a PCI thing, or can this somehow be used with non-PCI
> > > > > > 
> > > > > > This is applicable to all virtio PCI devices, but not to non-PCI
> > > > > > devices.
> > > > > > 
> > > > > > > devices? If PCI, we can just add a PCI UUID capability to
> > > > > > > virtio without need to worry about the spec.
> > > > > > 
> > > > > > What is a "PCI UUID capability?" "PCI Local Bus Specification
> > > > > > Revision 3.0, Appendix H" does not list any such capability.
> > > > > > 
> > > > > > Regards,
> > > > > > 
> > > > > > Venu
> > > > > 
> > > > > Sorry that I'm unclear. What I meant is the
> > > > > PCI Express serial number capability (0003h).
> > > > 
> > > > 0003h is the VPD capability.
> > > 
> > > You are talking about the PCI capabilities.
> > > I'm talking about PCI Extended capabilities.
> > > 
> > > These are not the same thing.
> > > 
> > > > Serial Number ("SN") is part of the VPD. QEMU
> > > > does not support VPD, and adding the VPD capability to QEMU is lot more
> > > > involved than storing the UUID in Vendor-Specific capability.
> > > 
> > > Formatting VPD is not so hard really. Another question would be how hard
> > > is it to parse VPD in guests? It might be hard e.g. for windows drivers.
> > > 
> > > > Do you strongly believe that adding VPD is required? Or, can we live
> > > > with using Vendor-Specific capability? The bridge device is going to be
> > > > QEMU specific device anyway, so there should be no ambiguity of mixing
> > > > up with other bridges.
> > > > 
> > > > Thanks,
> > > > 
> > > > Venu
> > > 
> > > I'm inclined to say use the serial number extended capability.
> > > If not, I'd look at how hard it is to parse VPD.
> > > 
> > > Standard cap is better in that guests will be able to show it more
> > > easily.
> > 
> > But yes, it's not a very strong preference. If you strongly
> > believe we must use a vendor specific cap, I can live with
> > that decision.
> 
> Let me summarize the discussion so far...
> 
> One of the suggestions was to use the "Device Serial Number" PCIe
> extended capability. The problem I see with that is that, by default,
> virtio devices are exposed as PCI devices, not as PCIe devices (bit 4 in
> the Status Register in the configuration space is set to 0). As a result,
> there is no extended configuration space.
> 
> Do we want to modify QEMU to expose all virtio devices as PCI express
> devices? This may have backward compatibility issues!

Not all but it's a reasonable limitation to say that if you want to use
failover you use a pci express device.

> The other suggestion was to use VPD. Implementing VPD support into
> QEMU will be a lot harder than adding a new virtio PCI capability. A
> quick look at the VPD format, and the handshake mechanism involved in
> exchanging the VPD, will be sufficient to see how complicated it will be.

Well QEMU does not need to compile a generic VPD - just generate a
specific record.  It's not all that complicated.

> 
> Therefore, shall we go ahead with the current proposal to add
> VIRTIO_PCI_CAP_GROUP_ID_CFG to the virtio PCI capability list?

I won't nack it, I just wanted you to consider the alternatives.

> Please note that VIRTIO_PCI_CAP_GROUP_ID_CFG is a capability that "may be
> present." If we enhance QEMU to support VPD in the future, we can switch
> to using that. The driver in the guest should be coded to look for the
> VPD, and if it not present, look for the VIRTIO_PCI_CAP_GROUP_ID_CFG
> capability.
> 
> Thanks,
> 
> Venu

I'm not sure we should code up things that we didn't even test.
How likely are they to work flawlessly?

-- 
MST

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


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities.
  2018-06-04 17:42               ` Michael S. Tsirkin
@ 2018-06-04 18:13                 ` Venu Busireddy
  0 siblings, 0 replies; 14+ messages in thread
From: Venu Busireddy @ 2018-06-04 18:13 UTC (permalink / raw)
  To: Michael S. Tsirkin; +Cc: virtio-dev

On 2018-06-04 20:42:45 +0300, Michael S. Tsirkin wrote:
> On Mon, Jun 04, 2018 at 11:44:40AM -0500, Venu Busireddy wrote:
> > On 2018-06-02 00:10:31 +0300, Michael S. Tsirkin wrote:
> > > On Sat, Jun 02, 2018 at 12:09:35AM +0300, Michael S. Tsirkin wrote:
> > > > On Fri, Jun 01, 2018 at 03:50:43PM -0500, Venu Busireddy wrote:
> > > > > On 2018-06-01 23:03:16 +0300, Michael S. Tsirkin wrote:
> > > > > > On Fri, Jun 01, 2018 at 12:01:26PM -0500, Venu Busireddy wrote:
> > > > > > > On 2018-06-01 18:42:06 +0300, Michael S. Tsirkin wrote:
> > > > > > > > On Wed, May 23, 2018 at 11:16:12AM -0400, Venu Busireddy wrote:
> > > > > > > > > During live migration involving passthrough devices, the guest needs
> > > > > > > > > to know which virtio device will be a fail-over device for a given
> > > > > > > > > passthrough device.
> > > > > > > > > 
> > > > > > > > > Extending the virtio specification with a new "Group Identifier"
> > > > > > > > > capability allows qemu to set up the grouping at the time the guest
> > > > > > > > > is created. The "Group Identifier" can be as simple as a number, or an
> > > > > > > > > UUID. The driver can use the group identifier to pair the virtio device
> > > > > > > > > with the passthrough device. The passthrough device can contain the
> > > > > > > > > group identifier in the PCIe bridge to which it is attached.
> > > > > > > > > 
> > > > > > > > > Venu Busireddy (1):
> > > > > > > > >   Add "Group Identifier" to virtio PCI capabilities.
> > > > > > > > > 
> > > > > > > > >  content.tex | 43 +++++++++++++++++++++++++++++++++++++++++++
> > > > > > > > >  1 file changed, 43 insertions(+)
> > > > > > > > 
> > > > > > > > Is this a PCI thing, or can this somehow be used with non-PCI
> > > > > > > 
> > > > > > > This is applicable to all virtio PCI devices, but not to non-PCI
> > > > > > > devices.
> > > > > > > 
> > > > > > > > devices? If PCI, we can just add a PCI UUID capability to
> > > > > > > > virtio without need to worry about the spec.
> > > > > > > 
> > > > > > > What is a "PCI UUID capability?" "PCI Local Bus Specification
> > > > > > > Revision 3.0, Appendix H" does not list any such capability.
> > > > > > > 
> > > > > > > Regards,
> > > > > > > 
> > > > > > > Venu
> > > > > > 
> > > > > > Sorry that I'm unclear. What I meant is the
> > > > > > PCI Express serial number capability (0003h).
> > > > > 
> > > > > 0003h is the VPD capability.
> > > > 
> > > > You are talking about the PCI capabilities.
> > > > I'm talking about PCI Extended capabilities.
> > > > 
> > > > These are not the same thing.
> > > > 
> > > > > Serial Number ("SN") is part of the VPD. QEMU
> > > > > does not support VPD, and adding the VPD capability to QEMU is lot more
> > > > > involved than storing the UUID in Vendor-Specific capability.
> > > > 
> > > > Formatting VPD is not so hard really. Another question would be how hard
> > > > is it to parse VPD in guests? It might be hard e.g. for windows drivers.
> > > > 
> > > > > Do you strongly believe that adding VPD is required? Or, can we live
> > > > > with using Vendor-Specific capability? The bridge device is going to be
> > > > > QEMU specific device anyway, so there should be no ambiguity of mixing
> > > > > up with other bridges.
> > > > > 
> > > > > Thanks,
> > > > > 
> > > > > Venu
> > > > 
> > > > I'm inclined to say use the serial number extended capability.
> > > > If not, I'd look at how hard it is to parse VPD.
> > > > 
> > > > Standard cap is better in that guests will be able to show it more
> > > > easily.
> > > 
> > > But yes, it's not a very strong preference. If you strongly
> > > believe we must use a vendor specific cap, I can live with
> > > that decision.
> > 
> > Let me summarize the discussion so far...
> > 
> > One of the suggestions was to use the "Device Serial Number" PCIe
> > extended capability. The problem I see with that is that, by default,
> > virtio devices are exposed as PCI devices, not as PCIe devices (bit 4 in
> > the Status Register in the configuration space is set to 0). As a result,
> > there is no extended configuration space.
> > 
> > Do we want to modify QEMU to expose all virtio devices as PCI express
> > devices? This may have backward compatibility issues!
> 
> Not all but it's a reasonable limitation to say that if you want to use
> failover you use a pci express device.

I am with you on that. We could always say that virtio devices must be
PCIe devices for Live Migration involving passthrough devices to work.
However, we need to go this route only if we throw out the other
alternative being discussed below, right?

> > The other suggestion was to use VPD. Implementing VPD support into
> > QEMU will be a lot harder than adding a new virtio PCI capability. A
> > quick look at the VPD format, and the handshake mechanism involved in
> > exchanging the VPD, will be sufficient to see how complicated it will be.
> 
> Well QEMU does not need to compile a generic VPD - just generate a
> specific record.  It's not all that complicated.

Even to support a single field (such as "SN"), the entire VPD
framework needs to be implemented. And implementing that framework is
difficult. Once the framework is implemented, adding another field (say,
"PN", or "MN", or whatever) will be very simple.

> > Therefore, shall we go ahead with the current proposal to add
> > VIRTIO_PCI_CAP_GROUP_ID_CFG to the virtio PCI capability list?
> 
> I won't nack it, I just wanted you to consider the alternatives.

Great! What is the next step for me to get the VIRTIO_PCI_CAP_GROUP_ID_CFG
capability into the virtio specification?

> > Please note that VIRTIO_PCI_CAP_GROUP_ID_CFG is a capability that "may be
> > present." If we enhance QEMU to support VPD in the future, we can switch
> > to using that. The driver in the guest should be coded to look for the
> > VPD, and if it not present, look for the VIRTIO_PCI_CAP_GROUP_ID_CFG
> > capability.
> > 
> > Thanks,
> > 
> > Venu
> 
> I'm not sure we should code up things that we didn't even test.
> How likely are they to work flawlessly?

Makes sense. We could try to make it flawless, but no guarantee. Also,
we may never need to update either QEMU or the driver, if we decide use
the VIRTIO_PCI_CAP_GROUP_ID_CFG capability. Therefore, please ignore
this last suggestion.

Thanks,

Venu


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


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2018-06-04 18:13 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-23 15:16 [virtio-dev] [PATCH 0/1] Add "Group Identifier" to virtio PCI capabilities Venu Busireddy
2018-05-23 15:16 ` [virtio-dev] [PATCH 1/1] " Venu Busireddy
2018-06-01 15:42 ` [virtio-dev] [PATCH 0/1] " Michael S. Tsirkin
2018-06-01 17:01   ` Venu Busireddy
2018-06-01 20:03     ` Michael S. Tsirkin
2018-06-01 20:36       ` Siwei Liu
2018-06-01 21:03         ` Michael S. Tsirkin
2018-06-01 21:29           ` Siwei Liu
2018-06-01 20:50       ` Venu Busireddy
2018-06-01 21:09         ` Michael S. Tsirkin
2018-06-01 21:10           ` Michael S. Tsirkin
2018-06-04 16:44             ` Venu Busireddy
2018-06-04 17:42               ` Michael S. Tsirkin
2018-06-04 18:13                 ` Venu Busireddy

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.