summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms
diff options
context:
space:
mode:
authorroel kluin <roel.kluin@gmail.com>2009-07-30 08:02:18 +0200
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2009-08-20 02:29:25 +0200
commit02a606c2c47a2e4714225d0c3513ca03679f01d2 (patch)
tree66956c5e420e06999986b1d2e0bdc5d3eabc049c /arch/powerpc/platforms
parentpowerpc/prom_init: Evaluate mem kernel parameter for early allocation (diff)
downloadlinux-02a606c2c47a2e4714225d0c3513ca03679f01d2.tar.xz
linux-02a606c2c47a2e4714225d0c3513ca03679f01d2.zip
powerpc: Missing tests for NULL after ioremap()
Missing tests after ioremap() Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc/platforms')
-rw-r--r--arch/powerpc/platforms/powermac/feature.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/arch/powerpc/platforms/powermac/feature.c b/arch/powerpc/platforms/powermac/feature.c
index 095de3227d83..fbc9bbd74dbd 100644
--- a/arch/powerpc/platforms/powermac/feature.c
+++ b/arch/powerpc/platforms/powermac/feature.c
@@ -2589,9 +2589,16 @@ static void __init probe_uninorth(void)
if (address == 0)
return;
uninorth_base = ioremap(address, 0x40000);
+ if (uninorth_base == NULL)
+ return;
uninorth_rev = in_be32(UN_REG(UNI_N_VERSION));
- if (uninorth_maj == 3 || uninorth_maj == 4)
+ if (uninorth_maj == 3 || uninorth_maj == 4) {
u3_ht_base = ioremap(address + U3_HT_CONFIG_BASE, 0x1000);
+ if (u3_ht_base == NULL) {
+ iounmap(uninorth_base);
+ return;
+ }
+ }
printk(KERN_INFO "Found %s memory controller & host bridge"
" @ 0x%08x revision: 0x%02x\n", uninorth_maj == 3 ? "U3" :