summaryrefslogtreecommitdiff
path: root/drivers/mcb/mcb-parse.c
diff options
context:
space:
mode:
authorChristoph Jaeger <christophjaeger@linux.com>2014-04-11 20:40:05 +0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-04-16 23:28:47 +0400
commit7c7352827343b377446bb59b844d387df665e401 (patch)
tree3fc5e2cac5caaa9979557530f0025885ad500712 /drivers/mcb/mcb-parse.c
parent34ec43661fe8f1977dd0f05353302ae2ed10aabb (diff)
downloadlinux-7c7352827343b377446bb59b844d387df665e401.tar.xz
drivers: mcb: fix memory leak in chameleon_parse_cells() error path
chameleon_parse_cells() bails out if chameleon descriptor type is invalid but does not free the storage 'header' points to. Signed-off-by: Christoph Jaeger <christophjaeger@linux.com> Signed-off-by: Johannes Thumshirn <johannes.thumshirn@men.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/mcb/mcb-parse.c')
-rw-r--r--drivers/mcb/mcb-parse.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/mcb/mcb-parse.c b/drivers/mcb/mcb-parse.c
index d1278b5f3028..004926955263 100644
--- a/drivers/mcb/mcb-parse.c
+++ b/drivers/mcb/mcb-parse.c
@@ -141,6 +141,7 @@ int chameleon_parse_cells(struct mcb_bus *bus, phys_addr_t mapbase,
default:
pr_err("Invalid chameleon descriptor type 0x%x\n",
dtype);
+ kfree(header);
return -EINVAL;
}
num_cells++;