diff --git a/drivers/infiniband/core/verbs.c b/drivers/infiniband/core/verbs.c index 15dd26cab5d8..be18ed7c2326 100644 --- a/drivers/infiniband/core/verbs.c +++ b/drivers/infiniband/core/verbs.c @@ -1324,7 +1324,7 @@ static int ib_resolve_eth_dmac(struct ib_device *device, /** * ib_modify_qp_with_udata - Modifies the attributes for the specified QP. - * @qp: The QP to modify. + * @ib_qp: The QP to modify. * @attr: On input, specifies the QP attributes to modify. On output, * the current values of selected QP attributes are returned. * @attr_mask: A bit-mask used to specify which attributes of the QP @@ -1333,9 +1333,10 @@ static int ib_resolve_eth_dmac(struct ib_device *device, * are being modified. * It returns 0 on success and returns appropriate error code on error. */ -int ib_modify_qp_with_udata(struct ib_qp *qp, struct ib_qp_attr *attr, +int ib_modify_qp_with_udata(struct ib_qp *ib_qp, struct ib_qp_attr *attr, int attr_mask, struct ib_udata *udata) { + struct ib_qp *qp = ib_qp->real_qp; u8 port = attr_mask & IB_QP_PORT ? attr->port_num : qp->port; int ret;