From: Yinghai Lu <yinghai@kernel.org>
To: Jesse Barnes <jbarnes@virtuousgeek.org>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Tony Luck <tony.luck@intel.com>,
David Miller <davem@davemloft.net>, x86 <x86@kernel.org>
Cc: Bjorn Helgaas <bhelgaas@google.com>,
Dominik Brodowski <linux@dominikbrodowski.net>,
Andrew Morton <akpm@linux-foundation.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
linux-pci@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-arch@vger.kernel.org, Yinghai Lu <yinghai@kernel.org>
Subject: [PATCH -v11 00/30] PCI: allocate pci bus num range for unassigned bridge busn
Date: Sun, 18 Mar 2012 22:42:31 -0700 [thread overview]
Message-ID: <1332135781-13695-1-git-send-email-yinghai@kernel.org> (raw)
Set up iobusn_resource tree, and register bus number range to it.
Later when need to find bus range, will try to allocate from the tree
Need to test on arches other than x86. esp for ia64 and powerpc that support
more than on peer root buses.
The patches need to apply to linux v3.3 + pci-next and
[PATCH -v3] PCI: pci_host_bridge related cleanup
could be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/yinghai/linux-yinghai.git for-pci-busn-alloc
-v2: according to Jesse, split to more small patches.
-v3: address some request from Bjorn. like make use %pR for busn_res debug print
out, and move the comment change with code change.
-v4: fixes the problem about rescan that Bjorn found.
-v5: add /proc/iobusn that is requested by Bjorn.
remove old workaround from pciehp.
add rescan_bridge for pci bridge in /sys
-v6: remove global iobusn_resource, and every root bus's busn_res will be root
of children buses' busn_res.
pc cardbus change is tested by pcmcia maintainter.
-v7: remove pci_scan_root_bus_max requested by Bjorn and Jesse.
-v8: rebase on top other patches with arch/x86/pci/bus_numa.c changes
also only include busn_res related changes.
-v9: Add busn into pci_root_info, and add it to resources list and pass it
to pci_create_root_bus.
-v11: convert busn_res probe to generic probe_resource with resource lock holding
add more strict checking about not scaned peer bridges.
Yinghai Lu (30):
x86, PCI: Add print all root info for not using _CRS path
x86, PCI: Allocate temp range array in amd_bus pci_root_info probing
x86, PCI: Merge pcibios_scan_root and pci_scan_bus_on_node
PCI: Add busn_res into struct pci_bus.
PCI: Add busn_res operation functions
PCI: Release busn_res when removing bus
PCI: Insert busn_res in pci_create_root_bus()
PCI: Checking busn_res in pci_scan_root_bus()
PCI: Add default busn_resource
PCI: Add default busn_res for pci_scan_bus()
x86, PCI: Add busn_res into resources list for acpi path
x86, PCI: Put busn resource in pci_root_info for not using _CRS path
PCI, ia64: Register busn_res for root buses
PCI, sparc: Register busn_res for root buses
PCI, powerpc: Register busn_res for root buses
PCI, parisc: Register busn_res for root buses
resources: Add probe_resource()
resources: Replace registered resource in tree.
PCI: Add pci_bus_extend/shrink_top()
PCI: Probe safe range that we can use for unassigned bridge.
PCI: Add pci_bus_replace_busn_res()
PCI: Allocate bus range instead of use max blindly
PCI: Strict checking of valid range for bridge
PCI: Kill pci_fixup_parent_subordinate_busnr()
PCI: Seperate child bus scanning to two passes overall
pcmcia: Remove workaround for fixing pci parent bus subordinate
PCI: Double checking setting for bus register and bus struct.
PCI, pciehp: Remove not needed bus number range checking
PCI: More strict checking of valid range for bridge
PCI: Don't shrink too much for hotplug bridge
arch/ia64/pci/pci.c | 2 +
arch/powerpc/include/asm/pci-bridge.h | 1 +
arch/powerpc/kernel/pci-common.c | 10 +-
arch/sparc/kernel/pci.c | 4 +
arch/sparc/kernel/pci_impl.h | 1 +
arch/x86/pci/acpi.c | 11 +-
arch/x86/pci/amd_bus.c | 14 +-
arch/x86/pci/bus_numa.c | 30 ++-
arch/x86/pci/bus_numa.h | 4 +-
arch/x86/pci/common.c | 27 +--
drivers/parisc/dino.c | 5 +
drivers/parisc/lba_pci.c | 3 +
drivers/pci/hotplug/pciehp_pci.c | 12 +-
drivers/pci/probe.c | 439 +++++++++++++++++++++++++++------
drivers/pci/remove.c | 1 +
drivers/pcmcia/yenta_socket.c | 75 ------
include/linux/ioport.h | 8 +
include/linux/pci.h | 6 +
kernel/resource.c | 175 +++++++++++++-
19 files changed, 613 insertions(+), 215 deletions(-)
--
1.7.7
next reply other threads:[~2012-03-19 5:42 UTC|newest]
Thread overview: 89+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-19 5:42 Yinghai Lu [this message]
2012-03-19 5:42 ` [PATCH -v11 00/30] PCI: allocate pci bus num range for unassigned bridge busn Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 01/30] x86, PCI: Add print all root info for not using _CRS path Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 02/30] x86, PCI: Allocate temp range array in amd_bus pci_root_info probing Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 03/30] x86, PCI: Merge pcibios_scan_root and pci_scan_bus_on_node Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 04/30] PCI: Add busn_res into struct pci_bus Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-04-30 23:25 ` Bjorn Helgaas
2012-05-01 0:32 ` Yinghai Lu
2012-05-01 0:32 ` Yinghai Lu
2012-05-01 4:02 ` Bjorn Helgaas
2012-05-01 4:02 ` Bjorn Helgaas
2012-05-01 6:27 ` Yinghai Lu
2012-05-01 15:40 ` Bjorn Helgaas
2012-05-01 15:40 ` Bjorn Helgaas
2012-05-01 19:28 ` Yinghai Lu
2012-05-02 5:07 ` Yinghai Lu
2012-05-02 5:07 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 05/30] PCI: Add busn_res operation functions Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-04-30 23:29 ` Bjorn Helgaas
2012-04-30 23:29 ` Bjorn Helgaas
2012-05-01 0:34 ` Yinghai Lu
2012-05-01 7:19 ` Yinghai Lu
2012-05-01 7:19 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 06/30] PCI: Release busn_res when removing bus Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 07/30] PCI: Insert busn_res in pci_create_root_bus() Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 08/30] PCI: Checking busn_res in pci_scan_root_bus() Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 09/30] PCI: Add default busn_resource Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 10/30] PCI: Add default busn_res for pci_scan_bus() Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 11/30] x86, PCI: Add busn_res into resources list for acpi path Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 12/30] x86, PCI: Put busn resource in pci_root_info for not using _CRS path Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 13/30] PCI, ia64: Register busn_res for root buses Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 14/30] PCI, sparc: " Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 15/30] PCI, powerpc: " Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 16/30] PCI, parisc: " Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 17/30] resources: Add probe_resource() Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-05-01 23:57 ` Bjorn Helgaas
2012-05-01 23:57 ` Bjorn Helgaas
2012-05-02 5:19 ` Yinghai Lu
2012-05-02 5:19 ` Yinghai Lu
2012-05-02 7:01 ` Yinghai Lu
2012-05-02 15:14 ` Bjorn Helgaas
2012-05-02 15:14 ` Bjorn Helgaas
2012-03-19 5:42 ` [PATCH -v11 18/30] resources: Replace registered resource in tree Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 19/30] PCI: Add pci_bus_extend/shrink_top() Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 20/30] PCI: Probe safe range that we can use for unassigned bridge Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 21/30] PCI: Add pci_bus_replace_busn_res() Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 22/30] PCI: Allocate bus range instead of use max blindly Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 23/30] PCI: Strict checking of valid range for bridge Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 24/30] PCI: Kill pci_fixup_parent_subordinate_busnr() Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 25/30] PCI: Seperate child bus scanning to two passes overall Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 26/30] pcmcia: Remove workaround for fixing pci parent bus subordinate Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 27/30] PCI: Double checking setting for bus register and bus struct Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:42 ` [PATCH -v11 28/30] PCI, pciehp: Remove not needed bus number range checking Yinghai Lu
2012-03-19 5:42 ` Yinghai Lu
2012-03-19 5:43 ` [PATCH -v11 29/30] PCI: More strict checking of valid range for bridge Yinghai Lu
2012-03-19 5:43 ` Yinghai Lu
2012-03-19 5:43 ` [PATCH -v11 30/30] PCI: Don't shrink too much for hotplug bridge Yinghai Lu
2012-03-19 5:43 ` Yinghai Lu
2012-05-02 21:22 ` [PATCH -v11 00/30] PCI: allocate pci bus num range for unassigned bridge busn Bjorn Helgaas
2012-05-02 21:22 ` Bjorn Helgaas
2012-05-03 9:08 ` Yinghai Lu
2012-05-03 23:47 ` Bjorn Helgaas
2012-05-03 23:47 ` Bjorn Helgaas
2012-05-04 20:07 ` Yinghai Lu
2012-05-04 20:07 ` Yinghai Lu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1332135781-13695-1-git-send-email-yinghai@kernel.org \
--to=yinghai@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=benh@kernel.crashing.org \
--cc=bhelgaas@google.com \
--cc=davem@davemloft.net \
--cc=gregkh@linuxfoundation.org \
--cc=jbarnes@virtuousgeek.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux@dominikbrodowski.net \
--cc=tony.luck@intel.com \
--cc=torvalds@linux-foundation.org \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).