| /net/smc/ |
| A D | smc_core.c | 199 struct smc_link_group *lgr = conn->lgr; in __smc_lgr_unregister_conn() local 213 struct smc_link_group *lgr = conn->lgr; in smc_lgr_unregister_conn() local 740 if (!lgr->is_smcd && !lgr->terminating) in smc_lgr_free_work() 743 if (lgr->is_smcd && !lgr->terminating) in smc_lgr_free_work() 813 lnk->lgr = lgr; in smcr_link_init() 982 smc->conn.lgr = lgr; in smc_lgr_create() 1306 struct smc_link_group *lgr = lnk->lgr; in smcr_buf_unmap_lgr() local 1326 struct smc_link_group *lgr = lnk->lgr; in smcr_rtoken_clear_link() local 1584 if (list_empty(&lgr->list) || lgr->terminating || lgr->freeing) { in smc_lgr_terminate_sched() 2004 conn->lgr = lgr; in smc_conn_create() [all …]
|
| A D | smc_llc.c | 257 struct smc_link_group *lgr = qentry->link->lgr; in smc_llc_flow_start() local 606 struct smc_link_group *lgr = link->lgr; in smc_llc_fill_ext_v2() local 837 struct smc_link_group *lgr = link->lgr; in smc_llc_add_link_cont() local 891 struct smc_link_group *lgr = link->lgr; in smc_llc_cli_rkey_exchange() local 946 struct smc_link_group *lgr = link->lgr; in smc_llc_cli_conf_link() local 1004 struct smc_link_group *lgr = link->lgr; in smc_llc_save_add_link_rkeys() local 1326 struct smc_link_group *lgr = link->lgr; in smc_llc_srv_rkey_exchange() local 1367 struct smc_link_group *lgr = link->lgr; in smc_llc_srv_conf_link() local 1410 struct smc_link_group *lgr = link->lgr; in smc_llc_srv_add_link() local 1879 struct smc_link_group *lgr = link->lgr; in smc_llc_event_handler() local [all …]
|
| A D | smc_llc.h | 68 if (smc_link_usable(&lgr->lnk[i])) in smc_llc_usable_link() 69 return &lgr->lnk[i]; in smc_llc_usable_link() 74 static inline void smc_llc_set_termination_rsn(struct smc_link_group *lgr, in smc_llc_set_termination_rsn() argument 77 if (!lgr->llc_termination_rsn) in smc_llc_set_termination_rsn() 78 lgr->llc_termination_rsn = rsn; in smc_llc_set_termination_rsn() 91 void smc_llc_lgr_init(struct smc_link_group *lgr, struct smc_sock *smc); 92 void smc_llc_lgr_clear(struct smc_link_group *lgr); 98 int smc_llc_do_delete_rkey(struct smc_link_group *lgr, 100 int smc_llc_flow_initiate(struct smc_link_group *lgr, 107 struct smc_llc_qentry *smc_llc_wait(struct smc_link_group *lgr, [all …]
|
| A D | smc_wr.c | 104 memset(link->lgr->wr_tx_buf_v2, 0, in smc_wr_tx_process_cqe() 218 lgr->terminating || in smc_wr_tx_get_free_slot() 684 if (lgr->smc_version < SMC_V2) in smc_wr_free_lgr_mem() 687 kfree(lgr->wr_rx_buf_v2); in smc_wr_free_lgr_mem() 688 lgr->wr_rx_buf_v2 = NULL; in smc_wr_free_lgr_mem() 689 kfree(lgr->wr_tx_buf_v2); in smc_wr_free_lgr_mem() 690 lgr->wr_tx_buf_v2 = NULL; in smc_wr_free_lgr_mem() 727 if (lgr->smc_version < SMC_V2) in smc_wr_alloc_lgr_mem() 731 if (!lgr->wr_rx_buf_v2) in smc_wr_alloc_lgr_mem() 734 if (!lgr->wr_tx_buf_v2) { in smc_wr_alloc_lgr_mem() [all …]
|
| A D | smc_ism.c | 104 spin_lock_irqsave(&conn->lgr->smcd->lock, flags); in smc_ism_set_conn() 105 conn->lgr->smcd->conn[conn->rmb_desc->sba_idx] = conn; in smc_ism_set_conn() 117 spin_lock_irqsave(&conn->lgr->smcd->lock, flags); in smc_ism_unset_conn() 240 dmb.vlan_id = lgr->vlan_id; in smc_ism_register_dmb() 241 dmb.rgid = lgr->peer_gid.gid; in smc_ism_register_dmb() 242 rc = lgr->smcd->ops->register_dmb(lgr->smcd, &dmb, lgr->smcd->client); in smc_ism_register_dmb() 598 if (lgr->peer_shutdown) in smc_ism_signal_shutdown() 600 if (!lgr->smcd->ops->signal_event) in smc_ism_signal_shutdown() 603 memcpy(ev_info.uid, lgr->id, SMC_LGR_ID_SIZE); in smc_ism_signal_shutdown() 604 ev_info.vlan_id = lgr->vlan_id; in smc_ism_signal_shutdown() [all …]
|
| A D | smc_core.h | 165 struct smc_link_group *lgr; /* parent link group */ member 449 u32 token, struct smc_link_group *lgr) in smc_lgr_find_conn() argument 454 node = lgr->conns_all.rb_node; in smc_lgr_find_conn() 476 return conn->lgr && conn->alert_token_local; in smc_conn_lgr_valid() 560 void smc_lgr_cleanup_early(struct smc_link_group *lgr); 561 void smc_lgr_terminate_sched(struct smc_link_group *lgr); 562 void smc_lgr_hold(struct smc_link_group *lgr); 563 void smc_lgr_put(struct smc_link_group *lgr); 600 void smcr_lgr_set_type_asym(struct smc_link_group *lgr, 603 struct smc_link *smc_switch_conns(struct smc_link_group *lgr, [all …]
|
| A D | smc_tracepoint.h | 93 __field(const void *, lgr) 101 const struct smc_link_group *lgr = lnk->lgr; 104 __entry->lgr = lgr; 105 __entry->net_cookie = lgr->net->net_cookie; 112 __entry->lnk, __entry->lgr, __entry->net_cookie,
|
| A D | smc_ib.c | 75 if (lnk->lgr->smc_version == SMC_V2 && lnk->lgr->uses_gateway) in smc_ib_modify_qp_rtr() 79 if (lnk->lgr->smc_version == SMC_V2 && lnk->lgr->uses_gateway) in smc_ib_modify_qp_rtr() 81 sizeof(lnk->lgr->nexthop_mac)); in smc_ib_modify_qp_rtr() 145 if (lgr->role == SMC_SERV) { in smc_ib_ready_link() 335 struct smc_link_group *lgr; in smc_ib_gid_check() local 343 if (list_empty(&lgr->list)) in smc_ib_gid_check() 347 lgr->lnk[i].smcibdev != smcibdev) in smc_ib_gid_check() 350 lgr->smc_version == SMC_V2, in smc_ib_gid_check() 472 struct smc_link_group *lgr; in smcr_diag_is_dev_critical() local 478 if (lgr->is_smcd) in smcr_diag_is_dev_critical() [all …]
|
| A D | smc_diag.c | 93 else if (smc_conn_lgr_valid(&smc->conn) && smc->conn.lgr->is_smcd) in __smc_diag_dump() 146 if (smc_conn_lgr_valid(&smc->conn) && !smc->conn.lgr->is_smcd && in __smc_diag_dump() 148 !list_empty(&smc->conn.lgr->list)) { in __smc_diag_dump() 152 .role = smc->conn.lgr->role, in __smc_diag_dump() 165 if (smc_conn_lgr_valid(&smc->conn) && smc->conn.lgr->is_smcd && in __smc_diag_dump() 167 !list_empty(&smc->conn.lgr->list) && smc->conn.rmb_desc) { in __smc_diag_dump() 170 struct smcd_dev *smcd = conn->lgr->smcd; in __smc_diag_dump() 175 dinfo.linkid = *((u32 *)conn->lgr->id); in __smc_diag_dump() 176 dinfo.peer_gid = conn->lgr->peer_gid.gid; in __smc_diag_dump() 177 dinfo.peer_gid_ext = conn->lgr->peer_gid.gid_ext; in __smc_diag_dump()
|
| A D | smc_cdc.c | 214 (conn->lgr->is_smcd && conn->lgr->peer_shutdown)) in smc_cdc_get_slot_and_msg_send() 217 if (conn->lgr->is_smcd) { in smc_cdc_get_slot_and_msg_send() 260 if (smc_ism_support_dmb_nocopy(conn->lgr->smcd)) in smcd_cdc_msg_send() 356 if (conn->lgr->is_smcd && in smc_cdc_msg_recv_action() 357 smc_ism_support_dmb_nocopy(conn->lgr->smcd)) { in smc_cdc_msg_recv_action() 474 struct smc_link_group *lgr; in smc_cdc_rx_handler() local 483 lgr = smc_get_lgr(link); in smc_cdc_rx_handler() 484 read_lock_bh(&lgr->conns_lock); in smc_cdc_rx_handler() 485 conn = smc_lgr_find_conn(ntohl(cdc->token), lgr); in smc_cdc_rx_handler() 486 read_unlock_bh(&lgr->conns_lock); in smc_cdc_rx_handler()
|
| A D | af_smc.c | 536 struct smc_link_group *lgr = link->lgr; in smcr_lgr_reg_sndbufs() local 551 up_write(&lgr->llc_conf_mutex); in smcr_lgr_reg_sndbufs() 559 struct smc_link_group *lgr = link->lgr; in smcr_lgr_reg_rmbs() local 600 do_slow ? up_write(&lgr->llc_conf_mutex) : up_read(&lgr->llc_conf_mutex); in smcr_lgr_reg_rmbs() 601 smc_llc_flow_stop(lgr, &lgr->llc_flow_lcl); in smcr_lgr_reg_rmbs() 697 if (smc->conn.lgr->is_smcd) { in smc_conn_save_peer_info_fce() 742 if (smc->conn.lgr->is_smcd) in smc_conn_save_peer_info() 998 struct smc_link_group *lgr = conn->lgr; in smc_conn_abort() local 1006 smc_lgr_cleanup_early(lgr); in smc_conn_abort() 1364 smc_llc_flow_stop(link->lgr, &link->lgr->llc_flow_lcl); in smc_connect_rdma() [all …]
|
| A D | smc_tx.c | 308 rc = smc_ism_write(conn->lgr->smcd, conn->peer_token, in smcd_tx_ism_write() 320 struct smc_link_group *lgr = conn->lgr; in smc_tx_rdma_write() local 327 lgr->rtokens[conn->rtoken_idx][link->link_idx].dma_addr + in smc_tx_rdma_write() 332 rdma_wr->rkey = lgr->rtokens[conn->rtoken_idx][link->link_idx].rkey; in smc_tx_rdma_write() 524 if (conn->lgr->is_smcd) in smc_tx_rdma_writes() 570 mod_delayed_work(conn->lgr->tx_wq, &conn->tx_work, in smcr_tx_sndbuf_nonempty() 644 if (conn->lgr->is_smcd) in smc_tx_sndbuf_nonempty() 718 queue_delayed_work(conn->lgr->tx_wq, &conn->tx_work, in smc_tx_consumer_update()
|
| A D | smc_rx.c | 152 struct smc_link_group *lgr = smc->conn.lgr; in smc_rx_splice() local 161 nr_pages = !lgr->is_smcd && smc->conn.rmb_desc->is_vm ? in smc_rx_splice() 179 if (lgr->is_smcd || in smc_rx_splice() 180 (!lgr->is_smcd && !smc->conn.rmb_desc->is_vm)) { in smc_rx_splice() 215 if (!lgr->is_smcd && smc->conn.rmb_desc->is_vm) { in smc_rx_splice()
|
| A D | smc_ism.h | 48 int smc_ism_register_dmb(struct smc_link_group *lgr, int buf_size, 55 int smc_ism_signal_shutdown(struct smc_link_group *lgr);
|
| A D | smc_wr.h | 107 int smc_wr_alloc_lgr_mem(struct smc_link_group *lgr); 110 void smc_wr_free_lgr_mem(struct smc_link_group *lgr);
|
| A D | smc_clc.c | 792 smc->conn.lgr->sync_err = 1; in smc_clc_wait_msg() 793 smc_lgr_terminate_sched(smc->conn.lgr); in smc_clc_wait_msg() 819 if ((!smc_conn_lgr_valid(&smc->conn) || !smc->conn.lgr->is_smcd) && in smc_clc_send_decline() 1053 struct smcd_dev *smcd = conn->lgr->smcd; in smcd_clc_prep_confirm_accept() 1067 memcpy(&clc->d0.linkid, conn->lgr->id, SMC_LGR_ID_SIZE); in smcd_clc_prep_confirm_accept() 1139 !link->lgr->uses_gateway; in smcr_clc_prep_confirm_accept() 1170 if (conn->lgr->is_smcd) in smc_clc_send_confirm_accept() 1194 if (!conn->lgr->is_smcd) { in smc_clc_send_confirm_accept()
|
| A D | smc_pnet.h | 65 void smc_pnet_find_alt_roce(struct smc_link_group *lgr,
|
| A D | smc.h | 197 struct smc_link_group *lgr; /* link group of connection */ member 415 void smc_fill_gid_list(struct smc_link_group *lgr,
|
| A D | smc_pnet.c | 1027 void smc_pnet_find_alt_roce(struct smc_link_group *lgr, in smc_pnet_find_alt_roce() argument 1031 struct net *net = lgr->net; in smc_pnet_find_alt_roce() 1033 _smc_pnet_find_roce_by_pnetid(lgr->pnet_id, ini, known_dev, net); in smc_pnet_find_alt_roce()
|
| A D | smc_cdc.h | 276 if (conn->lgr->is_smcd) in smc_cdc_msg_to_host()
|