aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/of
diff options
context:
space:
mode:
authorMichael Ellerman <mpe@ellerman.id.au>2015-11-10 00:08:33 -0500
committerRob Herring <robh@kernel.org>2015-11-10 18:23:47 -0500
commit85a1c77fb8c4ae91d203fd0e8c3b54b50662d3c6 (patch)
tree3b18107cf712bce30542eae4bc43764e23cff0ed /drivers/of
parent87ab5205e620f0936f5c65c9d6c7b341dca9d5f9 (diff)
of: Print rather than WARN'ing when overlap check fails
__rmem_check_for_overlap() is called very early in boot, and on some powerpc systems it's not safe to call WARN that early in boot. If the overlap check fails the system will oops instead of printing a warning. Furthermore because it's so early in boot the console is not up and the user doesn't see the oops, they just get a dead system. Fix it by printing an error instead of calling WARN. Fixes: ae1add247bf8 ("of: Check for overlap in reserved memory regions") Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Signed-off-by: Rob Herring <robh@kernel.org>
Diffstat (limited to 'drivers/of')
-rw-r--r--drivers/of/of_reserved_mem.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/of/of_reserved_mem.c b/drivers/of/of_reserved_mem.c
index 62f467b8ccae..49703916a30e 100644
--- a/drivers/of/of_reserved_mem.c
+++ b/drivers/of/of_reserved_mem.c
@@ -226,10 +226,9 @@ static void __init __rmem_check_for_overlap(void)
226 226
227 this_end = this->base + this->size; 227 this_end = this->base + this->size;
228 next_end = next->base + next->size; 228 next_end = next->base + next->size;
229 WARN(1, 229 pr_err("Reserved memory: OVERLAP DETECTED!\n%s (%pa--%pa) overlaps with %s (%pa--%pa)\n",
230 "Reserved memory: OVERLAP DETECTED!\n%s (%pa--%pa) overlaps with %s (%pa--%pa)\n", 230 this->name, &this->base, &this_end,
231 this->name, &this->base, &this_end, 231 next->name, &next->base, &next_end);
232 next->name, &next->base, &next_end);
233 } 232 }
234 } 233 }
235} 234}