/illumos-gate/usr/src/uts/common/io/ib/mgt/ibcm/ |
H A D | ibcm_impl.c | 59 static ibt_status_t ibcm_hca_init_port(ibcm_hca_info_t *hcap, 61 static ibcm_status_t ibcm_hca_fini_port(ibcm_hca_info_t *hcap, 71 static ibcm_status_t ibcm_check_avl_clean(ibcm_hca_info_t *hcap); 72 static ibcm_status_t ibcm_check_sidr_clean(ibcm_hca_info_t *hcap); 789 ibcm_hca_info_t *hcap, *next; in ibcm_fini_hcas() local 795 hcap = ibcm_hca_listp; in ibcm_fini_hcas() 796 while (hcap != NULL) { in ibcm_fini_hcas() 797 next = hcap->hca_next; in ibcm_fini_hcas() 798 if (ibcm_hca_detach(hcap) != IBCM_SUCCESS) { in ibcm_fini_hcas() 799 ibcm_hca_listp = hcap; in ibcm_fini_hcas() [all …]
|
H A D | ibcm_utils.c | 84 ib_qpn_t remote_qpn, ib_guid_t remote_hca_guid, ibcm_hca_info_t *hcap, in ibcm_lookup_msg() argument 95 ASSERT(rw_lock_held(&hcap->hca_state_rwlock)); in ibcm_lookup_msg() 121 sp = avl_find(&hcap->hca_passive_tree, &info, &where); in ibcm_lookup_msg() 130 sp = avl_find(&hcap->hca_passive_comid_tree, &info, &where); in ibcm_lookup_msg() 133 sp = avl_find(&hcap->hca_active_tree, &comid, &where); in ibcm_lookup_msg() 182 sp->hcap = hcap; in ibcm_lookup_msg() 211 avl_insert(&(hcap->hca_passive_tree), (void *)sp, where); in ibcm_lookup_msg() 220 (void) avl_find(&hcap->hca_active_tree, in ibcm_lookup_msg() 224 avl_insert(&hcap->hca_active_tree, (void *)sp, where); in ibcm_lookup_msg() 227 avl_insert(&(hcap->hca_passive_comid_tree), (void *)sp, where); in ibcm_lookup_msg() [all …]
|
H A D | ibcm_ti.c | 45 static ibt_status_t ibcm_init_reply_addr(ibcm_hca_info_t *hcap, 150 ibcm_hca_info_t *hcap; in ibt_open_rc_channel() local 355 if ((hcap = ibcm_find_hca_entry(hca_guid)) == NULL) { in ibt_open_rc_channel() 365 if ((rdma_in > hcap->hca_max_rdma_in_qp) || in ibt_open_rc_channel() 366 (rdma_out > hcap->hca_max_rdma_out_qp)) { in ibt_open_rc_channel() 369 channel, rdma_in, rdma_out, hcap->hca_max_rdma_in_qp, in ibt_open_rc_channel() 370 hcap->hca_max_rdma_out_qp); in ibt_open_rc_channel() 371 ibcm_dec_hca_acc_cnt(hcap); in ibt_open_rc_channel() 378 status = ibt_get_port_state_byguid(hcap->hca_guid, port_no, in ibt_open_rc_channel() 383 ibcm_dec_hca_acc_cnt(hcap); in ibt_open_rc_channel() [all …]
|
H A D | ibcm_sm.c | 443 static void ibcm_process_get_classport_info(ibcm_hca_info_t *hcap, 446 static void ibcm_decode_classport_info(ibcm_hca_info_t *hcap, 519 ibcm_hca_info_t *hcap; /* pointer to HCA entry */ in _NOTE() local 552 hcap = portp->port_hcap; in _NOTE() 558 if (ibcm_inc_hca_acc_cnt(hcap) != IBCM_SUCCESS) { in _NOTE() 587 ibcm_dec_hca_acc_cnt(hcap); in _NOTE() 638 ibcm_dec_hca_acc_cnt(hcap); in _NOTE() 661 ibcm_process_get_classport_info(hcap, in _NOTE() 664 ibcm_decode_classport_info(hcap, in _NOTE() 675 ibcm_sm_funcs_tbl[attr_id](hcap, in _NOTE() [all …]
|
H A D | ibcm_path.c | 662 ibcm_hca_info_t *hcap; in ibcm_process_get_paths() local 767 hcap = ibcm_find_hca_entry(slistp->p_hca_guid); in ibcm_process_get_paths() 768 if (hcap == NULL) { in ibcm_process_get_paths() 780 (!(hcap->hca_caps & IBT_HCA_AUTO_PATH_MIG))) { in ibcm_process_get_paths() 789 saa_handle = ibcm_get_saa_handle(hcap, slistp[i].p_port_num); in ibcm_process_get_paths() 830 ibcm_dec_hca_acc_cnt(hcap); in ibcm_process_get_paths() 2582 ibcm_hca_info_t *hcap; in ibt_get_alt_path() local 2657 hcap = ibcm_find_hca_entry(c_hp.hp_hca_guid); in ibt_get_alt_path() 2658 if (hcap == NULL) { in ibt_get_alt_path() 2664 if (!(hcap->hca_caps & IBT_HCA_AUTO_PATH_MIG)) { in ibt_get_alt_path() [all …]
|
/illumos-gate/usr/src/uts/common/io/ib/clients/rds/ |
H A D | rdsib_ib.c | 175 rds_hca_t *hcap; in rds_lkup_hca() local 182 hcap = rdsib_statep->rds_hcalistp; in rds_lkup_hca() 183 while ((hcap != NULL) && (hcap->hca_guid != hca_guid)) { in rds_lkup_hca() 184 hcap = hcap->hca_nextp; in rds_lkup_hca() 191 return (hcap); in rds_lkup_hca() 194 void rds_randomize_qps(rds_hca_t *hcap); 199 rds_hca_t *hcap; in rdsib_init_hca() local 206 hcap = rds_lkup_hca(hca_guid); in rdsib_init_hca() 208 if (hcap != NULL && hcap->hca_hdl != NULL) { in rdsib_init_hca() 218 if (hcap == NULL) { in rdsib_init_hca() [all …]
|
H A D | rdsib_buf.c | 115 rds_hca_t *hcap; in rds_free_recv_caches() local 140 hcap = statep->rds_hcalistp; in rds_free_recv_caches() 141 while (hcap != NULL) { in rds_free_recv_caches() 142 if (hcap->hca_mrhdl != NULL) { in rds_free_recv_caches() 143 ret = ibt_deregister_mr(hcap->hca_hdl, in rds_free_recv_caches() 144 hcap->hca_mrhdl); in rds_free_recv_caches() 146 hcap->hca_mrhdl = NULL; in rds_free_recv_caches() 147 hcap->hca_lkey = 0; in rds_free_recv_caches() 148 hcap->hca_rkey = 0; in rds_free_recv_caches() 152 hcap->hca_mrhdl); in rds_free_recv_caches() [all …]
|
H A D | rdsib_cm.c | 791 rds_hca_t *hcap; in rds_bind_service() local 800 hcap = statep->rds_hcalistp; in rds_bind_service() 801 while (hcap != NULL) { in rds_bind_service() 804 if ((hcap->hca_state != RDS_HCA_STATE_OPEN) && in rds_bind_service() 805 (hcap->hca_state != RDS_HCA_STATE_MEM_REGISTERED)) { in rds_bind_service() 808 hcap->hca_guid, hcap->hca_state); in rds_bind_service() 809 hcap = hcap->hca_nextp; in rds_bind_service() 814 ASSERT(hcap->hca_nports < 4); in rds_bind_service() 815 for (jx = 0; jx < hcap->hca_nports; jx++) { in rds_bind_service() 817 if (hcap->hca_pinfop[jx].p_linkstate != in rds_bind_service() [all …]
|
H A D | rdsib_ep.c | 467 rds_hca_t *hcap; in rds_session_init() local 474 hcap = rds_gid_to_hcap(rdsib_statep, sp->session_lgid); in rds_session_init() 475 if (hcap == NULL) { in rds_session_init() 481 hca_guid = hcap->hca_guid; in rds_session_init() 522 rds_hca_t *hcap, *hcap1; in rds_session_reinit() local 546 hcap = rds_gid_to_hcap(rdsib_statep, lgid); in rds_session_reinit() 547 if (hcap == NULL) { in rds_session_reinit() 557 } else if (hcap->hca_guid == hcap1->hca_guid) { in rds_session_reinit() 568 sp->session_hca_guid = hcap->hca_guid; in rds_session_reinit() 571 ret = rds_ep_reinit(&sp->session_ctrlep, hcap->hca_guid); in rds_session_reinit() [all …]
|
/illumos-gate/usr/src/uts/common/sys/ib/mgt/ibcm/ |
H A D | ibcm_impl.h | 380 struct ibcm_hca_info_s *hcap; member 482 _NOTE(READ_ONLY_DATA(ibcm_state_data_s::{mode channel svcid hcap 1002 #define IBCM_IS_HCA_TAVOR(hcap) \ argument 1003 (((hcap)->hca_device_id == 0x5a44) && ((hcap)->hca_vendor_id == 0x15b3)) 1070 ibcm_qp_list_t *ibcm_find_qp(ibcm_hca_info_t *hcap, int port_no, 1077 ibcm_status_t ibcm_free_allqps(ibcm_hca_info_t *hcap, int port_no); 1091 typedef void (*ibcm_state_handler_t)(ibcm_hca_info_t *hcap, 1541 void ibcm_process_req_msg(ibcm_hca_info_t *hcap, uint8_t *cm_input_mad, 1543 void ibcm_process_rep_msg(ibcm_hca_info_t *hcap, uint8_t *cm_input_mad, 1545 void ibcm_process_rtu_msg(ibcm_hca_info_t *hcap, uint8_t *cm_input_mad, [all …]
|
/illumos-gate/usr/src/uts/common/io/ib/ibtl/ |
H A D | ibtl_impl.c | 694 ibtl_hca_devinfo_t **hcapp, *hcap; in ibc_pre_detach() local 710 hcap = ibtl_hca_list; in ibc_pre_detach() 711 while (hcap != NULL) { in ibc_pre_detach() 712 if (hcap == hca_devp) in ibc_pre_detach() 714 hcap = hcap->hd_hca_dev_link; in ibc_pre_detach() 716 if (hcap == NULL) { in ibc_pre_detach()
|
/illumos-gate/usr/src/uts/common/io/ib/ibnex/ |
H A D | ibnex_ioctl.c | 1090 ibdm_hca_list_t *hca_list, *hcap; in ibnex_get_num_devices() local 1100 for (hcap = hca_list; hca_list != NULL; hca_list = hca_list->hl_next) { in ibnex_get_num_devices() 1119 if (hcap) in ibnex_get_num_devices() 1120 ibdm_ibnex_free_hca_list(hcap); in ibnex_get_num_devices() 1159 ibdm_hca_list_t *hca_list, *hcap; in ibnex_get_snapshot() local 1183 for (hcap = hca_list, i = 0; i < hca_count; in ibnex_get_snapshot() 1197 ibdm_ibnex_free_hca_list(hcap); in ibnex_get_snapshot() 1218 ibdm_ibnex_free_hca_list(hcap); in ibnex_get_snapshot() 1244 ibdm_ibnex_free_hca_list(hcap); in ibnex_get_snapshot() 1256 if (hcap) in ibnex_get_snapshot() [all …]
|
/illumos-gate/usr/src/uts/common/rpc/ |
H A D | rpcib.c | 505 rib_hca_t *hca, *hcap; in rpcib_free_hca_list() local 513 hcap = hca; in rpcib_free_hca_list() 517 hcap->state = HCA_DETACHED; in rpcib_free_hca_list() 518 rw_exit(&hcap->state_lock); in rpcib_free_hca_list() 519 rib_stop_hca_services(hcap); in rpcib_free_hca_list() 521 kmem_free(hcap, sizeof (*hcap)); in rpcib_free_hca_list() 4874 rib_hca_t **hcap; in rib_detach_hca() local 4877 for (hcap = &rib_stat->hcas_list; *hcap; hcap = &(*hcap)->next) { in rib_detach_hca() 4878 hca = *hcap; in rib_detach_hca() 4886 *hcap = hca->next; in rib_detach_hca()
|
/illumos-gate/usr/src/uts/common/io/ib/clients/daplt/ |
H A D | daplt.c | 4393 ibt_hca_attr_t *hcap; in daplka_ia_query() local 4395 hcap = &ia_rp->ia_hca->hca_attr; in daplka_ia_query() 4400 args.hca_attr.dhca_vendor_id = hcap->hca_vendor_id; in daplka_ia_query() 4401 args.hca_attr.dhca_device_id = hcap->hca_device_id; in daplka_ia_query() 4402 args.hca_attr.dhca_version_id = hcap->hca_version_id; in daplka_ia_query() 4403 args.hca_attr.dhca_max_chans = hcap->hca_max_chans; in daplka_ia_query() 4404 args.hca_attr.dhca_max_chan_sz = hcap->hca_max_chan_sz; in daplka_ia_query() 4405 args.hca_attr.dhca_max_sgl = hcap->hca_max_sgl; in daplka_ia_query() 4406 args.hca_attr.dhca_max_cq = hcap->hca_max_cq; in daplka_ia_query() 4407 args.hca_attr.dhca_max_cq_sz = hcap->hca_max_cq_sz; in daplka_ia_query() [all …]
|
/illumos-gate/usr/src/uts/common/sys/ib/ibtl/impl/ |
H A D | ibtl.h | 564 int ibtl_detach_all_clients(ibtl_hca_devinfo_t *hcap);
|