Home
last modified time | relevance | path

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

12

/openbmc/linux/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->is_smcd && lgr->role == SMC_CLNT) ? in smc_lgr_schedule_free_work()
[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, flow->type, qentry); in smc_llc_flow_start()
263 spin_unlock_bh(&lgr->llc_flow_lock); in smc_llc_flow_start()
[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_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->wr_tx_buf_v2; in smc_wr_tx_get_v2_slot()
[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;
112 __entry->lnk, __entry->lgr, __entry->net_cookie,
H A Dsmc_ism.c78 spin_lock_irqsave(&conn->lgr->smcd->lock, flags); in smc_ism_set_conn()
79 conn->lgr->smcd->conn[conn->rmb_desc->sba_idx] = conn; in smc_ism_set_conn()
80 spin_unlock_irqrestore(&conn->lgr->smcd->lock, flags); in smc_ism_set_conn()
91 spin_lock_irqsave(&conn->lgr->smcd->lock, flags); in smc_ism_unset_conn()
92 conn->lgr->smcd->conn[conn->rmb_desc->sba_idx] = NULL; in smc_ism_unset_conn()
93 spin_unlock_irqrestore(&conn->lgr->smcd->lock, flags); in smc_ism_unset_conn()
205 int smc_ism_register_dmb(struct smc_link_group *lgr, int dmb_len, in smc_ism_register_dmb() argument
215 dmb.vlan_id = lgr->vlan_id; in smc_ism_register_dmb()
216 dmb.rgid = lgr->peer_gid.gid; in smc_ism_register_dmb()
217 rc = lgr->smcd->ops->register_dmb(lgr->smcd, &dmb, &smc_ism_client); in smc_ism_register_dmb()
[all …]
H A Dsmc_core.h161 struct smc_link_group *lgr; /* parent link group */ member
442 u32 token, struct smc_link_group *lgr) in smc_lgr_find_conn() argument
447 node = lgr->conns_all.rb_node; in smc_lgr_find_conn()
469 return conn->lgr && conn->alert_token_local; in smc_conn_lgr_valid()
548 void smc_lgr_cleanup_early(struct smc_link_group *lgr);
549 void smc_lgr_terminate_sched(struct smc_link_group *lgr);
550 void smc_lgr_hold(struct smc_link_group *lgr);
551 void smc_lgr_put(struct smc_link_group *lgr);
565 void smc_rtoken_set(struct smc_link_group *lgr, int link_idx, int link_idx_new,
567 void smc_rtoken_set2(struct smc_link_group *lgr, int rtok_idx, int link_id,
[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()
335 struct smc_link_group *lgr; in smc_ib_gid_check() local
339 list_for_each_entry(lgr, &smc_lgr_list.list, list) { in smc_ib_gid_check()
340 if (strncmp(smcibdev->pnetid[ibport - 1], lgr->pnet_id, in smc_ib_gid_check()
343 if (list_empty(&lgr->list)) in smc_ib_gid_check()
[all …]
H A Dsmc_diag.c93 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()
H A Daf_smc.c517 struct smc_link_group *lgr = link->lgr; in smcr_lgr_reg_sndbufs() local
524 down_write(&lgr->llc_conf_mutex); in smcr_lgr_reg_sndbufs()
526 if (!smc_link_active(&lgr->lnk[i])) in smcr_lgr_reg_sndbufs()
528 rc = smcr_link_reg_buf(&lgr->lnk[i], snd_desc); in smcr_lgr_reg_sndbufs()
532 up_write(&lgr->llc_conf_mutex); in smcr_lgr_reg_sndbufs()
540 struct smc_link_group *lgr = link->lgr; in smcr_lgr_reg_rmbs() local
544 rc = smc_llc_flow_initiate(lgr, SMC_LLC_FLOW_RKEY); in smcr_lgr_reg_rmbs()
548 down_read(&lgr->llc_conf_mutex); in smcr_lgr_reg_rmbs()
550 if (!smc_link_active(&lgr->lnk[i])) in smcr_lgr_reg_rmbs()
553 up_read(&lgr->llc_conf_mutex); in smcr_lgr_reg_rmbs()
[all …]
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()
H A Dsmc_tx.c308 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()
746 queue_delayed_work(conn->lgr->tx_wq, &conn->tx_work, in smc_tx_consumer_update()
H A Dsmc_ism.h41 int smc_ism_register_dmb(struct smc_link_group *lgr, int buf_size,
48 int smc_ism_signal_shutdown(struct smc_link_group *lgr);
H A Dsmc_rx.c152 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()
H A Dsmc_wr.h107 int smc_wr_alloc_lgr_mem(struct smc_link_group *lgr);
110 void smc_wr_free_lgr_mem(struct smc_link_group *lgr);
/openbmc/qemu/common-user/host/s390x/
H A Dsafe-syscall.inc.S37 lgr %r1,%r15
56 lgr %r8,%r2 /* signal_pending pointer */
57 lgr %r1,%r3 /* syscall number */
58 lgr %r2,%r4 /* syscall args */
59 lgr %r3,%r5
60 lgr %r4,%r6
/openbmc/linux/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 %r12,%r7
[all …]
/openbmc/linux/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
60 lgr %r0,%r4 # subcode
H A Dtext_amode31.S31 lgr %r1,%r2
32 lgr %r2,%r3
33 lgr %r3,%r4
51 lgr %r1,%r2
H A Dreipl.S73 lgr %r9,%r2
74 lgr %r2,%r3
H A Dentry.S60 lgr %r14,%r15
133 lgr %r14,\reg
306 lgr %r3,%r14
322 lgr %r3,%r11
/openbmc/linux/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
/openbmc/linux/fs/nfs/filelayout/
H A 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()
/openbmc/linux/fs/nfs/blocklayout/
H A Dblocklayout.c646 bl_alloc_lseg(struct pnfs_layout_hdr *lo, struct nfs4_layoutget_res *lgr, in bl_alloc_lseg() argument
650 .mode = lgr->range.iomode, in bl_alloc_lseg()
651 .start = lgr->range.offset >> SECTOR_SHIFT, in bl_alloc_lseg()
652 .inval = lgr->range.offset >> SECTOR_SHIFT, in bl_alloc_lseg()
653 .cowread = lgr->range.offset >> SECTOR_SHIFT, in bl_alloc_lseg()
677 lgr->layoutp->pages, lgr->layoutp->len); in bl_alloc_lseg()
698 if (lgr->range.offset + lgr->range.length != in bl_alloc_lseg()
/openbmc/linux/arch/s390/boot/
H A Dhead_kdump.S61 lgr %r11,%r2 # Save kdump base address
62 lgr %r12,%r2

12