/illumos-gate/usr/src/uts/common/sys/ib/clients/eoib/ |
H A D | eib_impl.h | 793 } eib_t; typedef 809 extern int eib_fip_login(eib_t *, eib_vnic_t *, int *); 810 extern int eib_fip_heartbeat(eib_t *, eib_vnic_t *, int *); 811 extern int eib_fip_vhub_table(eib_t *, eib_vnic_t *, int *); 812 extern int eib_fip_logout(eib_t *, eib_vnic_t *, int *); 813 extern int eib_fip_parse_login_ack(eib_t *, uint8_t *, eib_login_data_t *); 819 extern void eib_events_handler(eib_t *); 820 extern void eib_svc_enqueue_event(eib_t *, eib_event_t *); 821 extern void eib_refill_rwqes(eib_t *); 822 extern void eib_vnic_creator(eib_t *); [all …]
|
/illumos-gate/usr/src/uts/common/io/ib/clients/eoib/ |
H A D | eib_adm.c | 38 static int eib_adm_setup_cq(eib_t *); 39 static int eib_adm_setup_ud_channel(eib_t *); 41 static void eib_adm_rx_comp(eib_t *, eib_wqe_t *); 42 static void eib_adm_tx_comp(eib_t *, eib_wqe_t *); 43 static void eib_adm_err_comp(eib_t *, eib_wqe_t *, ibt_wc_t *); 44 static void eib_rb_adm_setup_cq(eib_t *); 45 static void eib_rb_adm_setup_ud_channel(eib_t *); 48 eib_adm_setup_qp(eib_t *ss, int *err) in eib_adm_setup_qp() 120 eib_t *ss = (eib_t *)(void *)arg1; in eib_adm_comp_handler() 160 eib_rb_adm_setup_qp(eib_t *ss) in eib_rb_adm_setup_qp() [all …]
|
H A D | eib_mac.c | 43 static void eib_rb_mac_start(eib_t *, eib_vnic_t *); 53 eib_mac_set_nic_state(eib_t *ss, uint_t flags) in eib_mac_set_nic_state() 69 eib_mac_clr_nic_state(eib_t *ss, uint_t flags) in eib_mac_clr_nic_state() 82 eib_mac_upd_nic_state(eib_t *ss, uint_t clr_flags, uint_t set_flags) in eib_mac_upd_nic_state() 96 eib_mac_get_nic_state(eib_t *ss) in eib_mac_get_nic_state() 109 eib_mac_link_state(eib_t *ss, link_state_t new_link_state, in eib_mac_link_state() 146 eib_mac_link_up(eib_t *ss, boolean_t force) in eib_mac_link_up() 152 eib_mac_link_down(eib_t *ss, boolean_t force) in eib_mac_link_down() 158 eib_mac_start(eib_t *ss) in eib_mac_start() 220 eib_mac_stop(eib_t *ss) in eib_mac_stop() [all …]
|
H A D | eib_main.c | 133 static int eib_state_init(eib_t *); 134 static int eib_add_event_callbacks(eib_t *); 135 static int eib_register_with_mac(eib_t *, dev_info_t *); 136 static void eib_rb_attach(eib_t *, uint_t); 137 static void eib_rb_state_init(eib_t *); 138 static void eib_rb_add_event_callbacks(eib_t *); 139 static void eib_rb_register_with_mac(eib_t *); 159 if ((ret = ddi_soft_state_init(&eib_state, sizeof (eib_t), 0)) != 0) in _init() 199 eib_t *ss; in eib_attach() 282 eib_t *ss; in eib_detach() [all …]
|
H A D | eib_rsrc.c | 38 static int eib_rsrc_setup_txbufs(eib_t *, int *); 39 static int eib_rsrc_setup_rxbufs(eib_t *, int *); 40 static int eib_rsrc_setup_lsobufs(eib_t *, int *); 41 static void eib_rsrc_init_wqe_pool(eib_t *, eib_wqe_pool_t **, 43 static void eib_rsrc_fini_wqe_pool(eib_t *, eib_wqe_pool_t **); 44 static boolean_t eib_rsrc_ok_to_free_pool(eib_t *, eib_wqe_pool_t *, boolean_t); 45 static int eib_rsrc_grab_wqes(eib_t *, eib_wqe_pool_t *, eib_wqe_t **, uint_t, 47 static void eib_rsrc_return_wqes(eib_t *, eib_wqe_pool_t *, eib_wqe_t **, 50 static void eib_rb_rsrc_setup_txbufs(eib_t *, boolean_t); 51 static void eib_rb_rsrc_setup_rxbufs(eib_t *, boolean_t); [all …]
|
H A D | eib_vnic.c | 38 static int eib_vnic_get_instance(eib_t *, int *); 39 static void eib_vnic_ret_instance(eib_t *, int); 40 static void eib_vnic_modify_enter(eib_t *, uint_t); 41 static void eib_vnic_modify_exit(eib_t *, uint_t); 42 static int eib_vnic_create_common(eib_t *, eib_vnic_t *, int *); 43 static int eib_vnic_set_partition(eib_t *, eib_vnic_t *, int *); 46 static int eib_vnic_attach_ctl_mcgs(eib_t *, eib_vnic_t *, int *); 47 static int eib_vnic_attach_vhub_table(eib_t *, eib_vnic_t *); 48 static int eib_vnic_attach_vhub_update(eib_t *, eib_vnic_t *); 49 static void eib_vnic_start_keepalives(eib_t *, eib_vnic_t *); [all …]
|
H A D | eib_ibt.c | 41 static void eib_ibt_reset_partitions(eib_t *); 42 static void eib_ibt_wakeup_sqd_waiters(eib_t *, ibt_channel_hdl_t); 43 static int eib_ibt_chan_pkey(eib_t *, eib_chan_t *, ib_pkey_t, boolean_t, 45 static boolean_t eib_ibt_has_chan_pkey_changed(eib_t *, eib_chan_t *); 46 static boolean_t eib_ibt_has_any_pkey_changed(eib_t *); 47 static int eib_ibt_fill_avect(eib_t *, eib_avect_t *, ib_lid_t); 48 static void eib_ibt_record_srate(eib_t *); 74 eib_ibt_hca_init(eib_t *ss) in eib_ibt_hca_init() 171 eib_ibt_link_mod(eib_t *ss) in eib_ibt_link_mod() 330 eib_ibt_modify_chan_pkey(eib_t *ss, eib_chan_t *chan, ib_pkey_t pkey) in eib_ibt_modify_chan_pkey() [all …]
|
H A D | eib_ctl.c | 38 static int eib_ctl_setup_cq(eib_t *, eib_vnic_t *); 39 static int eib_ctl_setup_ud_channel(eib_t *, eib_vnic_t *); 44 static void eib_rb_ctl_setup_cq(eib_t *, eib_vnic_t *); 45 static void eib_rb_ctl_setup_ud_channel(eib_t *, eib_vnic_t *); 48 eib_ctl_create_qp(eib_t *ss, eib_vnic_t *vnic, int *err) in eib_ctl_create_qp() 98 eib_t *ss = vnic->vn_ss; in eib_ctl_comp_handler() 137 eib_rb_ctl_create_qp(eib_t *ss, eib_vnic_t *vnic) in eib_rb_ctl_create_qp() 148 eib_ctl_setup_cq(eib_t *ss, eib_vnic_t *vnic) in eib_ctl_setup_cq() 214 eib_ctl_setup_ud_channel(eib_t *ss, eib_vnic_t *vnic) in eib_ctl_setup_ud_channel() 275 eib_t *ss = vnic->vn_ss; in eib_ctl_comp_intr() [all …]
|
H A D | eib_fip.c | 37 static int eib_fip_make_login(eib_t *, eib_vnic_t *, eib_wqe_t *, int *); 38 static int eib_fip_make_update(eib_t *, eib_vnic_t *, eib_wqe_t *, int, int *); 39 static int eib_fip_make_table(eib_t *, eib_vnic_t *, eib_wqe_t *, int *); 40 static int eib_fip_make_ka(eib_t *, eib_vnic_t *, eib_wqe_t *, int *); 41 static int eib_fip_make_logout(eib_t *, eib_vnic_t *, eib_wqe_t *, int *); 43 static int eib_fip_send_login(eib_t *, eib_vnic_t *, eib_wqe_t *, int *); 44 static int eib_fip_send_update(eib_t *, eib_vnic_t *, eib_wqe_t *, 46 static int eib_fip_send_table(eib_t *, eib_vnic_t *, eib_wqe_t *, int *); 47 static int eib_fip_send_ka(eib_t *, eib_vnic_t *, eib_wqe_t *, int *); 48 static int eib_fip_send_logout(eib_t *, eib_vnic_t *, eib_wqe_t *, int *); [all …]
|
H A D | eib_svc.c | 41 eib_events_handler(eib_t *ss) in eib_events_handler() 271 eib_svc_enqueue_event(eib_t *ss, eib_event_t *evi) in eib_svc_enqueue_event() 304 eib_refill_rwqes(eib_t *ss) in eib_refill_rwqes() 380 eib_vnic_creator(eib_t *ss) in eib_vnic_creator() 536 eib_monitor_tx_wqes(eib_t *ss) in eib_monitor_tx_wqes() 633 eib_monitor_lso_bufs(eib_t *ss) in eib_monitor_lso_bufs() 727 eib_manage_keepalives(eib_t *ss) in eib_manage_keepalives() 833 eib_stop_events_handler(eib_t *ss) in eib_stop_events_handler() 847 eib_stop_refill_rwqes(eib_t *ss) in eib_stop_refill_rwqes() 860 eib_stop_vnic_creator(eib_t *ss) in eib_stop_vnic_creator() [all …]
|
H A D | eib_data.c | 43 static int eib_data_setup_cqs(eib_t *, eib_vnic_t *); 44 static int eib_data_setup_ud_channel(eib_t *, eib_vnic_t *); 55 static void eib_rb_data_setup_cqs(eib_t *, eib_vnic_t *); 56 static void eib_rb_data_setup_ud_channel(eib_t *, eib_vnic_t *); 60 eib_data_create_qp(eib_t *ss, eib_vnic_t *vnic, int *err) in eib_data_create_qp() 111 eib_t *ss = vnic->vn_ss; in eib_data_rx_comp_handler() 231 eib_t *ss = vnic->vn_ss; in eib_data_tx_comp_handler() 277 eib_t *ss = rwqe->qe_pool->wp_ss; in eib_data_rx_recycle() 346 eib_t *ss = vnic->vn_ss; in eib_data_post_tx() 485 eib_data_lookup_vnic(eib_t *ss, uint8_t *mac, uint16_t vlan, eib_vnic_t **vnicp, in eib_data_lookup_vnic() [all …]
|
H A D | eib_chan.c | 78 eib_chan_post_rx(eib_t *ss, eib_chan_t *chan, uint_t *n_posted) in eib_chan_post_rx() 154 eib_chan_post_recv(eib_t *ss, eib_chan_t *chan, eib_wqe_t *rwqe) in eib_chan_post_recv()
|
H A D | eib_cmn.c | 157 eib_get_props(eib_t *ss) in eib_get_props() 269 eib_update_props(eib_t *ss, eib_gw_info_t *new_gw_info) in eib_update_props() 366 eib_rb_get_props(eib_t *ss) in eib_rb_get_props()
|