PCI: Ignore requested alignment for IOV BARs
authorYongji Xie <xyjxie@linux.vnet.ibm.com>
Wed, 15 Feb 2017 06:50:22 +0000 (14:50 +0800)
committerBjorn Helgaas <bhelgaas@google.com>
Tue, 18 Apr 2017 19:47:19 +0000 (14:47 -0500)
We would call pci_reassigndev_resource_alignment() before
pci_init_capabilities().  So the requested alignment would never work for
IOV BARs.

Furthermore, it's meaningless to request additional alignment for IOV BARs,
the IOV BAR alignment is only determined by the VF BAR size.

Signed-off-by: Yongji Xie <xyjxie@linux.vnet.ibm.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
drivers/pci/pci.c

index 7904d02..679af2a 100644 (file)
@@ -5084,7 +5084,7 @@ void pci_reassigndev_resource_alignment(struct pci_dev *dev)
        command &= ~PCI_COMMAND_MEMORY;
        pci_write_config_word(dev, PCI_COMMAND, command);
 
-       for (i = 0; i < PCI_BRIDGE_RESOURCES; i++) {
+       for (i = 0; i <= PCI_ROM_RESOURCE; i++) {
                r = &dev->resource[i];
                if (!(r->flags & IORESOURCE_MEM))
                        continue;