From: Robert Walsh Date: Thu, 15 Mar 2007 21:45:16 +0000 (-0700) Subject: IB/ipath: Check that a UD work request's address handle is valid X-Git-Tag: v2.6.22-rc1~1126^2~14 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=6ce73b07db7aa05d4a30716d6a99c832b6d9db4a;p=~emulex%2Finfiniband.git IB/ipath: Check that a UD work request's address handle is valid Signed-off-by: Bryan O'Sullivan Signed-off-by: Roland Dreier --- diff --git a/drivers/infiniband/hw/ipath/ipath_ud.c b/drivers/infiniband/hw/ipath/ipath_ud.c index 57625b8c1b9..a518f7c8fa8 100644 --- a/drivers/infiniband/hw/ipath/ipath_ud.c +++ b/drivers/infiniband/hw/ipath/ipath_ud.c @@ -308,6 +308,11 @@ int ipath_post_ud_send(struct ipath_qp *qp, struct ib_send_wr *wr) goto bail; } + if (wr->wr.ud.ah->pd != qp->ibqp.pd) { + ret = -EPERM; + goto bail; + } + /* IB spec says that num_sge == 0 is OK. */ if (wr->num_sge > qp->s_max_sge) { ret = -EINVAL;