git.openpandora.org
/
pandora-kernel.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
44334bd
)
RDMA/amso1100: Fix memory leak in c2_reg_phys_mr()
author
Roland Dreier
<rolandd@cisco.com>
Thu, 28 Sep 2006 17:44:07 +0000
(10:44 -0700)
committer
Roland Dreier
<rolandd@cisco.com>
Thu, 28 Sep 2006 17:44:07 +0000
(10:44 -0700)
If the allocation of mr fails, then c2_reg_phys_mr() leaks the
page_list array it allocated earlier.
This was Coverity CID #1413.
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/hw/amso1100/c2_provider.c
patch
|
blob
|
history
diff --git
a/drivers/infiniband/hw/amso1100/c2_provider.c
b/drivers/infiniband/hw/amso1100/c2_provider.c
index
622d6f1
..
da98d9f
100644
(file)
--- a/
drivers/infiniband/hw/amso1100/c2_provider.c
+++ b/
drivers/infiniband/hw/amso1100/c2_provider.c
@@
-390,8
+390,10
@@
static struct ib_mr *c2_reg_phys_mr(struct ib_pd *ib_pd,
}
mr = kmalloc(sizeof(*mr), GFP_KERNEL);
}
mr = kmalloc(sizeof(*mr), GFP_KERNEL);
- if (!mr)
+ if (!mr) {
+ vfree(page_list);
return ERR_PTR(-ENOMEM);
return ERR_PTR(-ENOMEM);
+ }
mr->pd = to_c2pd(ib_pd);
pr_debug("%s - page shift %d, pbl_depth %d, total_len %u, "
mr->pd = to_c2pd(ib_pd);
pr_debug("%s - page shift %d, pbl_depth %d, total_len %u, "