diff options
author | Alan Cox <alan@lxorguk.ukuu.org.uk> | 2009-03-23 06:44:07 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-03-24 18:52:27 -0400 |
commit | b23c7a427e4b3764ad686a46de89ab652811c50a (patch) | |
tree | bfe9e189c92d55be27e034a6f4dfdc6e08164b80 /arch/arm/mach-iop13xx | |
parent | ecbf61e7357d5c7047c813edd6983902d158688c (diff) |
[ARM] fix leak in iop13xx/pci
Another leak found by Daniel Marjamäki
Signed-off-by: Alan Cox <alan@lxorguk.ukuu.org.uk>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-iop13xx')
-rw-r--r-- | arch/arm/mach-iop13xx/pci.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/arm/mach-iop13xx/pci.c b/arch/arm/mach-iop13xx/pci.c index 673b0db22034..4873f26a42e1 100644 --- a/arch/arm/mach-iop13xx/pci.c +++ b/arch/arm/mach-iop13xx/pci.c | |||
@@ -1026,8 +1026,10 @@ int iop13xx_pci_setup(int nr, struct pci_sys_data *sys) | |||
1026 | which_atu = 0; | 1026 | which_atu = 0; |
1027 | } | 1027 | } |
1028 | 1028 | ||
1029 | if (!which_atu) | 1029 | if (!which_atu) { |
1030 | kfree(res); | ||
1030 | return 0; | 1031 | return 0; |
1032 | } | ||
1031 | 1033 | ||
1032 | switch(which_atu) { | 1034 | switch(which_atu) { |
1033 | case IOP13XX_INIT_ATU_ATUX: | 1035 | case IOP13XX_INIT_ATU_ATUX: |
@@ -1074,6 +1076,7 @@ int iop13xx_pci_setup(int nr, struct pci_sys_data *sys) | |||
1074 | sys->map_irq = iop13xx_pcie_map_irq; | 1076 | sys->map_irq = iop13xx_pcie_map_irq; |
1075 | break; | 1077 | break; |
1076 | default: | 1078 | default: |
1079 | kfree(res); | ||
1077 | return 0; | 1080 | return 0; |
1078 | } | 1081 | } |
1079 | 1082 | ||