Home
last modified time | relevance | path

Searched refs:lgr (Results 1 - 25 of 60) sorted by relevance

123

/kernel/linux/linux-5.10/net/smc/
H A Dsmc_core.c47 static void smc_buf_free(struct smc_link_group *lgr, bool is_rmb,
49 static void __smc_lgr_terminate(struct smc_link_group *lgr, bool soft);
54 static inline struct list_head *smc_lgr_list_head(struct smc_link_group *lgr, in smc_lgr_list_head() argument
57 if (lgr->is_smcd) { in smc_lgr_list_head()
58 *lgr_lock = &lgr->smcd->lgr_lock; in smc_lgr_list_head()
59 return &lgr->smcd->lgr_list; in smc_lgr_list_head()
66 static void smc_lgr_schedule_free_work(struct smc_link_group *lgr) in smc_lgr_schedule_free_work() argument
72 if (!lgr->freeing) { in smc_lgr_schedule_free_work()
73 mod_delayed_work(system_wq, &lgr->free_work, in smc_lgr_schedule_free_work()
74 (!lgr in smc_lgr_schedule_free_work()
180 struct smc_link_group *lgr = conn->lgr; __smc_lgr_unregister_conn() local
192 struct smc_link_group *lgr = conn->lgr; smc_lgr_unregister_conn() local
206 struct smc_link_group *lgr = conn->lgr; smc_lgr_cleanup_early() local
222 smcr_lgr_link_deactivate_all(struct smc_link_group *lgr) smcr_lgr_link_deactivate_all() argument
240 struct smc_link_group *lgr = container_of(to_delayed_work(work), smc_lgr_free_work() local
276 struct smc_link_group *lgr = container_of(work, struct smc_link_group, smc_lgr_terminate_work() local
283 smcr_next_link_id(struct smc_link_group *lgr) smcr_next_link_id() argument
303 smcr_link_init(struct smc_link_group *lgr, struct smc_link *lnk, u8 link_idx, struct smc_init_info *ini) smcr_link_init() argument
369 struct smc_link_group *lgr; smc_lgr_create() local
529 smc_switch_conns(struct smc_link_group *lgr, struct smc_link *from_lnk, bool is_dev_err) smc_switch_conns() argument
607 smcr_buf_unuse(struct smc_buf_desc *rmb_desc, struct smc_link_group *lgr) smcr_buf_unuse() argument
637 smc_buf_unuse(struct smc_connection *conn, struct smc_link_group *lgr) smc_buf_unuse() argument
651 struct smc_link_group *lgr = conn->lgr; smc_conn_free() local
698 struct smc_link_group *lgr = lnk->lgr; smcr_buf_unmap_lgr() local
717 struct smc_link_group *lgr = lnk->lgr; smcr_rtoken_clear_link() local
750 smcr_buf_free(struct smc_link_group *lgr, bool is_rmb, struct smc_buf_desc *buf_desc) smcr_buf_free() argument
763 smcd_buf_free(struct smc_link_group *lgr, bool is_dmb, struct smc_buf_desc *buf_desc) smcd_buf_free() argument
776 smc_buf_free(struct smc_link_group *lgr, bool is_rmb, struct smc_buf_desc *buf_desc) smc_buf_free() argument
785 __smc_lgr_free_bufs(struct smc_link_group *lgr, bool is_rmb) __smc_lgr_free_bufs() argument
804 smc_lgr_free_bufs(struct smc_link_group *lgr) smc_lgr_free_bufs() argument
813 smc_lgr_free(struct smc_link_group *lgr) smc_lgr_free() argument
841 smcd_unregister_all_dmbs(struct smc_link_group *lgr) smcd_unregister_all_dmbs() argument
887 smc_lgr_cleanup(struct smc_link_group *lgr) smc_lgr_cleanup() argument
906 __smc_lgr_terminate(struct smc_link_group *lgr, bool soft) __smc_lgr_terminate() argument
939 smc_lgr_terminate_sched(struct smc_link_group *lgr) smc_lgr_terminate_sched() argument
958 struct smc_link_group *lgr, *l; smc_smcd_terminate() local
984 struct smc_link_group *lgr, *lg; smc_smcd_terminate_all() local
1008 struct smc_link_group *lgr, *lg; smc_smcr_terminate_all() local
1044 smcr_lgr_set_type(struct smc_link_group *lgr, enum smc_lgr_type new_type) smcr_lgr_set_type() argument
1079 smcr_lgr_set_type_asym(struct smc_link_group *lgr, enum smc_lgr_type new_type, int asym_lnk_idx) smcr_lgr_set_type_asym() argument
1102 struct smc_link_group *lgr, *n; smcr_port_add() local
1127 struct smc_link_group *lgr = lnk->lgr; smcr_link_down() local
1181 struct smc_link_group *lgr, *n; smcr_port_err() local
1204 struct smc_link_group *lgr = link->lgr; smc_link_down_work() local
1262 smcr_lgr_match(struct smc_link_group *lgr, struct smc_clc_msg_local *lcl, enum smc_lgr_role role, u32 clcqpn) smcr_lgr_match() argument
1283 smcd_lgr_match(struct smc_link_group *lgr, struct smcd_dev *smcismdev, u64 peer_gid) smcd_lgr_match() argument
1294 struct smc_link_group *lgr; smc_conn_create() local
1519 struct smc_link_group *lgr = lnk->lgr; smcr_buf_map_lgr() local
1540 struct smc_link_group *lgr = lnk->lgr; smcr_buf_reg_lgr() local
1559 smcr_new_buf_create(struct smc_link_group *lgr, bool is_rmb, int bufsize) smcr_new_buf_create() argument
1586 smcr_buf_map_usable_links(struct smc_link_group *lgr, struct smc_buf_desc *buf_desc, bool is_rmb) smcr_buf_map_usable_links() argument
1613 smcd_new_buf_create(struct smc_link_group *lgr, bool is_dmb, int bufsize) smcd_new_buf_create() argument
1656 struct smc_link_group *lgr = conn->lgr; __smc_buf_create() local
1802 smc_rmb_reserve_rtoken_idx(struct smc_link_group *lgr) smc_rmb_reserve_rtoken_idx() argument
1813 smc_rtoken_find_by_link(struct smc_link_group *lgr, int lnk_idx, u32 rkey) smc_rtoken_find_by_link() argument
1827 smc_rtoken_set(struct smc_link_group *lgr, int link_idx, int link_idx_new, __be32 nw_rkey_known, __be64 nw_vaddr, __be32 nw_rkey) smc_rtoken_set() argument
1840 smc_rtoken_set2(struct smc_link_group *lgr, int rtok_idx, int link_id, __be64 nw_vaddr, __be32 nw_rkey) smc_rtoken_set2() argument
1863 struct smc_link_group *lgr = smc_get_lgr(lnk); smc_rtoken_add() local
1887 struct smc_link_group *lgr = smc_get_lgr(lnk); smc_rtoken_delete() local
[all...]
H A Dsmc_llc.c189 static void smc_llc_flow_parallel(struct smc_link_group *lgr, u8 flow_type, in smc_llc_flow_parallel() argument
195 flow_type != msg_type && !lgr->delayed_event) { in smc_llc_flow_parallel()
196 lgr->delayed_event = qentry; in smc_llc_flow_parallel()
203 SMC_LGR_ID_SIZE, &lgr->id, in smc_llc_flow_parallel()
205 flow_type, lgr->role); in smc_llc_flow_parallel()
213 struct smc_link_group *lgr = qentry->link->lgr; in smc_llc_flow_start() local
215 spin_lock_bh(&lgr->llc_flow_lock); in smc_llc_flow_start()
218 smc_llc_flow_parallel(lgr, flow->type, qentry); in smc_llc_flow_start()
219 spin_unlock_bh(&lgr in smc_llc_flow_start()
242 smc_llc_flow_initiate(struct smc_link_group *lgr, enum smc_llc_flowtype type) smc_llc_flow_initiate() argument
276 smc_llc_flow_stop(struct smc_link_group *lgr, struct smc_llc_flow *flow) smc_llc_flow_stop() argument
292 smc_llc_wait(struct smc_link_group *lgr, struct smc_link *lnk, int time_out, u8 exp_msg) smc_llc_wait() argument
630 smc_llc_alloc_alt_link(struct smc_link_group *lgr, enum smc_lgr_type lgr_new_t) smc_llc_alloc_alt_link() argument
655 _smc_llc_get_next_rmb(struct smc_link_group *lgr, int *buf_lst) _smc_llc_get_next_rmb() argument
671 smc_llc_get_next_rmb(struct smc_link_group *lgr, int *buf_lst, struct smc_buf_desc *buf_pos) smc_llc_get_next_rmb() argument
685 smc_llc_get_first_rmb(struct smc_link_group *lgr, int *buf_lst) smc_llc_get_first_rmb() argument
698 struct smc_link_group *lgr = link->lgr; smc_llc_add_link_cont() local
751 struct smc_link_group *lgr = link->lgr; smc_llc_cli_rkey_exchange() local
804 struct smc_link_group *lgr = link->lgr; smc_llc_cli_conf_link() local
872 struct smc_link_group *lgr = smc_get_lgr(link); smc_llc_cli_add_link() local
939 struct smc_link_group *lgr = smc_get_lgr(link); smc_llc_cli_add_link_invite() local
975 smc_llc_process_cli_add_link(struct smc_link_group *lgr) smc_llc_process_cli_add_link() argument
989 smc_llc_active_link_count(struct smc_link_group *lgr) smc_llc_active_link_count() argument
1002 smc_llc_find_asym_link(struct smc_link_group *lgr) smc_llc_find_asym_link() argument
1046 smc_llc_delete_asym_link(struct smc_link_group *lgr) smc_llc_delete_asym_link() argument
1084 struct smc_link_group *lgr = link->lgr; smc_llc_srv_rkey_exchange() local
1125 struct smc_link_group *lgr = link->lgr; smc_llc_srv_conf_link() local
1158 struct smc_link_group *lgr = link->lgr; smc_llc_srv_add_link() local
1228 smc_llc_process_srv_add_link(struct smc_link_group *lgr) smc_llc_process_srv_add_link() argument
1258 struct smc_link_group *lgr = container_of(work, struct smc_link_group, smc_llc_add_link_work() local
1290 smc_llc_process_cli_delete_link(struct smc_link_group *lgr) smc_llc_process_cli_delete_link() argument
1348 smc_llc_send_link_delete_all(struct smc_link_group *lgr, bool ord, u32 rsn) smc_llc_send_link_delete_all() argument
1368 smc_llc_process_srv_delete_link(struct smc_link_group *lgr) smc_llc_process_srv_delete_link() argument
1438 struct smc_link_group *lgr = container_of(work, struct smc_link_group, smc_llc_delete_link_work() local
1456 smc_llc_rmt_conf_rkey(struct smc_link_group *lgr) smc_llc_rmt_conf_rkey() argument
1493 smc_llc_rmt_delete_rkey(struct smc_link_group *lgr) smc_llc_rmt_delete_rkey() argument
1519 smc_llc_protocol_violation(struct smc_link_group *lgr, u8 type) smc_llc_protocol_violation() argument
1528 smc_llc_event_flush(struct smc_link_group *lgr) smc_llc_event_flush() argument
1544 struct smc_link_group *lgr = link->lgr; smc_llc_event_handler() local
1634 struct smc_link_group *lgr = container_of(work, struct smc_link_group, smc_llc_event_work() local
1705 struct smc_link_group *lgr = link->lgr; smc_llc_enqueue() local
1777 smc_llc_lgr_init(struct smc_link_group *lgr, struct smc_sock *smc) smc_llc_lgr_init() argument
1794 smc_llc_lgr_clear(struct smc_link_group *lgr) smc_llc_lgr_clear() argument
1849 struct smc_link_group *lgr = send_link->lgr; smc_llc_do_confirm_rkey() local
1868 smc_llc_do_delete_rkey(struct smc_link_group *lgr, struct smc_buf_desc *rmb_desc) smc_llc_do_delete_rkey() argument
[all...]
H A Dsmc_llc.h53 static inline struct smc_link *smc_llc_usable_link(struct smc_link_group *lgr) in smc_llc_usable_link() argument
58 if (smc_link_usable(&lgr->lnk[i])) in smc_llc_usable_link()
59 return &lgr->lnk[i]; in smc_llc_usable_link()
64 static inline void smc_llc_set_termination_rsn(struct smc_link_group *lgr, in smc_llc_set_termination_rsn() argument
67 if (!lgr->llc_termination_rsn) in smc_llc_set_termination_rsn()
68 lgr->llc_termination_rsn = rsn; in smc_llc_set_termination_rsn()
81 void smc_llc_lgr_init(struct smc_link_group *lgr, struct smc_sock *smc);
82 void smc_llc_lgr_clear(struct smc_link_group *lgr);
88 int smc_llc_do_delete_rkey(struct smc_link_group *lgr,
90 int smc_llc_flow_initiate(struct smc_link_group *lgr,
[all...]
H A Dsmc_ism.c59 spin_lock_irqsave(&conn->lgr->smcd->lock, flags); in smc_ism_set_conn()
60 conn->lgr->smcd->conn[conn->rmb_desc->sba_idx] = conn; in smc_ism_set_conn()
61 spin_unlock_irqrestore(&conn->lgr->smcd->lock, flags); in smc_ism_set_conn()
72 spin_lock_irqsave(&conn->lgr->smcd->lock, flags); in smc_ism_unset_conn()
73 conn->lgr->smcd->conn[conn->rmb_desc->sba_idx] = NULL; in smc_ism_unset_conn()
74 spin_unlock_irqrestore(&conn->lgr->smcd->lock, flags); in smc_ism_unset_conn()
182 int smc_ism_register_dmb(struct smc_link_group *lgr, int dmb_len, in smc_ism_register_dmb() argument
191 dmb.vlan_id = lgr->vlan_id; in smc_ism_register_dmb()
192 dmb.rgid = lgr->peer_gid; in smc_ism_register_dmb()
193 rc = lgr in smc_ism_register_dmb()
247 smc_ism_signal_shutdown(struct smc_link_group *lgr) smc_ism_signal_shutdown() argument
[all...]
H A Dsmc_diag.c105 else if (smc->conn.lgr && smc->conn.lgr->is_smcd) in __smc_diag_dump()
158 if (smc->conn.lgr && !smc->conn.lgr->is_smcd && in __smc_diag_dump()
160 !list_empty(&smc->conn.lgr->list)) { in __smc_diag_dump()
162 .role = smc->conn.lgr->role, in __smc_diag_dump()
163 .lnk[0].ibport = smc->conn.lgr->lnk[0].ibport, in __smc_diag_dump()
164 .lnk[0].link_id = smc->conn.lgr->lnk[0].link_id, in __smc_diag_dump()
168 smc->conn.lgr->lnk[0].smcibdev->ibdev->name, in __smc_diag_dump()
169 sizeof(smc->conn.lgr in __smc_diag_dump()
[all...]
H A Dsmc_core.h125 u8 link_idx; /* index in lgr link array */
127 struct smc_link_group *lgr; /* parent link group */ member
142 /* tx/rx buffer list element for sndbufs list and rmbs list of a lgr */
193 enum smc_lgr_type { /* redundancy state of lgr */
194 SMC_LGR_NONE, /* no active links, lgr to be deleted */
227 u8 id[SMC_LGR_ID_SIZE]; /* unique lgr id */
228 struct delayed_work free_work; /* delayed freeing of an lgr */
229 struct work_struct terminate_work; /* abnormal lgr termination */
231 u8 sync_err : 1; /* lgr no longer fits to peer */
232 u8 terminating : 1;/* lgr i
328 smc_lgr_find_conn( u32 token, struct smc_link_group *lgr) smc_lgr_find_conn() argument
[all...]
H A Dsmc_cdc.c202 if (!conn->lgr || (conn->lgr->is_smcd && conn->lgr->peer_shutdown)) in smc_cdc_get_slot_and_msg_send()
205 if (conn->lgr->is_smcd) { in smc_cdc_get_slot_and_msg_send()
427 struct smc_link_group *lgr; in smc_cdc_rx_handler() local
436 lgr = smc_get_lgr(link); in smc_cdc_rx_handler()
437 read_lock_bh(&lgr->conns_lock); in smc_cdc_rx_handler()
438 conn = smc_lgr_find_conn(ntohl(cdc->token), lgr); in smc_cdc_rx_handler()
439 read_unlock_bh(&lgr->conns_lock); in smc_cdc_rx_handler()
H A Dsmc_tx.c231 queue_delayed_work(conn->lgr->tx_wq, &conn->tx_work, in smc_tx_sendmsg()
261 rc = smc_ism_write(conn->lgr->smcd, &pos, data, len); in smcd_tx_ism_write()
271 struct smc_link_group *lgr = conn->lgr; in smc_tx_rdma_write() local
278 lgr->rtokens[conn->rtoken_idx][link->link_idx].dma_addr + in smc_tx_rdma_write()
283 rdma_wr->rkey = lgr->rtokens[conn->rtoken_idx][link->link_idx].rkey; in smc_tx_rdma_write()
459 if (conn->lgr->is_smcd) in smc_tx_rdma_writes()
505 mod_delayed_work(conn->lgr->tx_wq, &conn->tx_work, in smcr_tx_sndbuf_nonempty()
566 if (conn->lgr->is_smcd) in smc_tx_sndbuf_nonempty()
630 queue_delayed_work(conn->lgr in smc_tx_consumer_update()
[all...]
/kernel/linux/linux-6.6/net/smc/
H A Dsmc_core.c52 static void smc_buf_free(struct smc_link_group *lgr, bool is_rmb,
54 static void __smc_lgr_terminate(struct smc_link_group *lgr, bool soft);
59 static inline struct list_head *smc_lgr_list_head(struct smc_link_group *lgr, in smc_lgr_list_head() argument
62 if (lgr->is_smcd) { in smc_lgr_list_head()
63 *lgr_lock = &lgr->smcd->lgr_lock; in smc_lgr_list_head()
64 return &lgr->smcd->lgr_list; in smc_lgr_list_head()
81 static void smc_lgr_schedule_free_work(struct smc_link_group *lgr) in smc_lgr_schedule_free_work() argument
87 if (!lgr->freeing) { in smc_lgr_schedule_free_work()
88 mod_delayed_work(system_wq, &lgr->free_work, in smc_lgr_schedule_free_work()
89 (!lgr in smc_lgr_schedule_free_work()
199 struct smc_link_group *lgr = conn->lgr; __smc_lgr_unregister_conn() local
213 struct smc_link_group *lgr = conn->lgr; smc_lgr_unregister_conn() local
280 smc_nl_fill_lgr_v2_common(struct smc_link_group *lgr, struct sk_buff *skb, struct netlink_callback *cb, struct nlattr *v2_attrs) smc_nl_fill_lgr_v2_common() argument
311 smc_nl_fill_smcr_lgr_v2(struct smc_link_group *lgr, struct sk_buff *skb, struct netlink_callback *cb) smc_nl_fill_smcr_lgr_v2() argument
336 smc_nl_fill_lgr(struct smc_link_group *lgr, struct sk_buff *skb, struct netlink_callback *cb) smc_nl_fill_lgr() argument
384 smc_nl_fill_lgr_link(struct smc_link_group *lgr, struct smc_link *link, struct sk_buff *skb, struct netlink_callback *cb) smc_nl_fill_lgr_link() argument
445 smc_nl_handle_lgr(struct smc_link_group *lgr, struct sk_buff *skb, struct netlink_callback *cb, bool list_links) smc_nl_handle_lgr() argument
485 struct smc_link_group *lgr; smc_nl_fill_lgr_list() local
503 smc_nl_fill_smcd_lgr(struct smc_link_group *lgr, struct sk_buff *skb, struct netlink_callback *cb) smc_nl_fill_smcd_lgr() argument
567 struct smc_link_group *lgr; smc_nl_handle_smcd_lgr() local
638 smc_lgr_cleanup_early(struct smc_link_group *lgr) smc_lgr_cleanup_early() argument
654 smcr_lgr_link_deactivate_all(struct smc_link_group *lgr) smcr_lgr_link_deactivate_all() argument
672 struct smc_link_group *lgr = container_of(to_delayed_work(work), smc_lgr_free_work() local
708 struct smc_link_group *lgr = container_of(work, struct smc_link_group, smc_lgr_terminate_work() local
715 smcr_next_link_id(struct smc_link_group *lgr) smcr_next_link_id() argument
744 smcr_link_init(struct smc_link_group *lgr, struct smc_link *lnk, u8 link_idx, struct smc_init_info *ini) smcr_link_init() argument
828 struct smc_link_group *lgr; smc_lgr_create() local
1029 smc_switch_conns(struct smc_link_group *lgr, struct smc_link *from_lnk, bool is_dev_err) smc_switch_conns() argument
1107 smcr_buf_unuse(struct smc_buf_desc *buf_desc, bool is_rmb, struct smc_link_group *lgr) smcr_buf_unuse() argument
1142 smc_buf_unuse(struct smc_connection *conn, struct smc_link_group *lgr) smc_buf_unuse() argument
1167 struct smc_link_group *lgr = conn->lgr; smc_conn_free() local
1230 struct smc_link_group *lgr = lnk->lgr; smcr_buf_unmap_lgr() local
1250 struct smc_link_group *lgr = lnk->lgr; smcr_rtoken_clear_link() local
1261 struct smc_link_group *lgr = lnk->lgr; __smcr_link_clear() local
1304 smcr_buf_free(struct smc_link_group *lgr, bool is_rmb, struct smc_buf_desc *buf_desc) smcr_buf_free() argument
1319 smcd_buf_free(struct smc_link_group *lgr, bool is_dmb, struct smc_buf_desc *buf_desc) smcd_buf_free() argument
1332 smc_buf_free(struct smc_link_group *lgr, bool is_rmb, struct smc_buf_desc *buf_desc) smc_buf_free() argument
1341 __smc_lgr_free_bufs(struct smc_link_group *lgr, bool is_rmb) __smc_lgr_free_bufs() argument
1360 smc_lgr_free_bufs(struct smc_link_group *lgr) smc_lgr_free_bufs() argument
1369 __smc_lgr_free(struct smc_link_group *lgr) __smc_lgr_free() argument
1384 smc_lgr_free(struct smc_link_group *lgr) smc_lgr_free() argument
1406 smc_lgr_hold(struct smc_link_group *lgr) smc_lgr_hold() argument
1411 smc_lgr_put(struct smc_link_group *lgr) smc_lgr_put() argument
1449 smc_lgr_cleanup(struct smc_link_group *lgr) smc_lgr_cleanup() argument
1467 __smc_lgr_terminate(struct smc_link_group *lgr, bool soft) __smc_lgr_terminate() argument
1500 smc_lgr_terminate_sched(struct smc_link_group *lgr) smc_lgr_terminate_sched() argument
1519 struct smc_link_group *lgr, *l; smc_smcd_terminate() local
1545 struct smc_link_group *lgr, *lg; smc_smcd_terminate_all() local
1569 struct smc_link_group *lgr, *lg; smc_smcr_terminate_all() local
1605 smcr_lgr_set_type(struct smc_link_group *lgr, enum smc_lgr_type new_type) smcr_lgr_set_type() argument
1640 smcr_lgr_set_type_asym(struct smc_link_group *lgr, enum smc_lgr_type new_type, int asym_lnk_idx) smcr_lgr_set_type_asym() argument
1663 struct smc_link_group *lgr, *n; smcr_port_add() local
1692 struct smc_link_group *lgr = lnk->lgr; smcr_link_down() local
1750 struct smc_link_group *lgr, *n; smcr_port_err() local
1773 struct smc_link_group *lgr = link->lgr; smc_link_down_work() local
1831 smcr_lgr_match(struct smc_link_group *lgr, u8 smcr_version, u8 peer_systemid[], u8 peer_gid[], u8 peer_mac_v1[], enum smc_lgr_role role, u32 clcqpn, struct net *net) smcr_lgr_match() argument
1862 smcd_lgr_match(struct smc_link_group *lgr, struct smcd_dev *smcismdev, u64 peer_gid) smcd_lgr_match() argument
1874 struct smc_link_group *lgr; smc_conn_create() local
2150 struct smc_link_group *lgr = lnk->lgr; smcr_buf_map_lgr() local
2171 struct smc_link_group *lgr = lnk->lgr; smcr_buf_reg_lgr() local
2210 smcr_new_buf_create(struct smc_link_group *lgr, bool is_rmb, int bufsize) smcr_new_buf_create() argument
2258 smcr_buf_map_usable_links(struct smc_link_group *lgr, struct smc_buf_desc *buf_desc, bool is_rmb) smcr_buf_map_usable_links() argument
2283 smcd_new_buf_create(struct smc_link_group *lgr, bool is_dmb, int bufsize) smcd_new_buf_create() argument
2323 struct smc_link_group *lgr = conn->lgr; __smc_buf_create() local
2459 smc_rmb_reserve_rtoken_idx(struct smc_link_group *lgr) smc_rmb_reserve_rtoken_idx() argument
2470 smc_rtoken_find_by_link(struct smc_link_group *lgr, int lnk_idx, u32 rkey) smc_rtoken_find_by_link() argument
2484 smc_rtoken_set(struct smc_link_group *lgr, int link_idx, int link_idx_new, __be32 nw_rkey_known, __be64 nw_vaddr, __be32 nw_rkey) smc_rtoken_set() argument
2497 smc_rtoken_set2(struct smc_link_group *lgr, int rtok_idx, int link_id, __be64 nw_vaddr, __be32 nw_rkey) smc_rtoken_set2() argument
2520 struct smc_link_group *lgr = smc_get_lgr(lnk); smc_rtoken_add() local
2544 struct smc_link_group *lgr = smc_get_lgr(lnk); smc_rtoken_delete() local
[all...]
H A Dsmc_llc.c232 static void smc_llc_flow_parallel(struct smc_link_group *lgr, u8 flow_type, in smc_llc_flow_parallel() argument
238 flow_type != msg_type && !lgr->delayed_event) { in smc_llc_flow_parallel()
239 lgr->delayed_event = qentry; in smc_llc_flow_parallel()
246 SMC_LGR_ID_SIZE, &lgr->id, in smc_llc_flow_parallel()
247 lgr->net->net_cookie, in smc_llc_flow_parallel()
249 flow_type, lgr->role); in smc_llc_flow_parallel()
257 struct smc_link_group *lgr = qentry->link->lgr; in smc_llc_flow_start() local
259 spin_lock_bh(&lgr->llc_flow_lock); in smc_llc_flow_start()
262 smc_llc_flow_parallel(lgr, flo in smc_llc_flow_start()
286 smc_llc_flow_initiate(struct smc_link_group *lgr, enum smc_llc_flowtype type) smc_llc_flow_initiate() argument
320 smc_llc_flow_stop(struct smc_link_group *lgr, struct smc_llc_flow *flow) smc_llc_flow_stop() argument
336 smc_llc_wait(struct smc_link_group *lgr, struct smc_link *lnk, int time_out, u8 exp_msg) smc_llc_wait() argument
434 smc_llc_init_msg_hdr(struct smc_llc_hdr *hdr, struct smc_link_group *lgr, size_t len) smc_llc_init_msg_hdr() argument
563 _smc_llc_get_next_rmb(struct smc_link_group *lgr, int *buf_lst) _smc_llc_get_next_rmb() argument
579 smc_llc_get_next_rmb(struct smc_link_group *lgr, int *buf_lst, struct smc_buf_desc *buf_pos) smc_llc_get_next_rmb() argument
596 smc_llc_get_first_rmb(struct smc_link_group *lgr, int *buf_lst) smc_llc_get_first_rmb() argument
606 struct smc_link_group *lgr = link->lgr; smc_llc_fill_ext_v2() local
807 smc_llc_alloc_alt_link(struct smc_link_group *lgr, enum smc_lgr_type lgr_new_t) smc_llc_alloc_alt_link() argument
837 struct smc_link_group *lgr = link->lgr; smc_llc_add_link_cont() local
891 struct smc_link_group *lgr = link->lgr; smc_llc_cli_rkey_exchange() local
946 struct smc_link_group *lgr = link->lgr; smc_llc_cli_conf_link() local
1003 struct smc_link_group *lgr = link->lgr; smc_llc_save_add_link_rkeys() local
1034 struct smc_link_group *lgr = smc_get_lgr(link); smc_llc_cli_add_link() local
1165 struct smc_link_group *lgr = smc_get_lgr(link); smc_llc_cli_add_link_invite() local
1214 smc_llc_process_cli_add_link(struct smc_link_group *lgr) smc_llc_process_cli_add_link() argument
1228 smc_llc_active_link_count(struct smc_link_group *lgr) smc_llc_active_link_count() argument
1241 smc_llc_find_asym_link(struct smc_link_group *lgr) smc_llc_find_asym_link() argument
1285 smc_llc_delete_asym_link(struct smc_link_group *lgr) smc_llc_delete_asym_link() argument
1323 struct smc_link_group *lgr = link->lgr; smc_llc_srv_rkey_exchange() local
1364 struct smc_link_group *lgr = link->lgr; smc_llc_srv_conf_link() local
1407 struct smc_link_group *lgr = link->lgr; smc_llc_srv_add_link() local
1524 smc_llc_process_srv_add_link(struct smc_link_group *lgr) smc_llc_process_srv_add_link() argument
1556 struct smc_link_group *lgr = container_of(work, struct smc_link_group, smc_llc_add_link_work() local
1589 smc_llc_process_cli_delete_link(struct smc_link_group *lgr) smc_llc_process_cli_delete_link() argument
1647 smc_llc_send_link_delete_all(struct smc_link_group *lgr, bool ord, u32 rsn) smc_llc_send_link_delete_all() argument
1667 smc_llc_process_srv_delete_link(struct smc_link_group *lgr) smc_llc_process_srv_delete_link() argument
1737 struct smc_link_group *lgr = container_of(work, struct smc_link_group, smc_llc_delete_link_work() local
1755 smc_llc_rmt_conf_rkey(struct smc_link_group *lgr) smc_llc_rmt_conf_rkey() argument
1795 smc_llc_rmt_delete_rkey(struct smc_link_group *lgr) smc_llc_rmt_delete_rkey() argument
1844 smc_llc_protocol_violation(struct smc_link_group *lgr, u8 type) smc_llc_protocol_violation() argument
1854 smc_llc_event_flush(struct smc_link_group *lgr) smc_llc_event_flush() argument
1870 struct smc_link_group *lgr = link->lgr; smc_llc_event_handler() local
1987 struct smc_link_group *lgr = container_of(work, struct smc_link_group, smc_llc_event_work() local
2059 struct smc_link_group *lgr = link->lgr; smc_llc_enqueue() local
2137 smc_llc_lgr_init(struct smc_link_group *lgr, struct smc_sock *smc) smc_llc_lgr_init() argument
2154 smc_llc_lgr_clear(struct smc_link_group *lgr) smc_llc_lgr_clear() argument
2211 struct smc_link_group *lgr = send_link->lgr; smc_llc_do_confirm_rkey() local
2230 smc_llc_do_delete_rkey(struct smc_link_group *lgr, struct smc_buf_desc *rmb_desc) smc_llc_do_delete_rkey() argument
[all...]
H A Dsmc_llc.h63 static inline struct smc_link *smc_llc_usable_link(struct smc_link_group *lgr) in smc_llc_usable_link() argument
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,
[all...]
H A Dsmc_ism.c77 spin_lock_irqsave(&conn->lgr->smcd->lock, flags); in smc_ism_set_conn()
78 conn->lgr->smcd->conn[conn->rmb_desc->sba_idx] = conn; in smc_ism_set_conn()
79 spin_unlock_irqrestore(&conn->lgr->smcd->lock, flags); in smc_ism_set_conn()
90 spin_lock_irqsave(&conn->lgr->smcd->lock, flags); in smc_ism_unset_conn()
91 conn->lgr->smcd->conn[conn->rmb_desc->sba_idx] = NULL; in smc_ism_unset_conn()
92 spin_unlock_irqrestore(&conn->lgr->smcd->lock, flags); in smc_ism_unset_conn()
200 int smc_ism_register_dmb(struct smc_link_group *lgr, int dmb_len, in smc_ism_register_dmb() argument
210 dmb.vlan_id = lgr->vlan_id; in smc_ism_register_dmb()
211 dmb.rgid = lgr->peer_gid; in smc_ism_register_dmb()
212 rc = lgr in smc_ism_register_dmb()
516 smc_ism_signal_shutdown(struct smc_link_group *lgr) smc_ism_signal_shutdown() argument
[all...]
H A Dsmc_tracepoint.h93 __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;
111 TP_printk("lnk=%p lgr=%p net=%llu state=%d dev=%s location=%pS",
112 __entry->lnk, __entry->lgr, __entry->net_cookie,
H A Dsmc_wr.c96 if (link->lgr->smc_version != SMC_V2 || in smc_wr_tx_process_cqe()
104 memset(link->lgr->wr_tx_buf_v2, 0, in smc_wr_tx_process_cqe()
105 sizeof(*link->lgr->wr_tx_buf_v2)); in smc_wr_tx_process_cqe()
122 if (link->lgr->smc_version == SMC_V2) { in smc_wr_tx_process_cqe()
125 memset(link->lgr->wr_tx_buf_v2, 0, in smc_wr_tx_process_cqe()
126 sizeof(*link->lgr->wr_tx_buf_v2)); in smc_wr_tx_process_cqe()
201 struct smc_link_group *lgr = smc_get_lgr(link); in smc_wr_tx_get_free_slot() local
210 if (in_softirq() || lgr->terminating) { in smc_wr_tx_get_free_slot()
218 lgr->terminating || in smc_wr_tx_get_free_slot()
266 *wr_buf = link->lgr in smc_wr_tx_get_v2_slot()
680 smc_wr_free_lgr_mem(struct smc_link_group *lgr) smc_wr_free_lgr_mem() argument
723 smc_wr_alloc_lgr_mem(struct smc_link_group *lgr) smc_wr_alloc_lgr_mem() argument
[all...]
H A Dsmc_core.h155 u8 link_idx; /* index in lgr link array */
159 struct smc_link_group *lgr; /* parent link group */ member
186 /* tx/rx buffer list element for sndbufs list and rmbs list of a lgr */
242 enum smc_lgr_type { /* redundancy state of lgr */
243 SMC_LGR_NONE, /* no active links, lgr to be deleted */
283 u8 id[SMC_LGR_ID_SIZE]; /* unique lgr id */
284 struct delayed_work free_work; /* delayed freeing of an lgr */
285 struct work_struct terminate_work; /* abnormal lgr termination */
287 u8 sync_err : 1; /* lgr no longer fits to peer */
288 u8 terminating : 1;/* lgr i
434 smc_lgr_find_conn( u32 token, struct smc_link_group *lgr) smc_lgr_find_conn() argument
[all...]
H A Dsmc_ib.c75 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()
80 memcpy(&qp_attr.ah_attr.roce.dmac, lnk->lgr->nexthop_mac, in smc_ib_modify_qp_rtr()
81 sizeof(lnk->lgr->nexthop_mac)); in smc_ib_modify_qp_rtr()
125 struct smc_link_group *lgr = smc_get_lgr(lnk); in smc_ib_ready_link() local
145 if (lgr->role == SMC_SERV) { in smc_ib_ready_link()
330 struct smc_link_group *lgr; in smc_ib_gid_check() local
334 list_for_each_entry(lgr, in smc_ib_gid_check()
467 struct smc_link_group *lgr; smcr_diag_is_dev_critical() local
[all...]
H A Daf_smc.c526 struct smc_link_group *lgr = link->lgr; in smcr_lgr_reg_sndbufs() local
533 down_write(&lgr->llc_conf_mutex); in smcr_lgr_reg_sndbufs()
535 if (!smc_link_active(&lgr->lnk[i])) in smcr_lgr_reg_sndbufs()
537 rc = smcr_link_reg_buf(&lgr->lnk[i], snd_desc); in smcr_lgr_reg_sndbufs()
541 up_write(&lgr->llc_conf_mutex); in smcr_lgr_reg_sndbufs()
549 struct smc_link_group *lgr = link->lgr; in smcr_lgr_reg_rmbs() local
553 rc = smc_llc_flow_initiate(lgr, SMC_LLC_FLOW_RKEY); in smcr_lgr_reg_rmbs()
557 down_read(&lgr in smcr_lgr_reg_rmbs()
991 struct smc_link_group *lgr = conn->lgr; smc_conn_abort() local
1172 smc_fill_gid_list(struct smc_link_group *lgr, struct smc_gidlist *gidlist, struct smc_ib_device *known_dev, u8 *known_gid) smc_fill_gid_list() argument
[all...]
H A Dsmc_diag.c92 else if (smc_conn_lgr_valid(&smc->conn) && smc->conn.lgr->is_smcd) in __smc_diag_dump()
145 if (smc_conn_lgr_valid(&smc->conn) && !smc->conn.lgr->is_smcd && in __smc_diag_dump()
147 !list_empty(&smc->conn.lgr->list)) { in __smc_diag_dump()
151 .role = smc->conn.lgr->role, in __smc_diag_dump()
164 if (smc_conn_lgr_valid(&smc->conn) && smc->conn.lgr->is_smcd && in __smc_diag_dump()
166 !list_empty(&smc->conn.lgr->list) && smc->conn.rmb_desc) { in __smc_diag_dump()
169 struct smcd_dev *smcd = conn->lgr->smcd; in __smc_diag_dump()
173 dinfo.linkid = *((u32 *)conn->lgr->id); in __smc_diag_dump()
174 dinfo.peer_gid = conn->lgr->peer_gid; in __smc_diag_dump()
H A Dsmc_cdc.c213 (conn->lgr->is_smcd && conn->lgr->peer_shutdown)) in smc_cdc_get_slot_and_msg_send()
216 if (conn->lgr->is_smcd) { in smc_cdc_get_slot_and_msg_send()
442 struct smc_link_group *lgr; in smc_cdc_rx_handler() local
451 lgr = smc_get_lgr(link); in smc_cdc_rx_handler()
452 read_lock_bh(&lgr->conns_lock); in smc_cdc_rx_handler()
453 conn = smc_lgr_find_conn(ntohl(cdc->token), lgr); in smc_cdc_rx_handler()
454 read_unlock_bh(&lgr->conns_lock); in smc_cdc_rx_handler()
/kernel/linux/linux-6.6/arch/s390/purgatory/
H A Dhead.S37 lgr %r0,\dst
38 lgr %r1,\len
39 lgr %r2,\src
40 lgr %r3,\len
52 lgr %r4,\len
54 11: lgr %r4,%r0
144 lgr %r8,%r13
169 lgr %r7,%r9
185 lgr %r0,%r7
205 lgr
[all...]
/kernel/linux/linux-5.10/arch/s390/purgatory/
H A Dhead.S37 lgr %r0,\dst
38 lgr %r1,\len
39 lgr %r2,\src
40 lgr %r3,\len
49 lgr %r4,\len
138 lgr %r8,%r13
159 lgr %r7,%r9
189 lgr %r12,%r7
190 lgr %r11,%r9
/kernel/linux/linux-5.10/arch/s390/lib/
H A Dmem.S20 lgr %r1,%r2
78 lgr %r1,%r2
91 lgr %r1,%r2
129 lgr %r1,%r2
163 lgr %r1,%r2
/kernel/linux/linux-6.6/arch/s390/lib/
H A Dmem.S19 lgr %r1,%r2
79 lgr %r1,%r2
92 lgr %r1,%r2
132 lgr %r1,%r2
169 lgr %r1,%r2
/kernel/linux/linux-5.10/arch/s390/boot/
H A Dtext_dma.S30 lgr %r1,%r2
31 lgr %r2,%r3
32 lgr %r3,%r4
50 lgr %r1,%r2
/kernel/linux/linux-5.10/arch/s390/kernel/
H A Drelocate_kernel.S38 lgr %r6,%r5 # r6 = r5
45 lgr %r2,%r5 # move it into the right register,
54 lgr %r8,%r5 # r8 = r5

Completed in 24 milliseconds

123