Bjorn Helgaas 6e347b5e05 PCI: iproc: Save host bridge window resource in struct iproc_pcie
The host bridge memory window resource is inserted into the iomem_resource
tree and cannot be deallocated until the host bridge itself is removed.

Previously, the window was on the stack, which meant the iomem_resource
entry pointed into the stack and was corrupted as soon as the probe
function returned, which caused memory corruption and errors like this:

  pcie_iproc_bcma bcma0:8: resource collision: [mem 0x40000000-0x47ffffff] conflicts with PCIe MEM space [mem 0x40000000-0x47ffffff]

Move the memory window resource from the stack into struct iproc_pcie so
its lifetime matches that of the host bridge.

Fixes: c3245a566400 ("PCI: iproc: Request host bridge window resources")
Reported-and-tested-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: stable@vger.kernel.org	# v4.8+
2017-03-09 11:27:07 -06:00
..
2015-08-13 15:59:59 -05:00
2017-03-02 08:56:04 -07:00
2016-12-12 11:25:04 -06:00
2017-02-23 11:53:22 -08:00
2016-12-15 12:46:48 -08:00
2014-06-10 20:20:19 -06:00
2017-02-23 11:53:22 -08:00
2016-11-29 18:05:09 -06:00
2017-01-14 11:37:18 +01:00
2016-06-20 13:24:20 -05:00