summaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw
diff options
context:
space:
mode:
authorYann Droneaud <[mailto:ydroneaud@opteya.com]>2014-03-28 19:55:21 +0100
committerDavid S. Miller <davem@davemloft.net>2014-03-28 19:55:21 +0100
commitbfd2793c9559ae73ae021797f1d4b097c27f24be (patch)
treed352f4b3e46573880cd4efe67eb81235e7e22937 /drivers/infiniband/hw
parentMerge branch 'tipc-next' (diff)
downloadlinux-bfd2793c9559ae73ae021797f1d4b097c27f24be.tar.xz
linux-bfd2793c9559ae73ae021797f1d4b097c27f24be.zip
RDMA/cxgb4: set error code on kmalloc() failure
If kmalloc() fails in c4iw_alloc_ucontext(), the function leaves but does not set an error code in ret variable: it will return 0 to the caller. This patch set ret to -ENOMEM in such case. Cc: Steve Wise <swise@opengridcomputing.com> Cc: Steve Wise <swise@chelsio.com> Signed-off-by: Yann Droneaud <ydroneaud@opteya.com> Acked-by: Steve Wise <swise@opengridcomputing.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/infiniband/hw')
-rw-r--r--drivers/infiniband/hw/cxgb4/provider.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/cxgb4/provider.c b/drivers/infiniband/hw/cxgb4/provider.c
index e36d2a27c431..79429256023a 100644
--- a/drivers/infiniband/hw/cxgb4/provider.c
+++ b/drivers/infiniband/hw/cxgb4/provider.c
@@ -128,8 +128,10 @@ static struct ib_ucontext *c4iw_alloc_ucontext(struct ib_device *ibdev,
rhp->rdev.flags |= T4_STATUS_PAGE_DISABLED;
} else {
mm = kmalloc(sizeof(*mm), GFP_KERNEL);
- if (!mm)
+ if (!mm) {
+ ret = -ENOMEM;
goto err_free;
+ }
uresp.status_page_size = PAGE_SIZE;