[virtio-dev] Re: [PATCH 02/11] transport-pci: Move transitional device id to legacy section

Michael S. Tsirkin
2023-04-03T15:15:04Z

On Mon, Apr 03, 2023 at 02:58:52PM +0000, Parav Pandit wrote:
>
> > From: Michael S. Tsirkin <mst@redhat.com>
> > Sent: Monday, April 3, 2023 10:50 AM
>
> >
> > No idea what all this means, sorry. Please do not move text that affects modern
> > drivers to a legacy section. And we've spilled way too much ink on this already.
>
> I disagree because spec do not describe modern driver and what you are describing is not aligned the way current spec is written.
> I prefer to avoid mentioning it again the same feature bits section that talks about Transitional interface.

Sorry I don't understand what you are trying to say here. This is all
cosmetics, matter of personal preference. But I did my best to try to
explain the reason this is not a cleanup but a breaking change. Was I
misunderstood or you just don't agree? No idea.
The reason for current placement is this:

A conformant implementation MUST be either transitional or
non-transitional, see \ref{intro:Legacy
Interface: Terminology}.

An implementation MAY choose to implement OPTIONAL support for the
legacy interface, including support for legacy drivers
or devices, by conforming to all of the MUST or
REQUIRED level requirements for the legacy interface
for the transitional devices and drivers.

The requirements for the legacy interface for transitional implementations
are located in sections named ``Legacy Interface'' listed below:

Binding to a transitional ID is mandatory for modern drivers.
*This* is why this ID can not go to legacy section - all of legacy sections
are and must stay optional.

What is true (and unfortunate) is that legacy sections are not as formal
as modern ones - originally we wanted them to be informational only. For
example there is no clear separation between driver and device
conformance sections. Work on this if you like, that is welcome.
But please stop moving mandatory text to legacy sections.

--
MSR