Message ID | 1473417051-99560-4-git-send-email-salil.mehta@huawei.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
On Fri, Sep 09, 2016 at 06:30:34PM +0800, Salil Mehta wrote: > From: Lijun Ou <oulijun@huawei.com> > > The pointer ctrl may be null, so we add check for it. > > Signed-off-by: Lijun Ou <oulijun@huawei.com> > Reviewed-by: Wei Hu <xavier.huwei@huawei.com> > Signed-off-by: Salil Mehta <salil.mehta@huawei.com> > --- > drivers/infiniband/hw/hns/hns_roce_hw_v1.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/infiniband/hw/hns/hns_roce_hw_v1.c b/drivers/infiniband/hw/hns/hns_roce_hw_v1.c > index 5f76fc1..ea47ec4 100644 > --- a/drivers/infiniband/hw/hns/hns_roce_hw_v1.c > +++ b/drivers/infiniband/hw/hns/hns_roce_hw_v1.c > @@ -336,6 +336,12 @@ int hns_roce_v1_post_recv(struct ib_qp *ibqp, struct ib_recv_wr *wr, > } > > ctrl = get_recv_wqe(hr_qp, ind); > + if (unlikely(!ctrl)) { Yes, as you wrote, this check and patch are redundant too. > + dev_err(dev, "Get recv wqe failed!\n"); > + ret = -EINVAL; > + *bad_wr = wr; > + goto out; > + } > > roce_set_field(ctrl->rwqe_byte_12, > RQ_WQE_CTRL_RWQE_BYTE_12_RWQE_SGE_NUM_M, > -- > 1.7.9.5 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html
> -----Original Message----- > From: linux-rdma-owner@vger.kernel.org [mailto:linux-rdma- > owner@vger.kernel.org] On Behalf Of Leon Romanovsky > Sent: Thursday, September 15, 2016 11:08 AM > To: Salil Mehta > Cc: dledford@redhat.com; Huwei (Xavier); oulijun; Zhuangyuzeng (Yisen); > xuwei (O); mehta.salil.lnk@gmail.com; linux-rdma@vger.kernel.org; > linux-kernel@vger.kernel.org; Linuxarm > Subject: Re: [PATCH for-next 03/20] IB/hns: Add the check for pointer > ctrl > > On Fri, Sep 09, 2016 at 06:30:34PM +0800, Salil Mehta wrote: > > From: Lijun Ou <oulijun@huawei.com> > > > > The pointer ctrl may be null, so we add check for it. > > > > Signed-off-by: Lijun Ou <oulijun@huawei.com> > > Reviewed-by: Wei Hu <xavier.huwei@huawei.com> > > Signed-off-by: Salil Mehta <salil.mehta@huawei.com> > > --- > > drivers/infiniband/hw/hns/hns_roce_hw_v1.c | 6 ++++++ > > 1 file changed, 6 insertions(+) > > > > diff --git a/drivers/infiniband/hw/hns/hns_roce_hw_v1.c > b/drivers/infiniband/hw/hns/hns_roce_hw_v1.c > > index 5f76fc1..ea47ec4 100644 > > --- a/drivers/infiniband/hw/hns/hns_roce_hw_v1.c > > +++ b/drivers/infiniband/hw/hns/hns_roce_hw_v1.c > > @@ -336,6 +336,12 @@ int hns_roce_v1_post_recv(struct ib_qp *ibqp, > struct ib_recv_wr *wr, > > } > > > > ctrl = get_recv_wqe(hr_qp, ind); > > + if (unlikely(!ctrl)) { > > Yes, as you wrote, this check and patch are redundant too. I have dropped this patch in reworked V2 patch and introduced new patch to remove the redundant code as well in get_recv_wqe() and get_send_wqe(). Thanks Salil > > > + dev_err(dev, "Get recv wqe failed!\n"); > > + ret = -EINVAL; > > + *bad_wr = wr; > > + goto out; > > + } > > > > roce_set_field(ctrl->rwqe_byte_12, > > RQ_WQE_CTRL_RWQE_BYTE_12_RWQE_SGE_NUM_M, > > -- > > 1.7.9.5 > > > > -- > > To unsubscribe from this list: send the line "unsubscribe linux-rdma" > in > > the body of a message to majordomo@vger.kernel.org > > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/infiniband/hw/hns/hns_roce_hw_v1.c b/drivers/infiniband/hw/hns/hns_roce_hw_v1.c index 5f76fc1..ea47ec4 100644 --- a/drivers/infiniband/hw/hns/hns_roce_hw_v1.c +++ b/drivers/infiniband/hw/hns/hns_roce_hw_v1.c @@ -336,6 +336,12 @@ int hns_roce_v1_post_recv(struct ib_qp *ibqp, struct ib_recv_wr *wr, } ctrl = get_recv_wqe(hr_qp, ind); + if (unlikely(!ctrl)) { + dev_err(dev, "Get recv wqe failed!\n"); + ret = -EINVAL; + *bad_wr = wr; + goto out; + } roce_set_field(ctrl->rwqe_byte_12, RQ_WQE_CTRL_RWQE_BYTE_12_RWQE_SGE_NUM_M,