From 65d1d34596f31df641dd89b544bf246fe4c3065f Mon Sep 17 00:00:00 2001 From: Lang Cheng Date: Tue, 23 Apr 2019 20:03:02 +0800 Subject: [PATCH] RDMA/hns: Fixup bug of null point checking driver inclusion category: bugfix bugzilla: NA CVE: NA In addition to the error value, we should also check the ib_umem_get return null pointer. Signed-off-by: Lang Cheng Reviewed-by: Hanjun Guo Signed-off-by: Yang Yingliang --- drivers/infiniband/hw/hns/hns_roce_db.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/infiniband/hw/hns/hns_roce_db.c b/drivers/infiniband/hw/hns/hns_roce_db.c index 484aedb4909c..f02ce985ebb9 100644 --- a/drivers/infiniband/hw/hns/hns_roce_db.c +++ b/drivers/infiniband/hw/hns/hns_roce_db.c @@ -31,8 +31,11 @@ int hns_roce_db_map_user(struct hns_roce_ucontext *context, unsigned long virt, page->user_virt = (virt & PAGE_MASK); page->umem = ib_umem_get(&context->ibucontext, virt & PAGE_MASK, PAGE_SIZE, 0, 0); - if (IS_ERR(page->umem)) { - ret = PTR_ERR(page->umem); + if (IS_ERR_OR_NULL(page->umem)) { + if (!page->umem) + ret = -EINVAL; + else + ret = PTR_ERR(page->umem); kfree(page); goto out; } -- GitLab