| /linux/fs/smb/smbdirect/ |
| H A D | mr.c | 12 * All MRs are kept in mr_list. The MR can be recovered after it's used 19 struct smbdirect_mr_io *mr; in smbdirect_connection_create_mr_list() local 31 mr = kzalloc_obj(*mr); in smbdirect_connection_create_mr_list() 32 if (!mr) { in smbdirect_connection_create_mr_list() 37 kref_init(&mr->kref); in smbdirect_connection_create_mr_list() 38 mutex_init(&mr->mutex); in smbdirect_connection_create_mr_list() 40 mr->mr = ib_alloc_mr(sc->ib.pd, in smbdirect_connection_create_mr_list() 43 if (IS_ERR(mr->mr)) { in smbdirect_connection_create_mr_list() 44 ret = PTR_ERR(mr->mr); in smbdirect_connection_create_mr_list() 51 mr->sgt.sgl = kzalloc_objs(struct scatterlist, sp->max_frmr_depth); in smbdirect_connection_create_mr_list() [all …]
|
| /linux/net/sunrpc/xprtrdma/ |
| H A D | frwr_ops.c | 49 struct rpcrdma_mr *mr) in frwr_cid_init() argument 51 struct rpc_rdma_cid *cid = &mr->mr_cid; in frwr_cid_init() 54 cid->ci_completion_id = mr->mr_ibmr->res.id; in frwr_cid_init() 57 static void frwr_mr_unmap(struct rpcrdma_mr *mr) in frwr_mr_unmap() argument 59 if (mr->mr_device) { in frwr_mr_unmap() 60 trace_xprtrdma_mr_unmap(mr); in frwr_mr_unmap() 61 ib_dma_unmap_sg(mr->mr_device, mr->mr_sg, mr->mr_nents, in frwr_mr_unmap() 62 mr in frwr_mr_unmap() 72 frwr_mr_release(struct rpcrdma_mr * mr) frwr_mr_release() argument 85 frwr_mr_put(struct rpcrdma_mr * mr) frwr_mr_put() argument 108 struct rpcrdma_mr *mr; frwr_reset() local 122 frwr_mr_init(struct rpcrdma_xprt * r_xprt,struct rpcrdma_mr * mr) frwr_mr_init() argument 288 frwr_map(struct rpcrdma_xprt * r_xprt,struct rpcrdma_xdr_cursor * cur,bool writing,__be32 xid,struct rpcrdma_mr * mr) frwr_map() argument 432 struct rpcrdma_mr *mr = container_of(cqe, struct rpcrdma_mr, mr_cqe); frwr_wc_fastreg() local 458 struct rpcrdma_mr *mr; frwr_send() local 501 struct rpcrdma_mr *mr; frwr_reminv() local 512 frwr_mr_done(struct ib_wc * wc,struct rpcrdma_mr * mr) frwr_mr_done() argument 527 struct rpcrdma_mr *mr = container_of(cqe, struct rpcrdma_mr, mr_cqe); frwr_wc_localinv() local 546 struct rpcrdma_mr *mr = container_of(cqe, struct rpcrdma_mr, mr_cqe); frwr_wc_localinv_wake() local 572 struct rpcrdma_mr *mr; frwr_unmap_sync() local 643 struct rpcrdma_mr *mr = container_of(cqe, struct rpcrdma_mr, mr_cqe); frwr_wc_localinv_done() local 677 struct rpcrdma_mr *mr; frwr_unmap_async() local 745 struct rpcrdma_mr *mr; frwr_wp_create() local [all...] |
| /linux/include/trace/events/ |
| H A D | tsm_mr.h | 9 #include <linux/tsm-mr.h> 13 TP_PROTO(const struct tsm_measurement_register *mr), 15 TP_ARGS(mr), 18 __string(mr, mr->mr_name) 19 __string(hash, mr->mr_flags & TSM_MR_F_NOHASH ? 20 "data" : hash_algo_name[mr->mr_hash]) 21 __dynamic_array(u8, d, mr->mr_size) 25 __assign_str(mr); 27 memcpy(__get_dynamic_array(d), mr->mr_value, __get_dynamic_array_len(d)); 30 TP_printk("[%s] %s:%s", __get_str(mr), __get_str(hash), [all …]
|
| H A D | rdma_core.h | 306 const struct ib_mr *mr 309 TP_ARGS(pd, mr_type, max_num_sg, mr), 321 if (IS_ERR(mr)) { 323 __entry->rc = PTR_ERR(mr); 325 __entry->mr_id = mr->res.id; 332 TP_printk("pd.id=%u mr.id=%u type=%s max_num_sg=%u rc=%d", 343 const struct ib_mr *mr 346 TP_ARGS(pd, max_num_data_sg, max_num_meta_sg, mr), 358 if (IS_ERR(mr)) { 360 __entry->rc = PTR_ERR(mr); [all …]
|
| /linux/drivers/infiniband/sw/rxe/ |
| H A D | rxe_mw.c | 51 struct rxe_mw *mw, struct rxe_mr *mr, int access) in rxe_check_bind_mw() argument 83 if (unlikely(!mr || wqe->wr.wr.mw.length == 0)) { in rxe_check_bind_mw() 85 "attempt to invalidate type 2 MW by binding with NULL or zero length MR\n"); in rxe_check_bind_mw() 90 /* remaining checks only apply to a nonzero MR */ in rxe_check_bind_mw() 91 if (!mr) in rxe_check_bind_mw() 94 if (unlikely(mr->access & IB_ZERO_BASED)) { in rxe_check_bind_mw() 95 rxe_dbg_mw(mw, "attempt to bind MW to zero based MR\n"); in rxe_check_bind_mw() 100 if (unlikely(!(mr->access & IB_ACCESS_MW_BIND))) { in rxe_check_bind_mw() 102 "attempt to bind an MW to an MR without bind access\n"); in rxe_check_bind_mw() 109 !(mr->access & IB_ACCESS_LOCAL_WRITE))) { in rxe_check_bind_mw() [all …]
|
| /linux/arch/powerpc/platforms/pseries/ |
| H A D | hvCall.S | 64 mr r4,r3; \ 65 mr r3,r0; \ 77 mr r5,BUFREG; \ 160 mr r4,r5 161 mr r5,r6 162 mr r6,r7 163 mr r7,r8 164 mr r8,r9 165 mr r9,r10 187 mr r4,r5 [all …]
|
| /linux/include/linux/ |
| H A D | tsm-mr.h | 10 * register (MR) 11 * @mr_name: name of the MR 12 * @mr_value: buffer containing the current value of the MR 13 * @mr_size: size of the MR - typically the digest size of @mr_hash 26 * * %TSM_MR_F_READABLE - the sysfs attribute corresponding to this MR is readable. 27 * * %TSM_MR_F_WRITABLE - the sysfs attribute corresponding to this MR is writable. 28 * The semantics is typically to extend the MR but could vary depending on the 29 * architecture and the MR. 30 * * %TSM_MR_F_LIVE - this MR's value may differ from the last value written, so 33 * * %TSM_MR_F_NOHASH - this MR does NOT have an associated hash algorithm. [all …]
|
| /linux/drivers/rtc/ |
| H A D | rtc-at91sam9.c | 133 u32 offset, alarm, mr; in at91_rtc_settime() local 140 mr = rtt_readl(rtc, MR); in at91_rtc_settime() 143 rtt_writel(rtc, MR, mr & ~(AT91_RTT_ALMIEN | AT91_RTT_RTTINCIEN)); in at91_rtc_settime() 164 mr &= ~AT91_RTT_ALMIEN; in at91_rtc_settime() 170 rtt_writel(rtc, MR, mr | AT91_RTT_RTTRST); in at91_rtc_settime() 192 if (rtt_readl(rtc, MR) & AT91_RTT_ALMIEN) in at91_rtc_readalarm() 205 u32 mr; in at91_rtc_setalarm() local 214 mr = rtt_readl(rtc, MR); in at91_rtc_setalarm() 215 rtt_writel(rtc, MR, mr & ~AT91_RTT_ALMIEN); in at91_rtc_setalarm() 226 rtt_writel(rtc, MR, mr | AT91_RTT_ALMIEN); in at91_rtc_setalarm() [all …]
|
| /linux/drivers/infiniband/sw/rdmavt/ |
| H A D | trace_mr.h | 15 #include "mr.h" 21 TP_PROTO(struct rvt_mregion *mr, u16 m, u16 n, void *v, size_t len), 22 TP_ARGS(mr, m, n, v, len), 24 RDI_DEV_ENTRY(ib_to_rvt(mr->pd->device)) 37 RDI_DEV_ASSIGN(ib_to_rvt(mr->pd->device)); 40 __entry->iova = mr->iova; 41 __entry->user_base = mr->user_base; 42 __entry->lkey = mr->lkey; 46 __entry->length = mr->length; 47 __entry->offset = mr->offset; [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ |
| H A D | gddr5.c | 75 ram->mr[0] &= ~0xf7f; in nvkm_gddr5_calc() 76 ram->mr[0] |= (WR & 0x0f) << 8; in nvkm_gddr5_calc() 77 ram->mr[0] |= (CL & 0x0f) << 3; in nvkm_gddr5_calc() 78 ram->mr[0] |= (WL & 0x07) << 0; in nvkm_gddr5_calc() 80 ram->mr[1] &= ~0x0bf; in nvkm_gddr5_calc() 81 ram->mr[1] |= (xd & 0x01) << 7; in nvkm_gddr5_calc() 82 ram->mr[1] |= (at[0] & 0x03) << 4; in nvkm_gddr5_calc() 83 ram->mr[1] |= (dt & 0x03) << 2; in nvkm_gddr5_calc() 84 ram->mr[1] |= (ds & 0x03) << 0; in nvkm_gddr5_calc() 89 ram->mr1_nuts = ram->mr[1]; in nvkm_gddr5_calc() [all …]
|
| H A D | sddr3.c | 92 ODT = (ram->mr[1] & 0x004) >> 2 | in nvkm_sddr3_calc() 93 (ram->mr[1] & 0x040) >> 5 | in nvkm_sddr3_calc() 94 (ram->mr[1] & 0x200) >> 7; in nvkm_sddr3_calc() 106 ram->mr[0] &= ~0xf74; in nvkm_sddr3_calc() 107 ram->mr[0] |= (WR & 0x07) << 9; in nvkm_sddr3_calc() 108 ram->mr[0] |= (CL & 0x0e) << 3; in nvkm_sddr3_calc() 109 ram->mr[0] |= (CL & 0x01) << 2; in nvkm_sddr3_calc() 111 ram->mr[1] &= ~0x245; in nvkm_sddr3_calc() 112 ram->mr[1] |= (ODT & 0x1) << 2; in nvkm_sddr3_calc() 113 ram->mr[1] |= (ODT & 0x2) << 5; in nvkm_sddr3_calc() [all …]
|
| H A D | gddr3.c | 89 DLL = !(ram->mr[1] & 0x1); in nvkm_gddr3_calc() 90 RON = !((ram->mr[1] & 0x300) >> 8); in nvkm_gddr3_calc() 98 ODT = (ram->mr[1] & 0xc) >> 2; in nvkm_gddr3_calc() 101 hi = ram->mr[2] & 0x1; in nvkm_gddr3_calc() 107 ram->mr[0] &= ~0xf74; in nvkm_gddr3_calc() 108 ram->mr[0] |= (CWL & 0x07) << 9; in nvkm_gddr3_calc() 109 ram->mr[0] |= (CL & 0x07) << 4; in nvkm_gddr3_calc() 110 ram->mr[0] |= (CL & 0x08) >> 1; in nvkm_gddr3_calc() 112 ram->mr[1] &= ~0x3fc; in nvkm_gddr3_calc() 113 ram->mr[1] |= (ODT & 0x03) << 2; in nvkm_gddr3_calc() [all …]
|
| /linux/drivers/infiniband/core/ |
| H A D | mr_pool.c | 10 struct ib_mr *mr; in ib_mr_pool_get() local 14 mr = list_first_entry_or_null(list, struct ib_mr, qp_entry); in ib_mr_pool_get() 15 if (mr) { in ib_mr_pool_get() 16 list_del(&mr->qp_entry); in ib_mr_pool_get() 21 return mr; in ib_mr_pool_get() 25 void ib_mr_pool_put(struct ib_qp *qp, struct list_head *list, struct ib_mr *mr) in ib_mr_pool_put() argument 30 list_add(&mr->qp_entry, list); in ib_mr_pool_put() 39 struct ib_mr *mr; in ib_mr_pool_init() local 45 mr = ib_alloc_mr_integrity(qp->pd, max_num_sg, in ib_mr_pool_init() 48 mr = ib_alloc_mr(qp->pd, type, max_num_sg); in ib_mr_pool_init() [all …]
|
| /linux/net/rds/ |
| H A D | rdma.c | 70 struct rds_mr *mr; in rds_mr_tree_walk() local 74 mr = rb_entry(parent, struct rds_mr, r_rb_node); in rds_mr_tree_walk() 76 if (key < mr->r_key) in rds_mr_tree_walk() 78 else if (key > mr->r_key) in rds_mr_tree_walk() 81 return mr; in rds_mr_tree_walk() 93 * Destroy the transport-specific part of a MR. 95 static void rds_destroy_mr(struct rds_mr *mr) in rds_destroy_mr() argument 97 struct rds_sock *rs = mr->r_sock; in rds_destroy_mr() 101 rdsdebug("RDS: destroy mr key is %x refcnt %u\n", in rds_destroy_mr() 102 mr in rds_destroy_mr() 117 struct rds_mr *mr = container_of(kref, struct rds_mr, r_kref); __rds_put_mr_final() local 129 struct rds_mr *mr; rds_rdma_drop_keys() local 176 struct rds_mr *mr = NULL, *found; __rds_rdma_map() local 402 struct rds_mr *mr; rds_free_mr() local 447 struct rds_mr *mr; rds_rdma_unuse() local 812 struct rds_mr *mr; rds_cmsg_rdma_dest() local [all...] |
| /linux/drivers/virt/coco/guest/ |
| H A D | tsm-mr.c | 16 * @rwsem: protects the MR cache from concurrent access. 17 * @agrp: contains all MR attributes created by tsm_mr_create_attribute_group(). 18 * @tm: input to tsm_mr_create_attribute_group() containing MR definitions/ops. 19 * @in_sync: %true if MR cache is up-to-date. 20 * @mrs: array of &struct bin_attribute, one for each MR. 25 * Given tm->refresh() is potentially expensive, tm_digest_read() caches MR 30 * will be called only when a live MR is being read and the cache is stale 34 * semantics is arch and MR specific. Most (if not all) writable MRs support the 35 * extension semantics (i.e., tm->write() extends the input buffer into the MR). 50 const struct tsm_measurement_register *mr; in tm_digest_read() local [all …]
|
| /linux/drivers/net/ethernet/mellanox/mlxsw/ |
| H A D | spectrum_mr.c | 254 struct mlxsw_sp_mr *mr = mlxsw_sp->mr; in mlxsw_sp_mr_route_write() local 264 mr_route->route_priv = kzalloc(mr->mr_ops->route_priv_size, in mlxsw_sp_mr_route_write() 274 err = mr->mr_ops->route_create(mlxsw_sp, mr->priv, in mlxsw_sp_mr_route_write() 280 err = mr->mr_ops->route_update(mlxsw_sp, mr_route->route_priv, in mlxsw_sp_mr_route_write() 292 struct mlxsw_sp_mr *mr = mlxsw_sp->mr; in mlxsw_sp_mr_route_erase() local 294 mr->mr_ops->route_destroy(mlxsw_sp, mr->priv, mr_route->route_priv); in mlxsw_sp_mr_route_erase() 487 struct mlxsw_sp_mr *mr = mlxsw_sp->mr; in mlxsw_sp_mr_route_ivif_resolve() local 497 err = mr->mr_ops->route_irif_update(mlxsw_sp, rve->mr_route->route_priv, in mlxsw_sp_mr_route_ivif_resolve() 502 err = mr->mr_ops->route_action_update(mlxsw_sp, in mlxsw_sp_mr_route_ivif_resolve() 521 struct mlxsw_sp_mr *mr = mlxsw_sp->mr; in mlxsw_sp_mr_route_ivif_unresolve() local [all …]
|
| /linux/drivers/infiniband/ulp/iser/ |
| H A D | iser_memory.c | 160 * The signature MR cannot be invalidated and reused without checking. in iser_unreg_mem_fastreg() 162 * SCSI-Response is received. And the signature MR is not checked if in iser_unreg_mem_fastreg() 164 * handling. That's why we must check the signature MR here before in iser_unreg_mem_fastreg() 236 static inline void iser_inv_rkey(struct ib_send_wr *inv_wr, struct ib_mr *mr, in iser_inv_rkey() argument 241 inv_wr->ex.invalidate_rkey = mr->rkey; in iser_inv_rkey() 255 struct ib_mr *mr = rsc->sig_mr; in iser_reg_sig_mr() local 256 struct ib_sig_attrs *sig_attrs = mr->sig_attrs; in iser_reg_sig_mr() 268 iser_inv_rkey(&tx_desc->inv_wr, mr, cqe, &wr->wr); in iser_reg_sig_mr() 270 ib_update_fast_reg_key(mr, ib_inc_rkey(mr->rkey)); in iser_reg_sig_mr() 272 ret = ib_map_mr_sg_pi(mr, mem->sg, mem->dma_nents, NULL, in iser_reg_sig_mr() [all …]
|
| /linux/drivers/sh/intc/ |
| H A D | handle.c | 44 struct intc_mask_reg *mr = desc->hw.mask_regs; in _intc_mask_data() local 48 while (mr && enum_id && *reg_idx < desc->hw.nr_mask_regs) { in _intc_mask_data() 49 mr = desc->hw.mask_regs + *reg_idx; in _intc_mask_data() 51 for (; *fld_idx < ARRAY_SIZE(mr->enum_ids); (*fld_idx)++) { in _intc_mask_data() 52 if (mr->enum_ids[*fld_idx] != enum_id) in _intc_mask_data() 55 if (mr->set_reg && mr->clr_reg) { in _intc_mask_data() 58 reg_e = mr->clr_reg; in _intc_mask_data() 59 reg_d = mr->set_reg; in _intc_mask_data() 62 if (mr->set_reg) { in _intc_mask_data() 64 reg_e = mr->set_reg; in _intc_mask_data() [all …]
|
| H A D | balancing.c | 44 struct intc_mask_reg *mr = desc->hw.mask_regs; in intc_dist_data() local 48 for (i = 0; mr && enum_id && i < desc->hw.nr_mask_regs; i++) { in intc_dist_data() 49 mr = desc->hw.mask_regs + i; in intc_dist_data() 55 if (!mr->dist_reg) in intc_dist_data() 58 for (j = 0; j < ARRAY_SIZE(mr->enum_ids); j++) { in intc_dist_data() 59 if (mr->enum_ids[j] != enum_id) in intc_dist_data() 64 reg_e = mr->dist_reg; in intc_dist_data() 65 reg_d = mr->dist_reg; in intc_dist_data() 67 fn += (mr->reg_width >> 3) - 1; in intc_dist_data() 72 (mr->reg_width - 1) - j); in intc_dist_data()
|
| /linux/include/rdma/ |
| H A D | rdmavt_mr.h | 10 * For Memory Regions. This stuff should probably be moved into rdmavt/mr.h once 11 * drivers no longer need access to the MR directly. 68 struct rvt_mregion *mr; member 72 u16 m; /* current index: mr->map[m] */ 73 u16 n; /* current index: mr->map[m]->segs[n] */ 83 static inline void rvt_put_mr(struct rvt_mregion *mr) in rvt_put_mr() argument 85 percpu_ref_put(&mr->refcount); in rvt_put_mr() 88 static inline void rvt_get_mr(struct rvt_mregion *mr) in rvt_get_mr() argument 90 percpu_ref_get(&mr->refcount); in rvt_get_mr() 96 rvt_put_mr(ss->sge.mr); in rvt_put_ss() [all …]
|
| /linux/samples/tsm-mr/ |
| H A D | tsm_mr_sample.c | 7 #include <linux/tsm-mr.h> 33 const struct tsm_measurement_register *mr, in sample_report_refresh() 42 switch (mr->mr_hash) { in sample_report_refresh() 45 sha256_update(&ctx.sha256, mr->mr_value, mr->mr_size); in sample_report_extend_mr() 46 sha256_update(&ctx.sha256, data, mr->mr_size); in sample_report_extend_mr() argument 47 sha256_final(&ctx.sha256, mr->mr_value); in sample_report_extend_mr() 51 sha384_update(&ctx.sha384, mr->mr_value, mr->mr_size); in sample_report_extend_mr() 52 sha384_update(&ctx.sha384, data, mr in sample_report_extend_mr() 69 MR_(mr,hash) global() argument [all...] |
| /linux/drivers/gpu/drm/i915/gem/ |
| H A D | i915_gem_create.c | 27 struct intel_memory_region *mr = placements[i]; in object_max_page_size() local 29 GEM_BUG_ON(!is_power_of_2(mr->min_page_size)); in object_max_page_size() 30 max_page_size = max_t(u32, max_page_size, mr->min_page_size); in object_max_page_size() 51 struct intel_memory_region *mr = placements[0]; in object_set_placements() local 52 struct drm_i915_private *i915 = mr->i915; in object_set_placements() 54 obj->mm.placements = &i915->mm.regions[mr->id]; in object_set_placements() 95 struct intel_memory_region *mr = placements[0]; in __i915_gem_object_create_user_ext() local 126 ret = mr->ops->init_object(mr, obj, I915_BO_INVALID_OFFSET, size, 0, flags); in __i915_gem_object_create_user_ext() 172 struct intel_memory_region *mr; in i915_gem_dumb_create() local 208 mr = intel_memory_region_by_type(to_i915(dev), mem_type); in i915_gem_dumb_create() [all …]
|
| /linux/tools/testing/selftests/powerpc/mm/ |
| H A D | large_vm_gpr_corruption.c | 72 asm volatile("mr %0, %%r9 ;" // Read original GPR values in touch_mappings() 73 "mr %1, %%r10 ;" in touch_mappings() 74 "mr %2, %%r11 ;" in touch_mappings() 75 "mr %3, %%r12 ;" in touch_mappings() 76 "mr %4, %%r13 ;" in touch_mappings() 78 "mr %5, %%r9 ;" // Save possibly corrupted values in touch_mappings() 79 "mr %6, %%r10 ;" in touch_mappings() 80 "mr %7, %%r11 ;" in touch_mappings() 81 "mr %8, %%r12 ;" in touch_mappings() 82 "mr %9, %%r13 ;" in touch_mappings() [all …]
|
| /linux/net/xdp/ |
| H A D | xdp_umem.c | 158 static int xdp_umem_reg(struct xdp_umem *umem, struct xdp_umem_reg *mr) in xdp_umem_reg() argument 160 bool unaligned_chunks = mr->flags & XDP_UMEM_UNALIGNED_CHUNK_FLAG; in xdp_umem_reg() 161 u32 chunk_size = mr->chunk_size, headroom = mr->headroom; in xdp_umem_reg() 162 u64 addr = mr->addr, size = mr->len; in xdp_umem_reg() 177 if (mr->flags & ~XDP_UMEM_FLAGS_VALID) in xdp_umem_reg() 210 if (mr->flags & XDP_UMEM_TX_METADATA_LEN) { in xdp_umem_reg() 211 if (mr->tx_metadata_len >= 256 || mr->tx_metadata_len % 8) in xdp_umem_reg() 213 umem->tx_metadata_len = mr->tx_metadata_len; in xdp_umem_reg() 223 umem->flags = mr->flags; in xdp_umem_reg() 249 struct xdp_umem *xdp_umem_create(struct xdp_umem_reg *mr) in xdp_umem_create() argument [all …]
|
| /linux/net/netfilter/ |
| H A D | xt_MASQUERADE.c | 21 const struct nf_nat_ipv4_multi_range_compat *mr = par->targinfo; in masquerade_tg_check() local 23 if (mr->range[0].flags & NF_NAT_RANGE_MAP_IPS) { in masquerade_tg_check() 27 if (mr->rangesize != 1) { in masquerade_tg_check() 28 pr_debug("bad rangesize %u\n", mr->rangesize); in masquerade_tg_check() 38 const struct nf_nat_ipv4_multi_range_compat *mr; in masquerade_tg() local 40 mr = par->targinfo; in masquerade_tg() 41 range.flags = mr->range[0].flags; in masquerade_tg() 42 range.min_proto = mr->range[0].min; in masquerade_tg() 43 range.max_proto = mr->range[0].max; in masquerade_tg()
|