From: Jack Morgenstein Date: Mon, 20 Mar 2006 15:32:43 +0000 (+0200) Subject: IB/mthca: Check SRQ limit in modify SRQ operation X-Git-Tag: v2.6.17-rc1~730^2~5 X-Git-Url: http://bbs.cooldavid.org/git/?a=commitdiff_plain;h=d4301e2c6685c87206f24f54969120b182119ab0;p=net-next-2.6.git IB/mthca: Check SRQ limit in modify SRQ operation When setting the shared receive queue (SRQ) watermark in a modify SRQ operation, make sure that the supplied value is not larger than the full size of the SRQ. Signed-off-by: Jack Morgenstein Signed-off-by: Roland Dreier --- diff --git a/drivers/infiniband/hw/mthca/mthca_srq.c b/drivers/infiniband/hw/mthca/mthca_srq.c index 4e671e00e42..0cfd1580221 100644 --- a/drivers/infiniband/hw/mthca/mthca_srq.c +++ b/drivers/infiniband/hw/mthca/mthca_srq.c @@ -358,6 +358,8 @@ int mthca_modify_srq(struct ib_srq *ibsrq, struct ib_srq_attr *attr, return -EINVAL; if (attr_mask & IB_SRQ_LIMIT) { + if (attr->srq_limit > srq->max) + return -EINVAL; ret = mthca_ARM_SRQ(dev, srq->srqn, attr->srq_limit, &status); if (ret) return ret;