aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/ulp
diff options
context:
space:
mode:
authorWei Yongjun <weiyongjun1@huawei.com>2020-05-19 09:19:12 +0000
committerJason Gunthorpe <jgg@mellanox.com>2020-05-19 20:42:25 -0300
commit6b31afcef51e578e936e66c347ab333c024963da (patch)
tree7c1938fe72768437d659634713c3c031cec5396b /drivers/infiniband/ulp
parentRDMA/rtrs: client: Fix function return on success (diff)
downloadlinux-dev-6b31afcef51e578e936e66c347ab333c024963da.tar.xz
linux-dev-6b31afcef51e578e936e66c347ab333c024963da.zip
RDMA/rtrs: server: Fix some error return code
Fix to return negative error code -ENOMEM from the some error handling cases instead of 0, as done elsewhere in this function. Fixes: 9cb837480424 ("RDMA/rtrs: server: main functionality") Fixes: 91b11610af8d ("RDMA/rtrs: server: sysfs interface functions") Link: https://lore.kernel.org/r/20200519091912.134358-1-weiyongjun1@huawei.com Reported-by: Hulk Robot <hulkci@huawei.com> Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com> Reviewed-by: Danil Kipnis <danil.kipnis@cloud.ionos.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'drivers/infiniband/ulp')
-rw-r--r--drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c1
-rw-r--r--drivers/infiniband/ulp/rtrs/rtrs-srv.c8
2 files changed, 6 insertions, 3 deletions
diff --git a/drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c b/drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c
index 0cf015634338..3d7877534bcc 100644
--- a/drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c
+++ b/drivers/infiniband/ulp/rtrs/rtrs-srv-sysfs.c
@@ -189,6 +189,7 @@ static int rtrs_srv_create_once_sysfs_root_folders(struct rtrs_srv_sess *sess)
}
srv->kobj_paths = kobject_create_and_add("paths", &srv->dev.kobj);
if (!srv->kobj_paths) {
+ err = -ENOMEM;
pr_err("kobject_create_and_add(): %d\n", err);
device_unregister(&srv->dev);
goto unlock;
diff --git a/drivers/infiniband/ulp/rtrs/rtrs-srv.c b/drivers/infiniband/ulp/rtrs/rtrs-srv.c
index 863b3942e333..1fc6ece036ff 100644
--- a/drivers/infiniband/ulp/rtrs/rtrs-srv.c
+++ b/drivers/infiniband/ulp/rtrs/rtrs-srv.c
@@ -660,8 +660,8 @@ static int map_cont_bufs(struct rtrs_srv_sess *sess)
GFP_KERNEL, sess->s.dev->ib_dev,
DMA_TO_DEVICE, rtrs_srv_rdma_done);
if (!srv_mr->iu) {
- rtrs_err(ss, "rtrs_iu_alloc(), err: %d\n",
- -ENOMEM);
+ err = -ENOMEM;
+ rtrs_err(ss, "rtrs_iu_alloc(), err: %d\n", err);
goto free_iu;
}
}
@@ -2150,8 +2150,10 @@ static int __init rtrs_server_init(void)
goto out_chunk_pool;
}
rtrs_wq = alloc_workqueue("rtrs_server_wq", WQ_MEM_RECLAIM, 0);
- if (!rtrs_wq)
+ if (!rtrs_wq) {
+ err = -ENOMEM;
goto out_dev_class;
+ }
return 0;