Home
last modified time | relevance | path

Searched refs:lgr (Results 1 – 25 of 30) sorted by relevance

12

/Linux-v5.15/net/smc/
Dsmc_core.c51 static void smc_buf_free(struct smc_link_group *lgr, bool is_rmb,
53 static void __smc_lgr_terminate(struct smc_link_group *lgr, bool soft);
58 static inline struct list_head *smc_lgr_list_head(struct smc_link_group *lgr, in smc_lgr_list_head() argument
61 if (lgr->is_smcd) { in smc_lgr_list_head()
62 *lgr_lock = &lgr->smcd->lgr_lock; in smc_lgr_list_head()
63 return &lgr->smcd->lgr_list; in smc_lgr_list_head()
80 static void smc_lgr_schedule_free_work(struct smc_link_group *lgr) in smc_lgr_schedule_free_work() argument
86 if (!lgr->freeing) { in smc_lgr_schedule_free_work()
87 mod_delayed_work(system_wq, &lgr->free_work, in smc_lgr_schedule_free_work()
88 (!lgr->is_smcd && lgr->role == SMC_CLNT) ? in smc_lgr_schedule_free_work()
[all …]
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->llc_flow_lock); in smc_llc_flow_start()
237 spin_unlock_bh(&lgr->llc_flow_lock); in smc_llc_flow_start()
[all …]
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 …]
Dsmc_ism.c66 spin_lock_irqsave(&conn->lgr->smcd->lock, flags); in smc_ism_set_conn()
67 conn->lgr->smcd->conn[conn->rmb_desc->sba_idx] = conn; in smc_ism_set_conn()
68 spin_unlock_irqrestore(&conn->lgr->smcd->lock, flags); in smc_ism_set_conn()
79 spin_lock_irqsave(&conn->lgr->smcd->lock, flags); in smc_ism_unset_conn()
80 conn->lgr->smcd->conn[conn->rmb_desc->sba_idx] = NULL; in smc_ism_unset_conn()
81 spin_unlock_irqrestore(&conn->lgr->smcd->lock, flags); in smc_ism_unset_conn()
189 int smc_ism_register_dmb(struct smc_link_group *lgr, int dmb_len, in smc_ism_register_dmb() argument
198 dmb.vlan_id = lgr->vlan_id; in smc_ism_register_dmb()
199 dmb.rgid = lgr->peer_gid; in smc_ism_register_dmb()
200 rc = lgr->smcd->ops->register_dmb(lgr->smcd, &dmb); in smc_ism_register_dmb()
[all …]
Dsmc_diag.c92 else if (smc->conn.lgr && smc->conn.lgr->is_smcd) in __smc_diag_dump()
145 if (smc->conn.lgr && !smc->conn.lgr->is_smcd && in __smc_diag_dump()
147 !list_empty(&smc->conn.lgr->list)) { in __smc_diag_dump()
149 .role = smc->conn.lgr->role, in __smc_diag_dump()
155 smc->conn.lgr->lnk[0].smcibdev->ibdev->name, in __smc_diag_dump()
165 if (smc->conn.lgr && smc->conn.lgr->is_smcd && in __smc_diag_dump()
167 !list_empty(&smc->conn.lgr->list)) { 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()
175 dinfo.my_gid = conn->lgr->smcd->local_gid; in __smc_diag_dump()
Dsmc_core.h130 struct smc_link_group *lgr; /* parent link group */ member
336 u32 token, struct smc_link_group *lgr) in smc_lgr_find_conn() argument
341 node = lgr->conns_all.rb_node; in smc_lgr_find_conn()
417 void smc_lgr_terminate_sched(struct smc_link_group *lgr);
430 void smc_rtoken_set(struct smc_link_group *lgr, int link_idx, int link_idx_new,
432 void smc_rtoken_set2(struct smc_link_group *lgr, int rtok_idx, int link_id,
442 void smc_lgr_schedule_free_work_fast(struct smc_link_group *lgr);
446 int smcr_link_init(struct smc_link_group *lgr, struct smc_link *lnk,
453 void smcr_lgr_set_type(struct smc_link_group *lgr, enum smc_lgr_type new_type);
454 void smcr_lgr_set_type_asym(struct smc_link_group *lgr,
[all …]
Dsmc_cdc.c182 if (!conn->lgr || (conn->lgr->is_smcd && conn->lgr->peer_shutdown)) in smc_cdc_get_slot_and_msg_send()
185 if (conn->lgr->is_smcd) { in smc_cdc_get_slot_and_msg_send()
429 struct smc_link_group *lgr; in smc_cdc_rx_handler() local
438 lgr = smc_get_lgr(link); in smc_cdc_rx_handler()
439 read_lock_bh(&lgr->conns_lock); in smc_cdc_rx_handler()
440 conn = smc_lgr_find_conn(ntohl(cdc->token), lgr); in smc_cdc_rx_handler()
441 read_unlock_bh(&lgr->conns_lock); in smc_cdc_rx_handler()
Dsmc_tx.c244 queue_delayed_work(conn->lgr->tx_wq, &conn->tx_work, in smc_tx_sendmsg()
274 rc = smc_ism_write(conn->lgr->smcd, &pos, data, len); in smcd_tx_ism_write()
284 struct smc_link_group *lgr = conn->lgr; in smc_tx_rdma_write() local
291 lgr->rtokens[conn->rtoken_idx][link->link_idx].dma_addr + in smc_tx_rdma_write()
296 rdma_wr->rkey = lgr->rtokens[conn->rtoken_idx][link->link_idx].rkey; in smc_tx_rdma_write()
476 if (conn->lgr->is_smcd) in smc_tx_rdma_writes()
522 mod_delayed_work(conn->lgr->tx_wq, &conn->tx_work, in smcr_tx_sndbuf_nonempty()
583 if (conn->lgr->is_smcd) in smc_tx_sndbuf_nonempty()
647 queue_delayed_work(conn->lgr->tx_wq, &conn->tx_work, in smc_tx_consumer_update()
Dsmc_ism.h45 int smc_ism_register_dmb(struct smc_link_group *lgr, int buf_size,
50 int smc_ism_signal_shutdown(struct smc_link_group *lgr);
Daf_smc.c352 struct smc_link_group *lgr = link->lgr; in smcr_lgr_reg_rmbs() local
355 rc = smc_llc_flow_initiate(lgr, SMC_LLC_FLOW_RKEY); in smcr_lgr_reg_rmbs()
361 mutex_lock(&lgr->llc_conf_mutex); in smcr_lgr_reg_rmbs()
363 if (!smc_link_active(&lgr->lnk[i])) in smcr_lgr_reg_rmbs()
365 rc = smcr_link_reg_rmb(&lgr->lnk[i], rmb_desc); in smcr_lgr_reg_rmbs()
378 mutex_unlock(&lgr->llc_conf_mutex); in smcr_lgr_reg_rmbs()
379 smc_llc_flow_stop(lgr, &lgr->llc_flow_lcl); in smcr_lgr_reg_rmbs()
390 qentry = smc_llc_wait(link->lgr, NULL, SMC_LLC_WAIT_TIME, in smcr_clnt_conf_first_link()
401 smc_llc_flow_qentry_del(&link->lgr->llc_flow_lcl); in smcr_clnt_conf_first_link()
423 smcr_lgr_set_type(link->lgr, SMC_LGR_SINGLE); in smcr_clnt_conf_first_link()
[all …]
Dsmc_ib.c115 struct smc_link_group *lgr = smc_get_lgr(lnk); in smc_ib_ready_link() local
135 if (lgr->role == SMC_SERV) { in smc_ib_ready_link()
333 struct smc_link_group *lgr; in smcr_diag_is_dev_critical() local
338 list_for_each_entry(lgr, &smc_lgr->list, list) { in smcr_diag_is_dev_critical()
339 if (lgr->is_smcd) in smcr_diag_is_dev_critical()
342 if (lgr->lnk[i].state == SMC_LNK_UNUSED || in smcr_diag_is_dev_critical()
343 lgr->lnk[i].smcibdev != smcibdev) in smcr_diag_is_dev_critical()
345 if (lgr->type == SMC_LGR_SINGLE || in smcr_diag_is_dev_critical()
346 lgr->type == SMC_LGR_ASYMMETRIC_LOCAL) { in smcr_diag_is_dev_critical()
Dsmc_clc.c436 smc->conn.lgr->sync_err = 1; in smc_clc_wait_msg()
437 smc_lgr_terminate_sched(smc->conn.lgr); in smc_clc_wait_msg()
462 if ((!smc->conn.lgr || !smc->conn.lgr->is_smcd) && in smc_clc_send_decline()
654 if (conn->lgr->is_smcd) { in smc_clc_send_confirm_accept()
659 clc->d0.gid = conn->lgr->smcd->local_gid; in smc_clc_send_confirm_accept()
663 memcpy(&clc->d0.linkid, conn->lgr->id, SMC_LGR_ID_SIZE); in smc_clc_send_confirm_accept()
669 clc_v2->chid = htons(smc_ism_get_chid(conn->lgr->smcd)); in smc_clc_send_confirm_accept()
670 smc_ism_get_system_eid(conn->lgr->smcd, &eid); in smc_clc_send_confirm_accept()
Dsmc_pnet.h65 void smc_pnet_find_alt_roce(struct smc_link_group *lgr,
Dsmc.h134 struct smc_link_group *lgr; /* link group of connection */ member
Dsmc_wr.c199 struct smc_link_group *lgr = smc_get_lgr(link); in smc_wr_tx_get_free_slot() local
208 if (in_softirq() || lgr->terminating) { in smc_wr_tx_get_free_slot()
216 lgr->terminating || in smc_wr_tx_get_free_slot()
/Linux-v5.15/arch/s390/purgatory/
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
/Linux-v5.15/arch/s390/lib/
Dmem.S20 lgr %r1,%r2
78 lgr %r1,%r2
91 lgr %r1,%r2
129 lgr %r1,%r2
163 lgr %r1,%r2
/Linux-v5.15/arch/s390/kernel/
Dtext_amode31.S30 lgr %r1,%r2
31 lgr %r2,%r3
32 lgr %r3,%r4
50 lgr %r1,%r2
Drelocate_kernel.S38 lgr %r6,%r5 # r6 = r5
45 lgr %r2,%r5 # move it into the right register,
54 lgr %r8,%r5 # r8 = r5
Dreipl.S73 lgr %r9,%r2
74 lgr %r2,%r3
Dentry.S65 lgr %r14,%r15
161 lgr %r14,\reg
324 lgr %r3,%r14
338 lgr %r3,%r11
DMakefile39 obj-y += sysinfo.o lgr.o os_info.o machine_kexec.o
/Linux-v5.15/fs/nfs/filelayout/
Dfilelayout.c601 struct nfs4_layoutget_res *lgr, in filelayout_check_layout() argument
609 if (lgr->range.offset != 0 || in filelayout_check_layout()
610 lgr->range.length != NFS4_MAX_UINT64) { in filelayout_check_layout()
616 if (fl->pattern_offset > lgr->range.offset) { in filelayout_check_layout()
652 struct nfs4_layoutget_res *lgr, in filelayout_decode_layout() argument
668 xdr_init_decode_pages(&stream, &buf, lgr->layoutp->pages, lgr->layoutp->len); in filelayout_decode_layout()
767 struct nfs4_layoutget_res *lgr, in filelayout_alloc_lseg() argument
778 rc = filelayout_decode_layout(layoutid, fl, lgr, gfp_flags); in filelayout_alloc_lseg()
779 if (rc != 0 || filelayout_check_layout(layoutid, fl, lgr, gfp_flags)) { in filelayout_alloc_lseg()
/Linux-v5.15/fs/nfs/blocklayout/
Dblocklayout.c663 bl_alloc_lseg(struct pnfs_layout_hdr *lo, struct nfs4_layoutget_res *lgr, in bl_alloc_lseg() argument
667 .mode = lgr->range.iomode, in bl_alloc_lseg()
668 .start = lgr->range.offset >> SECTOR_SHIFT, in bl_alloc_lseg()
669 .inval = lgr->range.offset >> SECTOR_SHIFT, in bl_alloc_lseg()
670 .cowread = lgr->range.offset >> SECTOR_SHIFT, in bl_alloc_lseg()
694 lgr->layoutp->pages, lgr->layoutp->len); in bl_alloc_lseg()
715 if (lgr->range.offset + lgr->range.length != in bl_alloc_lseg()
/Linux-v5.15/arch/s390/boot/
Dhead_kdump.S61 lgr %r11,%r2 # Save kdump base address
62 lgr %r12,%r2

12