/openbmc/linux/net/smc/ |
H A D | smc_core.c | 52 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 D | smc_llc.c | 232 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 D | smc_llc.h | 63 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 D | smc_wr.c | 96 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 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,
|
H A D | smc_ism.c | 78 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 D | smc_core.h | 161 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 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() 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 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()
|
H A D | af_smc.c | 517 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 D | smc_cdc.c | 213 (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 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() 746 queue_delayed_work(conn->lgr->tx_wq, &conn->tx_work, in smc_tx_consumer_update()
|
H A D | smc_ism.h | 41 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 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()
|
H 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);
|
/openbmc/qemu/common-user/host/s390x/ |
H A D | safe-syscall.inc.S | 37 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 D | head.S | 37 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 D | relocate_kernel.S | 38 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 D | text_amode31.S | 31 lgr %r1,%r2 32 lgr %r2,%r3 33 lgr %r3,%r4 51 lgr %r1,%r2
|
H A D | reipl.S | 73 lgr %r9,%r2 74 lgr %r2,%r3
|
H A D | entry.S | 60 lgr %r14,%r15 133 lgr %r14,\reg 306 lgr %r3,%r14 322 lgr %r3,%r11
|
/openbmc/linux/arch/s390/lib/ |
H A D | mem.S | 19 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 D | filelayout.c | 601 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 D | blocklayout.c | 646 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 D | head_kdump.S | 61 lgr %r11,%r2 # Save kdump base address 62 lgr %r12,%r2
|