From 7f90b1030a57c3459cc667a3e66877d22f55240b Mon Sep 17 00:00:00 2001 From: Sean Hefty Date: Thu, 27 Sep 2012 11:50:26 -0700 Subject: [PATCH] Refresh of open_qp --- src/cmd.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/cmd.c b/src/cmd.c index a3e6611..1822375 100644 --- a/src/cmd.c +++ b/src/cmd.c @@ -814,6 +814,7 @@ int ibv_cmd_open_qp(struct verbs_context *context, struct verbs_qp *qp, struct ibv_open_qp *cmd, size_t cmd_size, struct ibv_create_qp_resp *resp, size_t resp_size) { + struct verbs_xrcd *xrcd; IBV_INIT_CMD_RESP(cmd, cmd_size, OPEN_QP, resp, resp_size); if (attr->comp_mask >= IBV_QP_OPEN_ATTR_RESERVED) @@ -824,8 +825,9 @@ int ibv_cmd_open_qp(struct verbs_context *context, struct verbs_qp *qp, !(attr->comp_mask & IBV_QP_OPEN_ATTR_TYPE)) return EINVAL; + xrcd = container_of(attr->xrcd, struct verbs_xrcd, xrcd); cmd->user_handle = (uintptr_t) qp; - cmd->pd_handle = attr->xrcd->handle; + cmd->pd_handle = xrcd->handle; cmd->qpn = attr->qp_num; cmd->qp_type = attr->qp_type; @@ -847,7 +849,7 @@ int ibv_cmd_open_qp(struct verbs_context *context, struct verbs_qp *qp, pthread_mutex_init(&qp->qp.mutex, NULL); pthread_cond_init(&qp->qp.cond, NULL); qp->comp_mask = VERBS_QP_XRCD; - qp->xrcd = container_of(attr->xrcd, struct verbs_xrcd, xrcd); + qp->xrcd = xrcd; return 0; } -- 2.41.0