On 2020/6/8 ??5:45, Michael S. Tsirkin wrote:> On Mon, Jun 08, 2020 at 05:43:58PM +0800, Jason Wang wrote: >>>> Looking at >>>> pci_match_one_device() it checks both subvendor and subdevice there. >>>> >>>> Thanks >>> But IIUC there is no guarantee that driver with a specific subvendor >>> matches in presence of a generic one. >>> So either IFC or virtio pci can win, whichever binds first. >> >> I'm not sure I get there. But I try manually bind IFCVF to qemu's >> virtio-net-pci, and it fails. >> >> Thanks > Right but the reverse can happen: virtio-net can bind to IFCVF first.That's kind of expected. The PF is expected to be bound to virtio-pci to create VF via sysfs. Thanks>
On Mon, Jun 08, 2020 at 05:46:52PM +0800, Jason Wang wrote:> > On 2020/6/8 ??5:45, Michael S. Tsirkin wrote: > > On Mon, Jun 08, 2020 at 05:43:58PM +0800, Jason Wang wrote: > > > > > Looking at > > > > > pci_match_one_device() it checks both subvendor and subdevice there. > > > > > > > > > > Thanks > > > > But IIUC there is no guarantee that driver with a specific subvendor > > > > matches in presence of a generic one. > > > > So either IFC or virtio pci can win, whichever binds first. > > > > > > I'm not sure I get there. But I try manually bind IFCVF to qemu's > > > virtio-net-pci, and it fails. > > > > > > Thanks > > Right but the reverse can happen: virtio-net can bind to IFCVF first. > > > That's kind of expected. The PF is expected to be bound to virtio-pci to > create VF via sysfs. > > Thanks > > >Once VFs are created, don't we want IFCVF to bind rather than virtio-pci? -- MST
On 2020/6/8 ??5:54, Michael S. Tsirkin wrote:> On Mon, Jun 08, 2020 at 05:46:52PM +0800, Jason Wang wrote: >> On 2020/6/8 ??5:45, Michael S. Tsirkin wrote: >>> On Mon, Jun 08, 2020 at 05:43:58PM +0800, Jason Wang wrote: >>>>>> Looking at >>>>>> pci_match_one_device() it checks both subvendor and subdevice there. >>>>>> >>>>>> Thanks >>>>> But IIUC there is no guarantee that driver with a specific subvendor >>>>> matches in presence of a generic one. >>>>> So either IFC or virtio pci can win, whichever binds first. >>>> I'm not sure I get there. But I try manually bind IFCVF to qemu's >>>> virtio-net-pci, and it fails. >>>> >>>> Thanks >>> Right but the reverse can happen: virtio-net can bind to IFCVF first. >> >> That's kind of expected. The PF is expected to be bound to virtio-pci to >> create VF via sysfs. >> >> Thanks >> >> >> > Once VFs are created, don't we want IFCVF to bind rather than > virtio-pci?Yes, but for PF we need virtio-pci. Thanks>