Lines Matching refs:sqp_ctx
1362 struct mlx4_ib_demux_pv_ctx *sqp_ctx;
1372 sqp_ctx = dev->sriov.sqps[port-1];
1375 if (!sqp_ctx || sqp_ctx->state != DEMUX_PV_STATE_ACTIVE)
1380 sqp = &sqp_ctx->qp[0];
1384 sqp = &sqp_ctx->qp[1];
1390 ah = rdma_zalloc_drv_obj(sqp_ctx->pd->device, ib_ah);
1394 ah->device = sqp_ctx->pd->device;
1395 ah->pd = sqp_ctx->pd;
1431 list.lkey = sqp_ctx->pd->local_dma_lkey;
2238 static void mlx4_ib_free_sqp_ctx(struct mlx4_ib_demux_pv_ctx *sqp_ctx)
2240 if (sqp_ctx->state > DEMUX_PV_STATE_DOWN) {
2241 sqp_ctx->state = DEMUX_PV_STATE_DOWNING;
2242 flush_workqueue(sqp_ctx->wq);
2243 if (sqp_ctx->has_smi) {
2244 ib_destroy_qp(sqp_ctx->qp[0].qp);
2245 sqp_ctx->qp[0].qp = NULL;
2246 mlx4_ib_free_pv_qp_bufs(sqp_ctx, IB_QPT_SMI, 0);
2248 ib_destroy_qp(sqp_ctx->qp[1].qp);
2249 sqp_ctx->qp[1].qp = NULL;
2250 mlx4_ib_free_pv_qp_bufs(sqp_ctx, IB_QPT_GSI, 0);
2251 ib_dealloc_pd(sqp_ctx->pd);
2252 sqp_ctx->pd = NULL;
2253 ib_destroy_cq(sqp_ctx->cq);
2254 sqp_ctx->cq = NULL;
2255 sqp_ctx->state = DEMUX_PV_STATE_DOWN;