diff options
author | Roel Kluin <12o3l@tiscali.nl> | 2007-10-27 10:22:13 -0400 |
---|---|---|
committer | Josh Boyer <jwboyer@linux.vnet.ibm.com> | 2007-11-01 08:14:09 -0400 |
commit | 57d75561be5496289601b2c94787ec38c718fcae (patch) | |
tree | 5be9e7df59be6dba1ba64597fba90009f740729c /arch/ppc | |
parent | d1dfc35d3a62122b85ca975b80dcbf4a0da0bebc (diff) |
[POWERPC] allocation fix in ppc/platforms/4xx/luan.c
Don't allocate hose2 when when hose1 can't be allocated and free hose1 when
hose2 can't be allocated.
Signed-off-by: Roel Kluin <12o3l@tiscali.nl>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
Diffstat (limited to 'arch/ppc')
-rw-r--r-- | arch/ppc/platforms/4xx/luan.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/ppc/platforms/4xx/luan.c b/arch/ppc/platforms/4xx/luan.c index 4b169610f154..b79ebb8a3e6c 100644 --- a/arch/ppc/platforms/4xx/luan.c +++ b/arch/ppc/platforms/4xx/luan.c | |||
@@ -230,9 +230,14 @@ luan_setup_hoses(void) | |||
230 | 230 | ||
231 | /* Allocate hoses for PCIX1 and PCIX2 */ | 231 | /* Allocate hoses for PCIX1 and PCIX2 */ |
232 | hose1 = pcibios_alloc_controller(); | 232 | hose1 = pcibios_alloc_controller(); |
233 | if (!hose1) | ||
234 | return; | ||
235 | |||
233 | hose2 = pcibios_alloc_controller(); | 236 | hose2 = pcibios_alloc_controller(); |
234 | if (!hose1 || !hose2) | 237 | if (!hose2) { |
238 | pcibios_free_controller(hose1); | ||
235 | return; | 239 | return; |
240 | } | ||
236 | 241 | ||
237 | /* Setup PCIX1 */ | 242 | /* Setup PCIX1 */ |
238 | hose1->first_busno = 0; | 243 | hose1->first_busno = 0; |