On Thu, 19 Mar 2009 13:53:12 -0600
Matthew Wilcox <matthew@xxxxxx> wrote:
On Wed, Mar 11, 2009 at 03:25:42PM +0800, Yu Zhao wrote:+config PCI_IOVIt's certainly shorter than my text, which is nice. But I think it
+ bool "PCI IOV support"
+ depends on PCI
+ help
+ PCI-SIG I/O Virtualization (IOV) Specifications support.
+ Single Root IOV: allows the creation of virtual PCI
devices
+ that share the physical resources from a real device.
+
+ When in doubt, say N.
still has too much spec-ese and not enough explanation. How about:
help
I/O Virtualization is a PCI feature supported by some
devices which allows them to create virtual devices which share their
physical resources.
If unsure, say N.
+ list_for_each_entry(pdev, &dev->bus->devices, bus_list)This is still wrong. If the 'break' condition is not hit, pdev is
+ if (pdev->is_physfn)
+ break;
+ if (list_empty(&dev->bus->devices) || !pdev->is_physfn)
+ pdev = NULL;
pointing to garbage, not to the last pci_dev in the list.
@@ -270,6 +278,7 @@ struct pci_dev {Should be ifdeffed?
struct list_head msi_list;
#endif
struct pci_vpd *vpd;
+ struct pci_sriov *sriov; /* SR-IOV capability
related */
Ok Yu, I'm ready to apply this set, can you send an updated one with
the fixes Matthew mentioned?