OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio-dev message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [virtio] [PATCH v2] transitional issues: add new IDs for all devices


On Fri, Sep 13, 2013 at 10:19:45AM +0930, Rusty Russell wrote:
> "Michael S. Tsirkin" <mst@redhat.com> writes:
> > non-transitional devices should have been able to simply update
> > revision ID to make sure legacy drivers are not loaded.
> > Unfortunately, mistakes were made:
> > - we didn't stress that drivers must check revision ID,
> >   and of course there's no easy way for drivers to
> >   test this failure path,
> >   so older versions of Windows drivers ignored revision
> >   (latest vision matches revision correctly)
> > - CCW lacks revision ID field
> >
> > Both facts mean a non-transitional device would need
> > a separate mechanism to prevent legacy drivers from
> > loading.
> > We aren't running out of device IDs yet, so
> > let's use up some to resolve this.
> >
> > I incremented all IDs by 0x100 intentionally -
> > for the PCI bindings, this should help remind people they can't
> > just stick the Subsystem ID into the low byte of the Device ID.
> >
> > Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
> 
> OK, the only real proble I have with this is that you should remove the
> 0x1, 0x2 from the non-legacy section.
> 
> > +Non-transitional devices must use the larger of the IDs.
> > +For example use Device ID=0x101 for a network card.
> > +
> > +Both transitional and non-transitional drivers must match all
> > +IDs for a given device type.
> 
> The last one doesn't make sense.  Non-transitional drivers should only
> care about 0x10x.  That would be achieved by not listing the smaller
> numbers outside the Legacy Interface section.
> 

I thought so originally, but this won't work.
Recall that transitional devices have IDs 0x1 0x2 etc.

We definitely want transitional devices to support
non-transitional drivers so non-transitional drivers  must support
IDs 0x101 etc.

In other words IDs should not be used to distinguish between
legacy and non-legacy devices - we have a feature bit for that.
They are only a means to distinguish between transitional
and non-transitional devices.

> And anyway, we don't want the non-legacy implementers to have to read
> the legacy section.
> 
> Cheers,
> Rusty.

Exactly.  So 0x1 is not a legacy ID, that is why it's
not described in a legacy section.

> 
> ---------------------------------------------------------------------
> To unsubscribe from this mail list, you must leave the OASIS TC that 
> generates this mail.  Follow this link to all your TCs in OASIS at:
> https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php 


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]