Message ID | adazllcku0c.fsf@cisco.com (mailing list archive) |
---|---|
State | Accepted, archived |
Commit | 0540bbbe455e123a1692d26205ad1a29983883b0 |
Headers | show |
Hi Roland, That looks good to me. Thanks for all help. Nam On Friday 10 October 2008 23:41, Roland Dreier wrote: > thanks, applied -- it didn't apply to the latest tree, because of the > flush CQE changes, so I merged it manually as below -- let me know if > this is wrong: > > commit 0540bbbe455e123a1692d26205ad1a29983883b0 > Author: Hoang-Nam Nguyen <hnguyen@linux.vnet.ibm.com> > Date: Fri Oct 10 14:40:39 2008 -0700 > > IB/ehca: Don't allow creating UC QP with SRQ > > This patch prevents a UC QP to be created attached to an SRQ, since > current firmware does not support this feature. > > Signed-off-by: Michael Faath <micfaath@de.ibm.com> > Signed-off-by: Roland Dreier <rolandd@cisco.com> > > diff --git a/drivers/infiniband/hw/ehca/ehca_qp.c b/drivers/infiniband/hw/ehca/ehca_qp.c > index 4dbe287..40b578d 100644 > --- a/drivers/infiniband/hw/ehca/ehca_qp.c > +++ b/drivers/infiniband/hw/ehca/ehca_qp.c > @@ -502,6 +502,12 @@ static struct ehca_qp *internal_create_qp( > if (init_attr->srq) { > my_srq = container_of(init_attr->srq, struct ehca_qp, ib_srq); > > + if (qp_type == IB_QPT_UC) { > + ehca_err(pd->device, "UC with SRQ not supported"); > + atomic_dec(&shca->num_qps); > + return ERR_PTR(-EINVAL); > + } > + > has_srq = 1; > parms.ext_type = EQPT_SRQBASE; > parms.srq_qpn = my_srq->real_qp_num; >
diff --git a/drivers/infiniband/hw/ehca/ehca_qp.c b/drivers/infiniband/hw/ehca/ehca_qp.c index 4dbe287..40b578d 100644 --- a/drivers/infiniband/hw/ehca/ehca_qp.c +++ b/drivers/infiniband/hw/ehca/ehca_qp.c @@ -502,6 +502,12 @@ static struct ehca_qp *internal_create_qp( if (init_attr->srq) { my_srq = container_of(init_attr->srq, struct ehca_qp, ib_srq); + if (qp_type == IB_QPT_UC) { + ehca_err(pd->device, "UC with SRQ not supported"); + atomic_dec(&shca->num_qps); + return ERR_PTR(-EINVAL); + } + has_srq = 1; parms.ext_type = EQPT_SRQBASE; parms.srq_qpn = my_srq->real_qp_num;