> -----Original Message----- > From: Greg KH [mailto:gregkh@xxxxxxxxxxxxxxxxxxx] > Sent: Friday, December 2, 2016 8:03 AM > To: KY Srinivasan <kys@xxxxxxxxxxxxx> > Cc: olaf@xxxxxxxxx; jasowang@xxxxxxxxxx; Haiyang Zhang > <haiyangz@xxxxxxxxxxxxx>; linux-kernel@xxxxxxxxxxxxxxx; > apw@xxxxxxxxxxxxx; devel@xxxxxxxxxxxxxxxxxxxxxx; > leann.ogasawara@xxxxxxxxxxxxx > Subject: Re: [PATCH 02/15] hyperv: Add a function to detect hv_device > > On Fri, Dec 02, 2016 at 03:38:51PM +0000, KY Srinivasan wrote: > > > > > > > -----Original Message----- > > > From: Greg KH [mailto:gregkh@xxxxxxxxxxxxxxxxxxx] > > > Sent: Thursday, December 1, 2016 11:36 PM > > > To: KY Srinivasan <kys@xxxxxxxxxxxxx> > > > Cc: linux-kernel@xxxxxxxxxxxxxxx; devel@xxxxxxxxxxxxxxxxxxxxxx; > > > olaf@xxxxxxxxx; apw@xxxxxxxxxxxxx; vkuznets@xxxxxxxxxx; > > > jasowang@xxxxxxxxxx; leann.ogasawara@xxxxxxxxxxxxx; Haiyang Zhang > > > <haiyangz@xxxxxxxxxxxxx> > > > Subject: Re: [PATCH 02/15] hyperv: Add a function to detect hv_device > > > > > > On Fri, Dec 02, 2016 at 07:14:03AM +0000, KY Srinivasan wrote: > > > > > In other words, why do you need this and PCI or USB doesn't? Why is > > > > > hyperv "special"? > > > > > > > > On Hyper-V, each VF interface (SR-IOV interface) > > > > is paired with an instance of the > > > > synthetic interface that is managed by netvsc. > > > > When the VF interface comes up, we > > > > need to associate the VF instance with > > > > the corresponding netvsc instance. To do this > > > > without modifying the VF drivers, netvsc registers > > > > for netdev events. > > > > > > Why not modify the VF drivers? You have the full source to them... > > Greg, > > > > This is even worse. On Linux, VF drivers are hypervisor agnostic > > and I want to keep it that way. > > Ok, I really don't know what to suggest, other than this is probably not > the way to do this as no other bus has to. As I don't see the code that > actually uses this anywhere, it's really impossible to have this > conversation at all :( I agree it is difficult to discuss this without having the code that uses this. That said, there is currently code in the tree that disambiguates the netdev events that netvsc sees - look at the function get_netvsc_bymac(). This function allows us to associate the VF interface that maybe coming up with the associated netvsc interface using MAC address. What I want to do is to not use the MAC address but to use a serial number that the host publishes. I could send the netvsc patches that use this if that would help here. In any case once we have this functionality, we will be submitting the patches that use this. What I am trying to do here is to implement the equivalent of dev_is_pci() for vmbus. You also had concerns about how we were implementing this functionality. We could certainly use the same mechanism used in dev_is_pci(). Perhaps I could also use the same naming convention - dev_is_hv()? Regards, K. Y > > greg k-h _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel