summaryrefslogtreecommitdiffstats
path: root/arch/sh
diff options
context:
space:
mode:
authorYinghai Lu <yinghai@kernel.org>2013-04-01 19:48:59 +0200
committerBjorn Helgaas <bhelgaas@google.com>2013-04-01 19:48:59 +0200
commit2cfda637e29ce9e3df31b59f64516b2e571cc985 (patch)
tree86b71ca895ad7925353eb72d5816b14a713e8b0d /arch/sh
parentLinux 3.9-rc4 (diff)
downloadlinux-2cfda637e29ce9e3df31b59f64516b2e571cc985.tar.xz
linux-2cfda637e29ce9e3df31b59f64516b2e571cc985.zip
EISA/PCI: Fix bus res reference
Matthew found that 3.8.3 is having problems with an old (ancient) PCI-to-EISA bridge, the Intel 82375. It worked with the 3.2 kernel. He identified the 82375, but doesn't assign the struct resource *res pointer inside the struct eisa_root_device, and panics. pci_eisa_init() was using bus->resource[] directly instead of pci_bus_resource_n(). The bus->resource[] array is a PCI-internal implementation detail, and after commit 45ca9e97 (PCI: add helpers for building PCI bus resource lists) and commit 0efd5aab (PCI: add struct pci_host_bridge_window with CPU/bus address offset), bus->resource[] is not used for PCI root buses any more. The 82375 is a subtractive-decode PCI device, so handle it the same way we handle PCI-PCI bridges in subtractive-decode mode in pci_read_bridge_bases(). [bhelgaas: changelog] Reported-by: Matthew Whitehead <mwhitehe@redhat.com> Tested-by: Matthew Whitehead <mwhitehe@redhat.com> Signed-off-by: Yinghai Lu <yinghai@kernel.org> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Cc: stable@vger.kernel.org # v3.3+
Diffstat (limited to 'arch/sh')
0 files changed, 0 insertions, 0 deletions