diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-06-05 13:22:06 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-06-05 13:22:06 -0400 |
commit | 456fdb267377b88fa37abf60fcbd9bfaa813bf1f (patch) | |
tree | e61e262e78e0dfe3ccd6cd4589c9361d116796c1 | |
parent | 6e6f9e0b00f9ecfa816b290e08d5e660c3f1aae5 (diff) | |
parent | 552bc94ebeeb189d0ac682dae95cf05e6b72d7fd (diff) |
Merge tag 'pci-v4.1-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci
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
-rw-r--r-- | MAINTAINERS | 4 | ||||
-rw-r--r-- | drivers/pci/setup-bus.c | 9 |
2 files changed, 9 insertions, 4 deletions
diff --git a/MAINTAINERS b/MAINTAINERS index a5b8584da5bf..d8afd2953678 100644 --- a/MAINTAINERS +++ b/MAINTAINERS | |||
@@ -7575,6 +7575,7 @@ F: drivers/pci/host/pci-exynos.c | |||
7575 | 7575 | ||
7576 | PCI DRIVER FOR SYNOPSIS DESIGNWARE | 7576 | PCI DRIVER FOR SYNOPSIS DESIGNWARE |
7577 | M: Jingoo Han <jingoohan1@gmail.com> | 7577 | M: Jingoo Han <jingoohan1@gmail.com> |
7578 | M: Pratyush Anand <pratyush.anand@gmail.com> | ||
7578 | L: linux-pci@vger.kernel.org | 7579 | L: linux-pci@vger.kernel.org |
7579 | S: Maintained | 7580 | S: Maintained |
7580 | F: drivers/pci/host/*designware* | 7581 | F: drivers/pci/host/*designware* |
@@ -7588,8 +7589,9 @@ F: Documentation/devicetree/bindings/pci/host-generic-pci.txt | |||
7588 | F: drivers/pci/host/pci-host-generic.c | 7589 | F: drivers/pci/host/pci-host-generic.c |
7589 | 7590 | ||
7590 | PCIE DRIVER FOR ST SPEAR13XX | 7591 | PCIE DRIVER FOR ST SPEAR13XX |
7592 | M: Pratyush Anand <pratyush.anand@gmail.com> | ||
7591 | L: linux-pci@vger.kernel.org | 7593 | L: linux-pci@vger.kernel.org |
7592 | S: Orphan | 7594 | S: Maintained |
7593 | F: drivers/pci/host/*spear* | 7595 | F: drivers/pci/host/*spear* |
7594 | 7596 | ||
7595 | PCMCIA SUBSYSTEM | 7597 | PCMCIA SUBSYSTEM |
diff --git a/drivers/pci/setup-bus.c b/drivers/pci/setup-bus.c index 4fd0cacf7ca0..508cc56130e3 100644 --- a/drivers/pci/setup-bus.c +++ b/drivers/pci/setup-bus.c | |||
@@ -428,16 +428,19 @@ static void __assign_resources_sorted(struct list_head *head, | |||
428 | * consistent. | 428 | * consistent. |
429 | */ | 429 | */ |
430 | if (add_align > dev_res->res->start) { | 430 | if (add_align > dev_res->res->start) { |
431 | resource_size_t r_size = resource_size(dev_res->res); | ||
432 | |||
431 | dev_res->res->start = add_align; | 433 | dev_res->res->start = add_align; |
432 | dev_res->res->end = add_align + | 434 | dev_res->res->end = add_align + r_size - 1; |
433 | resource_size(dev_res->res); | ||
434 | 435 | ||
435 | list_for_each_entry(dev_res2, head, list) { | 436 | list_for_each_entry(dev_res2, head, list) { |
436 | align = pci_resource_alignment(dev_res2->dev, | 437 | align = pci_resource_alignment(dev_res2->dev, |
437 | dev_res2->res); | 438 | dev_res2->res); |
438 | if (add_align > align) | 439 | if (add_align > align) { |
439 | list_move_tail(&dev_res->list, | 440 | list_move_tail(&dev_res->list, |
440 | &dev_res2->list); | 441 | &dev_res2->list); |
442 | break; | ||
443 | } | ||
441 | } | 444 | } |
442 | } | 445 | } |
443 | 446 | ||