PCI updates for 3.5 merge window
Bjorn Helgaas
maintainerHi Linus,
Please pull the signed tag "pci-for-3.5" to get these PCI changes for the v3.5 merge window. I'm a newbie, so don't hesitate to help me improve my pull requests :)
The changes include:
- Host bridge cleanups from Yinghai
- Disable Bus Master bit on PCI device shutdown (kexec-related)
- Stratus ftServer fix
- pci_dev_reset() locking fix
- IvyBridge graphics erratum workaround
Bjorn
The following changes since commit 66f75a5d028beaf67c931435fdc3e7823125730c:
Linux 3.4-rc4 (2012-04-21 14:47:52 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git next
Bjorn Helgaas (6):
PCI: work around Stratus ftServer broken PCIe hierarchy Merge branch 'topic/yinghai-hostbridge-cleanup' into next
MAINTAINERS: update PCI git tree and patchwork Merge branch 'topic/stratus' into next
x86/PCI: only check for spinlock being held in SMP kernels microblaze/PCI: fix "io_offset undeclared" error
Chunhe Lan (1):
PCI: fix uninitialized variable 'cap_mask'
Khalid Aziz (1):
PCI: disable Bus Master on PCI device shutdown
Konrad Rzeszutek Wilk (1):
PCI: move mutex locking out of pci_dev_reset function
Wei Yang (1):
resources: add resource_overlaps()
Xudong Hao (1):
PCI: work around IvyBridge internal graphics FLR erratum
Yinghai Lu (12):
PCI: move host bridge-related code to host-bridge.c
x86/PCI: fix memleak with get_current_resources()
PCI: rename pci_host_bridge() to find_pci_root_bridge()
PCI: add generic device into pci_host_bridge struct
PCI: add host bridge release support
x86/PCI: refactor get_current_resources()
x86/PCI: add host bridge resource release for _CRS path x86/PCI: embed name into pci_root_info struct
x86/PCI: embed pci_sysdata into pci_root_info on ACPI path x86/PCI: dynamically allocate pci_root_info for native host bridge drivers x86/PCI: merge pcibios_scan_root() and pci_scan_bus_on_node() x86/PCI: fix unused variable warning in amd_bus.c
Documentation/kernel-parameters.txt | 3 + MAINTAINERS | 10 +-- arch/microblaze/pci/pci-common.c | 1 + arch/x86/pci/acpi.c | 128 ++++++++++++++++------------- arch/x86/pci/amd_bus.c | 91 +++++++++------------ arch/x86/pci/broadcom_bus.c | 12 +-- arch/x86/pci/bus_numa.c | 69 +++++++++++----- arch/x86/pci/bus_numa.h | 18 +++-- arch/x86/pci/common.c | 43 +++++----- arch/x86/pci/i386.c | 2 +- drivers/pci/Makefile | 2 +- drivers/pci/host-bridge.c | 96 ++++++++++++++++++++++ drivers/pci/pci-driver.c | 6 ++ drivers/pci/pci.c | 30 +++++--- drivers/pci/pcie/portdrv_core.c | 2 +- drivers/pci/probe.c | 154 ++++++++++------------------------- drivers/pci/quirks.c | 58 +++++++++++++ include/asm-generic/pci-bridge.h | 6 ++ include/linux/ioport.h | 7 ++ include/linux/pci.h | 9 ++- 20 files changed, 442 insertions(+), 305 deletions(-) create mode 100644 drivers/pci/host-bridge.c
Quoted 4 lines · Bjorn Helgaas
Please pull the signed tag "pci-for-3.5" to get these PCI changes for the v3.5 merge window. I'm a newbie, so don't hesitate to help me improve my pull requests :)
Looks fine, except please actually mention the tag itself on the repo pull line. IOW, not like this:
Quoted 1 line
git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git next
but simply
git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git tags/pci-for-3.5
otherwise it's much too easy for my to just cut-and-paste the line you supplied without noticing that there was a tag mentioned earlier..
Linus
Quoted 8 lines · Linus Torvalds
Looks fine, except please actually mention the tag itself on the repo pull line. IOW, not like this:
Quoted 1 line
git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git next
but simply
git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git tags/pci-for-3.5
git request-pull seems to look for branches before tags when generating this text. It just did exactly the same thing for me (since the tag I created also pointed to my "next" branch).
This would seem to be the common case for people following the rules and sending you stuff in the merge window that they have had cooking in linux-next. Can "request-pull" be smarter - or is their some magic I should be using on the "git request-pull" command line that will tell it that I really mean the tag and not the branch?
Or is "smarter" already in a newer version of git - I have:
$ git --version git version 1.7.9.5
-Tony
Quoted 5 lines · Tony Luck
Or is "smarter" already in a newer version of git - I have:
$ git --version git version 1.7.9.5
I think you want 1.7.10 for anything to do with tagged messages.
You can do everything with 1.7.9 (it can still handle the tags correctly), but it doesn't DTRT by default: you have to explicitly mention the "tag" part (ie you need to use "tags/xyz" instead of just "xyz"), and git pull-request doesn't realize that pulling a signed tag does more than just pulling the commit it points to etc etc. So with 1.7.9 you can make things work, but you would end up to work around the fact that the whole signed tag pulling wasn't really a real feature before that.
So 1.7.10 is when pulling a signed tag was really introduced: it's just that earlier versions can still *create* those tags (so the only one who *had* to have 1.7.10 was the person doing the pull).
I would strongly recommend just doing
git clone git://github.com/gitster/git
cd git
make
make install
as just a normal user (*NOT* as root), which will install git in your ~/bin directory. Then, just make sure that you have ~/bin in your PATH before /usr/bin, and you're all set. No need to mess with or worry about distro git binaries - leave them alone, but get the best and the brightest for your own use.
Linus
Quoted 6 lines · Linus Torvalds
I would strongly recommend just doing
git clone
git://github.com/gitster/git
cd git
make
make install
My distro needed some "curl" and "expat" bits added ... but that worked and I now have shiny new:
$ git --version git version 1.7.10.2.552.gaa3bb87
which does indeed have a smarter git request-pull.
Thanks
-Tony