Pull PCI fixes from Bjorn Helgaas: "Resource management - Fix IOV sorting by alignment (Wei Yang) - Preserve resource size during alignment reordering (Yinghai Lu) Miscellaneous - MAINTAINERS: Add Pratyush for SPEAr13xx and DesignWare PCIe (Pratyush Anand)" * tag 'pci-v4.1-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: PCI: Preserve resource size during alignment reordering PCI: Fix IOV resource sorting by alignment requirement MAINTAINERS: Add Pratyush Anand as SPEAr13xx and DesignWare PCIe maintainer
Unified · Split
| @@ -7575,6 +7575,7 @@ F: drivers/pci/host/pci-exynos.c · 7574 unmodified lines | ||
| 7575 | 7575 | |
| 7576 | 7576 | PCI DRIVER FOR SYNOPSIS DESIGNWARE |
| 7577 | 7577 | M: Jingoo Han <jingoohan1@gmail.com> |
| 7578 | +M: Pratyush Anand <pratyush.anand@gmail.com> | |
| 7578 | 7579 | L: linux-pci@vger.kernel.org |
| 7579 | 7580 | S: Maintained |
| 7580 | 7581 | F: drivers/pci/host/*designware* |
| @@ -7588,8 +7589,9 @@ F: Documentation/devicetree/bindings/pci/host-generic-pci.txt · 7 unmodified lines | ||
| 7588 | 7589 | F: drivers/pci/host/pci-host-generic.c |
| 7589 | 7590 | |
| 7590 | 7591 | PCIE DRIVER FOR ST SPEAR13XX |
| 7592 | +M: Pratyush Anand <pratyush.anand@gmail.com> | |
| 7591 | 7593 | L: linux-pci@vger.kernel.org |
| 7592 | −S: Orphan | |
| 7594 | +S: Maintained | |
| 7593 | 7595 | F: drivers/pci/host/*spear* |
| 7594 | 7596 | |
| 7595 | 7597 | PCMCIA SUBSYSTEM |
| @@ -428,16 +428,19 @@ static void __assign_resources_sorted(struct list_head *head, · 427 unmodified lines | ||
| 428 | 428 | * consistent. |
| 429 | 429 | */ |
| 430 | 430 | if (add_align > dev_res->res->start) { |
| 431 | + resource_size_t r_size = resource_size(dev_res->res); | |
| 432 | + | |
| 431 | 433 | dev_res->res->start = add_align; |
| 432 | − dev_res->res->end = add_align + | |
| 433 | − resource_size(dev_res->res); | |
| 434 | + dev_res->res->end = add_align + r_size - 1; | |
| 434 | 435 | |
| 435 | 436 | list_for_each_entry(dev_res2, head, list) { |
| 436 | 437 | align = pci_resource_alignment(dev_res2->dev, |
| 437 | 438 | dev_res2->res); |
| 438 | − if (add_align > align) | |
| 439 | + if (add_align > align) { | |
| 439 | 440 | list_move_tail(&dev_res->list, |
| 440 | 441 | &dev_res2->list); |
| 442 | + break; | |
| 443 | + } | |
| 441 | 444 | } |
| 442 | 445 | } |
| 443 | 446 | |