diff options
author | Myron Stowe <myron.stowe@redhat.com> | 2014-10-30 20:54:50 +0300 |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2014-11-20 01:07:42 +0300 |
commit | 7e79c5f8cad2ac1dc26c03e1aa16216391a04dad (patch) | |
tree | 72176348356d3958a4294b77dfdf6519dc3cf309 | |
parent | f795d86aaa578501551a2d1b463eac4bbea84db2 (diff) | |
download | linux-7e79c5f8cad2ac1dc26c03e1aa16216391a04dad.tar.xz |
PCI: Add informational printk for invalid BARs
As a consequence of restoring the detection of invalid BARs, add a new
informational printk like the following when such occurrences are
encountered.
pci ssss:bb:dd.f: [Firmware Bug]: reg 0xXX: invalid BAR (can't size)
Reported-by: William Unruh <unruh@physics.ubc.ca>
Reported-by: Martin Lucina <martin@lucina.net>
Signed-off-by: Myron Stowe <myron.stowe@redhat.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: Matthew Wilcox <willy@linux.intel.com>
-rw-r--r-- | drivers/pci/probe.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index 529fcd782e43..6029ad786146 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c @@ -247,8 +247,11 @@ int __pci_read_base(struct pci_dev *dev, enum pci_bar_type type, goto fail; sz64 = pci_size(l64, sz64, mask64); - if (!sz64) + if (!sz64) { + dev_info(&dev->dev, FW_BUG "reg 0x%x: invalid BAR (can't size)\n", + pos); goto fail; + } if (res->flags & IORESOURCE_MEM_64) { if ((sizeof(dma_addr_t) < 8 || sizeof(resource_size_t) < 8) && |