Lines Matching refs:bind_info
422 int32_t rkey, struct ibv_mw_bind_info *bind_info, in set_umr_data_seg() argument
430 data->klm.byte_count = htobe32(bind_info->length); in set_umr_data_seg()
431 data->klm.mkey = htobe32(bind_info->mr->lkey); in set_umr_data_seg()
432 data->klm.address = htobe64(bind_info->addr); in set_umr_data_seg()
442 int32_t rkey, struct ibv_mw_bind_info *bind_info, in set_umr_mkey_seg() argument
448 ((type == IBV_MW_TYPE_1 || !bind_info->length) ? in set_umr_mkey_seg()
450 if (bind_info->length) { in set_umr_mkey_seg()
454 if (bind_info->mw_access_flags & IBV_ACCESS_LOCAL_WRITE) in set_umr_mkey_seg()
457 if (bind_info->mw_access_flags & IBV_ACCESS_REMOTE_WRITE) in set_umr_mkey_seg()
460 if (bind_info->mw_access_flags & IBV_ACCESS_REMOTE_READ) in set_umr_mkey_seg()
463 if (bind_info->mw_access_flags & IBV_ACCESS_REMOTE_ATOMIC) in set_umr_mkey_seg()
466 if (bind_info->mw_access_flags & IBV_ACCESS_ZERO_BASED) in set_umr_mkey_seg()
469 mkey->start_addr = htobe64(bind_info->addr); in set_umr_mkey_seg()
470 mkey->len = htobe64(bind_info->length); in set_umr_mkey_seg()
480 int32_t rkey, struct ibv_mw_bind_info *bind_info, in set_umr_control_seg() argument
496 if (bind_info->length) { in set_umr_control_seg()
517 int32_t rkey, struct ibv_mw_bind_info *bind_info, in set_bind_wr() argument
523 if (bind_info->mw_access_flags & in set_bind_wr()
528 if (bind_info->mr && in set_bind_wr()
529 (bind_info->mr->addr > (void *)bind_info->addr || in set_bind_wr()
530 bind_info->mr->addr + bind_info->mr->length < in set_bind_wr()
531 (void *)bind_info->addr + bind_info->length || in set_bind_wr()
532 !(to_mmr(bind_info->mr)->alloc_flags & IBV_ACCESS_MW_BIND) || in set_bind_wr()
533 (bind_info->mw_access_flags & in set_bind_wr()
535 !(to_mmr(bind_info->mr)->alloc_flags & IBV_ACCESS_LOCAL_WRITE)))) in set_bind_wr()
541 if (bind_info->length > 1UL << 31) in set_bind_wr()
544 set_umr_control_seg(qp, type, rkey, bind_info, qpn, seg, size); in set_bind_wr()
548 set_umr_mkey_seg(qp, type, rkey, bind_info, qpn, seg, size); in set_bind_wr()
549 if (!bind_info->length) in set_bind_wr()
555 set_umr_data_seg(qp, type, rkey, bind_info, qpn, seg, size); in set_bind_wr()
732 &wr->bind_mw.bind_info, in _mlx5_post_send()
742 struct ibv_mw_bind_info bind_info = {}; in _mlx5_post_send() local
747 &bind_info, ibqp->qp_num, in _mlx5_post_send()
777 &wr->bind_mw.bind_info, in _mlx5_post_send()
787 struct ibv_mw_bind_info bind_info = {}; in _mlx5_post_send() local
792 &bind_info, ibqp->qp_num, in _mlx5_post_send()
977 if (!wr->bind_mw.bind_info.mr || in mlx5_post_send()
978 !wr->bind_mw.bind_info.addr || in mlx5_post_send()
979 !wr->bind_mw.bind_info.length) in mlx5_post_send()
982 if (wr->bind_mw.bind_info.mr->pd != wr->bind_mw.mw->pd) in mlx5_post_send()
993 struct ibv_mw_bind_info *bind_info = &mw_bind->bind_info; in mlx5_bind_mw() local
998 if (!bind_info->mr && (bind_info->addr || bind_info->length)) { in mlx5_bind_mw()
1003 if (bind_info->mw_access_flags & IBV_ACCESS_ZERO_BASED) { in mlx5_bind_mw()
1008 if (bind_info->mr) { in mlx5_bind_mw()
1009 if (to_mmr(bind_info->mr)->alloc_flags & IBV_ACCESS_ZERO_BASED) { in mlx5_bind_mw()
1014 if (mw->pd != bind_info->mr->pd) { in mlx5_bind_mw()
1024 wr.bind_mw.bind_info = mw_bind->bind_info; in mlx5_bind_mw()