From: Dan Carpenter Date: Tue, 12 Jan 2016 09:27:43 +0000 (+0300) Subject: RDMA/nes: checking for NULL instead of IS_ERR X-Git-Tag: v4.14-rc1~3927^2~62 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=bc1251e6d9420fec4c6b328bcf9ea4e5bdecd30d;p=platform%2Fkernel%2Flinux-rpi.git RDMA/nes: checking for NULL instead of IS_ERR nes_reg_phys_mr() returns ERR_PTRs on error. It doesn't return NULL. This bug has been there for a while, but we recently changed from calling a function pointer to calling nes_reg_phys_mr() directly so now Smatch is able to detect the bug. Signed-off-by: Dan Carpenter Reviewed-by: Christoph Hellwig Signed-off-by: Doug Ledford --- diff --git a/drivers/infiniband/hw/nes/nes_cm.c b/drivers/infiniband/hw/nes/nes_cm.c index 179490d..cb9f0f2 100644 --- a/drivers/infiniband/hw/nes/nes_cm.c +++ b/drivers/infiniband/hw/nes/nes_cm.c @@ -3320,14 +3320,14 @@ int nes_accept(struct iw_cm_id *cm_id, struct iw_cm_conn_param *conn_param) nesqp->ietf_frame_pbase + mpa_frame_offset, buff_len, IB_ACCESS_LOCAL_WRITE, &tagged_offset); - if (!ibmr) { + if (IS_ERR(ibmr)) { nes_debug(NES_DBG_CM, "Unable to register memory region" "for lSMM for cm_node = %p \n", cm_node); pci_free_consistent(nesdev->pcidev, nesqp->private_data_len + nesqp->ietf_frame_size, nesqp->ietf_frame, nesqp->ietf_frame_pbase); - return -ENOMEM; + return PTR_ERR(ibmr); } ibmr->pd = &nespd->ibpd;