/freebsd/sys/ofed/drivers/infiniband/core/ |
H A D | ib_verbs.c | 727 srq->ext.xrc.xrcd = srq_init_attr->ext.xrc.xrcd; in ib_create_srq() 728 atomic_inc(&srq->ext.xrc.xrcd->usecnt); in ib_create_srq() 736 atomic_dec(&srq->ext.xrc.xrcd->usecnt); in ib_create_srq() 774 atomic_dec(&srq->ext.xrc.xrcd->usecnt); in ib_destroy_srq_user() 797 static void __ib_insert_xrcd_qp(struct ib_xrcd *xrcd, struct ib_qp *qp) in __ib_insert_xrcd_qp() argument 799 mutex_lock(&xrcd->tgt_qp_mutex); in __ib_insert_xrcd_qp() 800 list_add(&qp->xrcd_list, &xrcd->tgt_qp_list); in __ib_insert_xrcd_qp() 801 mutex_unlock(&xrcd->tgt_qp_mutex); in __ib_insert_xrcd_qp() 830 struct ib_qp *ib_open_qp(struct ib_xrcd *xrcd, in ib_open_qp() argument 839 mutex_lock(&xrcd->tgt_qp_mutex); in ib_open_qp() [all …]
|
H A D | ib_uverbs_cmd.c | 484 struct ib_xrcd *xrcd; member 490 struct ib_xrcd *xrcd) in xrcd_table_insert() argument 500 entry->xrcd = xrcd; in xrcd_table_insert() 551 return entry->xrcd; in find_xrcd() 573 struct ib_xrcd *xrcd = NULL; in ib_uverbs_open_xrcd() local 591 xrcd = find_xrcd(ibudev, vnode); in ib_uverbs_open_xrcd() 592 if (!xrcd && !(cmd.oflags & O_CREAT)) { in ib_uverbs_open_xrcd() 598 if (xrcd && cmd.oflags & O_EXCL) { in ib_uverbs_open_xrcd() 611 if (!xrcd) { in ib_uverbs_open_xrcd() 612 xrcd = ib_dev->alloc_xrcd(ib_dev, &attrs->driver_udata); in ib_uverbs_open_xrcd() [all …]
|
H A D | ib_uverbs_std_types.c | 172 struct ib_xrcd *xrcd = uobject->object; in uverbs_free_xrcd() local 182 ret = ib_uverbs_dealloc_xrcd(uobject, xrcd, why, attrs); in uverbs_free_xrcd()
|
H A D | uverbs.h | 239 int ib_uverbs_dealloc_xrcd(struct ib_uobject *uobject, struct ib_xrcd *xrcd,
|
/freebsd/contrib/ofed/libibverbs/ |
H A D | driver.h | 64 struct ibv_xrcd xrcd; member 81 struct verbs_xrcd *xrcd; member 99 struct verbs_xrcd *xrcd; member 164 int ibv_cmd_open_xrcd(struct ibv_context *context, struct verbs_xrcd *xrcd, 169 int ibv_cmd_close_xrcd(struct verbs_xrcd *xrcd);
|
H A D | cmd.c | 313 int ibv_cmd_open_xrcd(struct ibv_context *context, struct verbs_xrcd *xrcd, in ibv_cmd_open_xrcd() argument 335 xrcd->xrcd.context = context; in ibv_cmd_open_xrcd() 336 xrcd->comp_mask = 0; in ibv_cmd_open_xrcd() 338 xrcd->comp_mask = VERBS_XRCD_HANDLE; in ibv_cmd_open_xrcd() 339 xrcd->handle = resp->xrcd_handle; in ibv_cmd_open_xrcd() 345 int ibv_cmd_close_xrcd(struct verbs_xrcd *xrcd) in ibv_cmd_close_xrcd() argument 350 cmd.xrcd_handle = xrcd->handle; in ibv_cmd_close_xrcd() 352 if (write(xrcd->xrcd.context->cmd_fd, &cmd, sizeof cmd) != sizeof cmd) in ibv_cmd_close_xrcd() 704 vxrcd = container_of(attr_ex->xrcd, struct verbs_xrcd, xrcd); in ibv_cmd_create_srq_ex() 743 srq->xrcd = vxrcd; in ibv_cmd_create_srq_ex() [all …]
|
H A D | verbs.h | 673 struct ibv_xrcd *xrcd; member 819 struct ibv_xrcd *xrcd; member 837 struct ibv_xrcd *xrcd; member 1558 int (*close_xrcd)(struct ibv_xrcd *xrcd); 1729 static inline int ibv_close_xrcd(struct ibv_xrcd *xrcd) in ibv_close_xrcd() argument 1731 struct verbs_context *vctx = verbs_get_ctx(xrcd->context); in ibv_close_xrcd() 1732 return vctx->close_xrcd(xrcd); in ibv_close_xrcd()
|
/freebsd/contrib/ofed/libmlx4/ |
H A D | verbs.c | 232 struct verbs_xrcd *xrcd; in mlx4_open_xrcd() local 235 xrcd = calloc(1, sizeof *xrcd); in mlx4_open_xrcd() 236 if (!xrcd) in mlx4_open_xrcd() 239 ret = ibv_cmd_open_xrcd(context, xrcd, sizeof(*xrcd), attr, in mlx4_open_xrcd() 244 return &xrcd->xrcd; in mlx4_open_xrcd() 247 free(xrcd); in mlx4_open_xrcd() 253 struct verbs_xrcd *xrcd = container_of(ib_xrcd, struct verbs_xrcd, xrcd); in mlx4_close_xrcd() local 256 ret = ibv_cmd_close_xrcd(xrcd); in mlx4_close_xrcd() 258 free(xrcd); in mlx4_close_xrcd()
|
H A D | mlx4.h | 371 int mlx4_close_xrcd(struct ibv_xrcd *xrcd);
|
/freebsd/contrib/ofed/libibverbs/examples/ |
H A D | xsrq_pingpong.c | 83 struct ibv_xrcd *xrcd; member 148 init.xrcd = ctx.xrcd; in create_qps() 268 ctx.xrcd = ibv_open_xrcd(ctx.context, &xrcd_attr); in pp_init_ctx() 269 if (!ctx.xrcd) { in pp_init_ctx() 300 attr.xrcd = ctx.xrcd; in pp_init_ctx() 686 if (ctx.xrcd && ibv_close_xrcd(ctx.xrcd)) { in pp_close_ctx()
|
/freebsd/sys/dev/mlx4/mlx4_core/ |
H A D | mlx4_srq.c | 162 int mlx4_srq_alloc(struct mlx4_dev *dev, u32 pdn, u32 cqn, u16 xrcd, in mlx4_srq_alloc() argument 191 srq_context->xrcd = cpu_to_be16(xrcd); in mlx4_srq_alloc()
|
/freebsd/sys/dev/mlx4/mlx4_ib/ |
H A D | mlx4_ib_main.c | 1164 struct mlx4_ib_xrcd *xrcd; in mlx4_ib_alloc_xrcd() local 1171 xrcd = kmalloc(sizeof *xrcd, GFP_KERNEL); in mlx4_ib_alloc_xrcd() 1172 if (!xrcd) in mlx4_ib_alloc_xrcd() 1175 err = mlx4_xrcd_alloc(to_mdev(ibdev)->dev, &xrcd->xrcdn); in mlx4_ib_alloc_xrcd() 1179 xrcd->pd = ib_alloc_pd(ibdev, 0); in mlx4_ib_alloc_xrcd() 1180 if (IS_ERR(xrcd->pd)) { in mlx4_ib_alloc_xrcd() 1181 err = PTR_ERR(xrcd->pd); in mlx4_ib_alloc_xrcd() 1186 xrcd->cq = ib_create_cq(ibdev, NULL, NULL, xrcd, &cq_attr); in mlx4_ib_alloc_xrcd() 1187 if (IS_ERR(xrcd->cq)) { in mlx4_ib_alloc_xrcd() 1188 err = PTR_ERR(xrcd->cq); in mlx4_ib_alloc_xrcd() [all …]
|
H A D | mlx4_ib_srq.c | 183 to_mxrcd(init_attr->ext.xrc.xrcd)->xrcdn : in mlx4_ib_create_srq()
|
H A D | mlx4_ib_qp.c | 1001 return to_mpd(to_mxrcd(qp->ibqp.xrcd)->pd); in get_pd() 1011 *send_cq = to_mcq(to_mxrcd(qp->ibqp.xrcd)->cq); in get_cqs() 1181 pd = to_mxrcd(init_attr->xrcd)->pd; in _mlx4_ib_create_qp() 1182 xrcdn = to_mxrcd(init_attr->xrcd)->xrcdn; in _mlx4_ib_create_qp() 1183 init_attr->send_cq = to_mxrcd(init_attr->xrcd)->cq; in _mlx4_ib_create_qp() 1252 struct ib_device *device = pd ? pd->device : init_attr->xrcd->device; in mlx4_ib_create_qp() 1706 context->xrcd = cpu_to_be32((u32) qp->xrcdn); in __mlx4_ib_modify_qp()
|
/freebsd/sys/dev/mlx5/ |
H A D | srq.h | 44 u32 xrcd; member
|
H A D | qp.h | 531 __be32 xrcd; 522 __be32 xrcd; global() member
|
/freebsd/contrib/ofed/libmlx5/ |
H A D | verbs.c | 1789 struct verbs_xrcd *xrcd; in mlx5_open_xrcd() local 1793 xrcd = calloc(1, sizeof(*xrcd)); in mlx5_open_xrcd() 1794 if (!xrcd) in mlx5_open_xrcd() 1797 err = ibv_cmd_open_xrcd(context, xrcd, sizeof(*xrcd), xrcd_init_attr, in mlx5_open_xrcd() 1800 free(xrcd); in mlx5_open_xrcd() 1804 return &xrcd->xrcd; in mlx5_open_xrcd() 1809 struct verbs_xrcd *xrcd in mlx5_close_xrcd() local [all...] |
/freebsd/sys/dev/mlx5/mlx5_ib/ |
H A D | mlx5_ib_srq.c | 299 in.xrcd = to_mxrcd(init_attr->ext.xrc.xrcd)->xrcdn; in mlx5_ib_create_srq() 301 in.xrcd = to_mxrcd(dev->devr.x0)->xrcdn; in mlx5_ib_create_srq()
|
H A D | mlx5_ib_qp.c | 1805 MLX5_SET(qpc, qpc, xrcd, to_mxrcd(init_attr->xrcd)->xrcdn); in create_qp_common() 1809 MLX5_SET(qpc, qpc, xrcd, to_mxrcd(devr->x1)->xrcdn); in create_qp_common() 1814 MLX5_SET(qpc, qpc, xrcd, to_mxrcd(devr->x0)->xrcdn); in create_qp_common() 1817 MLX5_SET(qpc, qpc, xrcd, to_mxrcd(devr->x1)->xrcdn); in create_qp_common() 2123 dev = to_mdev(to_mxrcd(init_attr->xrcd)->ibxrcd.device); in mlx5_ib_create_qp() 2135 xrcdn = to_mxrcd(init_attr->xrcd)->xrcdn; in mlx5_ib_create_qp() 4635 struct mlx5_ib_xrcd *xrcd; in mlx5_ib_alloc_xrcd() local 4641 xrcd = kmalloc(sizeof(*xrcd), GFP_KERNEL); in mlx5_ib_alloc_xrcd() 4642 if (!xrcd) in mlx5_ib_alloc_xrcd() 4645 err = mlx5_core_xrcd_alloc(dev->mdev, &xrcd->xrcdn); in mlx5_ib_alloc_xrcd() [all …]
|
H A D | mlx5_ib_cq.c | 176 if (qp->ibqp.srq || qp->ibqp.xrcd) { in handle_responder() 179 if (qp->ibqp.xrcd) { in handle_responder()
|
/freebsd/contrib/ofed/librdmacm/ |
H A D | cma.c | 81 struct ibv_xrcd *xrcd; member 423 if (cma_dev->xrcd) in ucma_put_device() 424 ibv_close_xrcd(cma_dev->xrcd); in ucma_put_device() 434 if (!cma_dev->xrcd) { in ucma_get_xrcd() 439 cma_dev->xrcd = ibv_open_xrcd(cma_dev->verbs, &attr); in ucma_get_xrcd() 442 return cma_dev->xrcd; in ucma_get_xrcd() 1272 if (!(attr->comp_mask & IBV_SRQ_INIT_ATTR_XRCD) || !attr->xrcd) { in rdma_create_srq_ex() 1273 attr->xrcd = ucma_get_xrcd(id_priv->cma_dev); in rdma_create_srq_ex() 1274 if (!attr->xrcd) in rdma_create_srq_ex() 1349 if (!(attr->comp_mask & IBV_QP_INIT_ATTR_XRCD) || !attr->xrcd) { in rdma_create_qp_ex() [all …]
|
/freebsd/sys/dev/mlx5/mlx5_core/ |
H A D | mlx5_srq.c | 83 MLX5_SET(srqc, srqc, xrcd, in->xrcd); in set_srqc()
|
H A D | mlx5_qp.c | 342 *xrcdn = MLX5_GET(alloc_xrcd_out, out, xrcd); in mlx5_core_xrcd_alloc() 353 MLX5_SET(dealloc_xrcd_in, in, xrcd, xrcdn); in mlx5_core_xrcd_dealloc()
|
/freebsd/sys/ofed/include/rdma/ |
H A D | ib_verbs.h | 955 struct ib_xrcd *xrcd; member 1049 struct ib_xrcd *xrcd; /* XRC TGT QPs only */ member 1491 struct ib_xrcd *xrcd; member 1589 struct ib_xrcd *xrcd; /* XRC TGT QPs only */ member 2339 int (*dealloc_xrcd)(struct ib_xrcd *xrcd, struct ib_udata *udata); 3249 struct ib_qp *ib_open_qp(struct ib_xrcd *xrcd, 3887 int ib_dealloc_xrcd(struct ib_xrcd *xrcd, struct ib_udata *udata);
|
/freebsd/sys/dev/mlx4/ |
H A D | qp.h | 218 __be32 xrcd; member
|