From: David S. Miller Date: Tue, 16 Oct 2007 03:45:32 +0000 (-0700) Subject: [SPARC64]: Check of_get_property() return in pci_determine_mem_io_space(). X-Git-Tag: Ubuntu-snapdragon-4.4.0-1050.54~37002^2~3 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=4209ab098c61b1a9684bb4d3fc287352fc2438c3;p=mirror_ubuntu-artful-kernel.git [SPARC64]: Check of_get_property() return in pci_determine_mem_io_space(). If the PCI controller lacks the 'ranges' property nothing is going to work. Noticed by Al Viro. Signed-off-by: David S. Miller --- diff --git a/arch/sparc64/kernel/pci_common.c b/arch/sparc64/kernel/pci_common.c index c76bfbb7da08..923e0bcc3bfd 100644 --- a/arch/sparc64/kernel/pci_common.c +++ b/arch/sparc64/kernel/pci_common.c @@ -396,6 +396,13 @@ void pci_determine_mem_io_space(struct pci_pbm_info *pbm) saw_mem = saw_io = 0; pbm_ranges = of_get_property(pbm->prom_node, "ranges", &i); + if (!pbm_ranges) { + prom_printf("PCI: Fatal error, missing PBM ranges property " + " for %s\n", + pbm->name); + prom_halt(); + } + num_pbm_ranges = i / sizeof(*pbm_ranges); for (i = 0; i < num_pbm_ranges; i++) {