summaryrefslogtreecommitdiffstats
path: root/sys/powerpc/booke
diff options
context:
space:
mode:
authorraj <raj@FreeBSD.org>2012-05-30 18:05:48 +0000
committerraj <raj@FreeBSD.org>2012-05-30 18:05:48 +0000
commit4542634c3c12e63b2158a6133f0db8e2cb14a346 (patch)
tree767f9f19d9c87e18d5907bf3665dcc131bd0aa2e /sys/powerpc/booke
parent76640cb48b9113f0c84a50175e359b5771b9b5c4 (diff)
downloadFreeBSD-src-4542634c3c12e63b2158a6133f0db8e2cb14a346.zip
FreeBSD-src-4542634c3c12e63b2158a6133f0db8e2cb14a346.tar.gz
Panic openly if we cannot retrieve memory information from the device tree.
This is a critical condition and can lead to all sorts of misterious hangs if not handled. Obtained from: Semihalf Also reported by: thompsa
Diffstat (limited to 'sys/powerpc/booke')
-rw-r--r--sys/powerpc/booke/platform_bare.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/powerpc/booke/platform_bare.c b/sys/powerpc/booke/platform_bare.c
index 7b98059..ebc5e11 100644
--- a/sys/powerpc/booke/platform_bare.c
+++ b/sys/powerpc/booke/platform_bare.c
@@ -76,7 +76,7 @@ static int bare_smp_start_cpu(platform_t, struct pcpu *cpu);
static void booke_reset(platform_t);
static platform_method_t bare_methods[] = {
- PLATFORMMETHOD(platform_probe, bare_probe),
+ PLATFORMMETHOD(platform_probe, bare_probe),
PLATFORMMETHOD(platform_mem_regions, bare_mem_regions),
PLATFORMMETHOD(platform_timebase_freq, bare_timebase_freq),
@@ -143,9 +143,9 @@ bare_mem_regions(platform_t plat, struct mem_region **phys, int *physsz,
int i, rv;
rv = fdt_get_mem_regions(avail_regions, availsz, &memsize);
-
if (rv != 0)
- return;
+ panic("%s: could not retrieve mem regions from the 'memory' "
+ "node, error: %d", __func__, rv);
for (i = 0; i < *availsz; i++) {
if (avail_regions[i].mr_start < 1048576) {
OpenPOWER on IntegriCloud