ibmr 41 drivers/i2c/busses/i2c-pxa.c u32 ibmr; ibmr 68 drivers/i2c/busses/i2c-pxa.c .ibmr = 0x00, ibmr 75 drivers/i2c/busses/i2c-pxa.c .ibmr = 0x00, ibmr 82 drivers/i2c/busses/i2c-pxa.c .ibmr = 0x14, ibmr 89 drivers/i2c/busses/i2c-pxa.c .ibmr = 0x00, ibmr 98 drivers/i2c/busses/i2c-pxa.c .ibmr = 0x00, ibmr 1249 drivers/i2c/busses/i2c-pxa.c i2c->reg_ibmr = i2c->reg_base + pxa_reg_layout[i2c_type].ibmr; ibmr 50 drivers/infiniband/hw/cxgb3/iwch_mem.c mhp->ibmr.rkey = mhp->ibmr.lkey = stag; ibmr 423 drivers/infiniband/hw/cxgb3/iwch_provider.c return &mhp->ibmr; ibmr 514 drivers/infiniband/hw/cxgb3/iwch_provider.c iwch_dereg_mr(&mhp->ibmr, udata); ibmr 520 drivers/infiniband/hw/cxgb3/iwch_provider.c return &mhp->ibmr; ibmr 623 drivers/infiniband/hw/cxgb3/iwch_provider.c mhp->ibmr.rkey = mhp->ibmr.lkey = stag; ibmr 629 drivers/infiniband/hw/cxgb3/iwch_provider.c return &(mhp->ibmr); ibmr 643 drivers/infiniband/hw/cxgb3/iwch_provider.c static int iwch_set_page(struct ib_mr *ibmr, u64 addr) ibmr 645 drivers/infiniband/hw/cxgb3/iwch_provider.c struct iwch_mr *mhp = to_iwch_mr(ibmr); ibmr 655 drivers/infiniband/hw/cxgb3/iwch_provider.c static int iwch_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, ibmr 658 drivers/infiniband/hw/cxgb3/iwch_provider.c struct iwch_mr *mhp = to_iwch_mr(ibmr); ibmr 662 drivers/infiniband/hw/cxgb3/iwch_provider.c return ib_sg_to_pages(ibmr, sg, sg_nents, sg_offset, iwch_set_page); ibmr 75 drivers/infiniband/hw/cxgb3/iwch_provider.h struct ib_mr ibmr; ibmr 86 drivers/infiniband/hw/cxgb3/iwch_provider.h static inline struct iwch_mr *to_iwch_mr(struct ib_mr *ibmr) ibmr 88 drivers/infiniband/hw/cxgb3/iwch_provider.h return container_of(ibmr, struct iwch_mr, ibmr); ibmr 160 drivers/infiniband/hw/cxgb3/iwch_qp.c wqe->fastreg.len = cpu_to_be32(mhp->ibmr.length); ibmr 161 drivers/infiniband/hw/cxgb3/iwch_qp.c wqe->fastreg.va_base_hi = cpu_to_be32(mhp->ibmr.iova >> 32); ibmr 163 drivers/infiniband/hw/cxgb3/iwch_qp.c cpu_to_be32(mhp->ibmr.iova & 0xffffffff); ibmr 396 drivers/infiniband/hw/cxgb4/iw_cxgb4.h struct ib_mr ibmr; ibmr 409 drivers/infiniband/hw/cxgb4/iw_cxgb4.h static inline struct c4iw_mr *to_c4iw_mr(struct ib_mr *ibmr) ibmr 411 drivers/infiniband/hw/cxgb4/iw_cxgb4.h return container_of(ibmr, struct c4iw_mr, ibmr); ibmr 984 drivers/infiniband/hw/cxgb4/iw_cxgb4.h int c4iw_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, int sg_nents, ibmr 400 drivers/infiniband/hw/cxgb4/mem.c mhp->ibmr.rkey = mhp->ibmr.lkey = stag; ibmr 401 drivers/infiniband/hw/cxgb4/mem.c mhp->ibmr.length = mhp->attr.len; ibmr 402 drivers/infiniband/hw/cxgb4/mem.c mhp->ibmr.iova = mhp->attr.va_fbo; ibmr 403 drivers/infiniband/hw/cxgb4/mem.c mhp->ibmr.page_size = 1U << (mhp->attr.page_size + 12); ibmr 495 drivers/infiniband/hw/cxgb4/mem.c return &mhp->ibmr; ibmr 599 drivers/infiniband/hw/cxgb4/mem.c return &mhp->ibmr; ibmr 748 drivers/infiniband/hw/cxgb4/mem.c mhp->ibmr.rkey = mhp->ibmr.lkey = stag; ibmr 755 drivers/infiniband/hw/cxgb4/mem.c return &(mhp->ibmr); ibmr 773 drivers/infiniband/hw/cxgb4/mem.c static int c4iw_set_page(struct ib_mr *ibmr, u64 addr) ibmr 775 drivers/infiniband/hw/cxgb4/mem.c struct c4iw_mr *mhp = to_c4iw_mr(ibmr); ibmr 785 drivers/infiniband/hw/cxgb4/mem.c int c4iw_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, int sg_nents, ibmr 788 drivers/infiniband/hw/cxgb4/mem.c struct c4iw_mr *mhp = to_c4iw_mr(ibmr); ibmr 792 drivers/infiniband/hw/cxgb4/mem.c return ib_sg_to_pages(ibmr, sg, sg_nents, sg_offset, c4iw_set_page); ibmr 794 drivers/infiniband/hw/cxgb4/qp.c fr->stag = cpu_to_be32(mhp->ibmr.rkey); ibmr 797 drivers/infiniband/hw/cxgb4/qp.c FW_RI_TPTE_STAGKEY_V((mhp->ibmr.rkey & FW_RI_TPTE_STAGKEY_M)) | ibmr 809 drivers/infiniband/hw/cxgb4/qp.c fr->tpte.len_lo = cpu_to_be32(mhp->ibmr.length); ibmr 810 drivers/infiniband/hw/cxgb4/qp.c fr->tpte.va_hi = cpu_to_be32(mhp->ibmr.iova >> 32); ibmr 811 drivers/infiniband/hw/cxgb4/qp.c fr->tpte.va_lo_fbo = cpu_to_be32(mhp->ibmr.iova & 0xffffffff); ibmr 837 drivers/infiniband/hw/cxgb4/qp.c wqe->fr.len_lo = cpu_to_be32(mhp->ibmr.length); ibmr 839 drivers/infiniband/hw/cxgb4/qp.c wqe->fr.va_hi = cpu_to_be32(mhp->ibmr.iova >> 32); ibmr 840 drivers/infiniband/hw/cxgb4/qp.c wqe->fr.va_lo_fbo = cpu_to_be32(mhp->ibmr.iova & ibmr 439 drivers/infiniband/hw/cxgb4/restrack.c struct ib_mr *ibmr = container_of(res, struct ib_mr, res); ibmr 440 drivers/infiniband/hw/cxgb4/restrack.c struct c4iw_mr *mhp = to_c4iw_mr(ibmr); ibmr 85 drivers/infiniband/hw/efa/efa.h struct ib_mr ibmr; ibmr 143 drivers/infiniband/hw/efa/efa.h int efa_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata); ibmr 130 drivers/infiniband/hw/efa/efa_verbs.c static inline struct efa_mr *to_emr(struct ib_mr *ibmr) ibmr 132 drivers/infiniband/hw/efa/efa_verbs.c return container_of(ibmr, struct efa_mr, ibmr); ibmr 1478 drivers/infiniband/hw/efa/efa_verbs.c mr->ibmr.lkey = result.l_key; ibmr 1479 drivers/infiniband/hw/efa/efa_verbs.c mr->ibmr.rkey = result.r_key; ibmr 1480 drivers/infiniband/hw/efa/efa_verbs.c mr->ibmr.length = length; ibmr 1481 drivers/infiniband/hw/efa/efa_verbs.c ibdev_dbg(&dev->ibdev, "Registered mr[%d]\n", mr->ibmr.lkey); ibmr 1483 drivers/infiniband/hw/efa/efa_verbs.c return &mr->ibmr; ibmr 1494 drivers/infiniband/hw/efa/efa_verbs.c int efa_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata) ibmr 1496 drivers/infiniband/hw/efa/efa_verbs.c struct efa_dev *dev = to_edev(ibmr->device); ibmr 1498 drivers/infiniband/hw/efa/efa_verbs.c struct efa_mr *mr = to_emr(ibmr); ibmr 1501 drivers/infiniband/hw/efa/efa_verbs.c ibdev_dbg(&dev->ibdev, "Deregister mr[%d]\n", ibmr->lkey); ibmr 1503 drivers/infiniband/hw/efa/efa_verbs.c params.l_key = mr->ibmr.lkey; ibmr 385 drivers/infiniband/hw/hns/hns_roce_device.h struct ib_mr ibmr; ibmr 1069 drivers/infiniband/hw/hns/hns_roce_device.h static inline struct hns_roce_mr *to_hr_mr(struct ib_mr *ibmr) ibmr 1071 drivers/infiniband/hw/hns/hns_roce_device.h return container_of(ibmr, struct hns_roce_mr, ibmr); ibmr 1197 drivers/infiniband/hw/hns/hns_roce_device.h int hns_roce_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, int sg_nents, ibmr 1199 drivers/infiniband/hw/hns/hns_roce_device.h int hns_roce_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata); ibmr 1006 drivers/infiniband/hw/hns/hns_roce_mr.c mr->ibmr.rkey = mr->ibmr.lkey = mr->key; ibmr 1009 drivers/infiniband/hw/hns/hns_roce_mr.c return &mr->ibmr; ibmr 1193 drivers/infiniband/hw/hns/hns_roce_mr.c mr->ibmr.rkey = mr->ibmr.lkey = mr->key; ibmr 1195 drivers/infiniband/hw/hns/hns_roce_mr.c return &mr->ibmr; ibmr 1208 drivers/infiniband/hw/hns/hns_roce_mr.c static int rereg_mr_trans(struct ib_mr *ibmr, int flags, ibmr 1214 drivers/infiniband/hw/hns/hns_roce_mr.c struct hns_roce_dev *hr_dev = to_hr_dev(ibmr->device); ibmr 1215 drivers/infiniband/hw/hns/hns_roce_mr.c struct hns_roce_mr *mr = to_hr_mr(ibmr); ibmr 1285 drivers/infiniband/hw/hns/hns_roce_mr.c int hns_roce_rereg_user_mr(struct ib_mr *ibmr, int flags, u64 start, u64 length, ibmr 1289 drivers/infiniband/hw/hns/hns_roce_mr.c struct hns_roce_dev *hr_dev = to_hr_dev(ibmr->device); ibmr 1290 drivers/infiniband/hw/hns/hns_roce_mr.c struct hns_roce_mr *mr = to_hr_mr(ibmr); ibmr 1321 drivers/infiniband/hw/hns/hns_roce_mr.c ret = rereg_mr_trans(ibmr, flags, ibmr 1356 drivers/infiniband/hw/hns/hns_roce_mr.c int hns_roce_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata) ibmr 1358 drivers/infiniband/hw/hns/hns_roce_mr.c struct hns_roce_dev *hr_dev = to_hr_dev(ibmr->device); ibmr 1359 drivers/infiniband/hw/hns/hns_roce_mr.c struct hns_roce_mr *mr = to_hr_mr(ibmr); ibmr 1412 drivers/infiniband/hw/hns/hns_roce_mr.c mr->ibmr.rkey = mr->ibmr.lkey = mr->key; ibmr 1415 drivers/infiniband/hw/hns/hns_roce_mr.c return &mr->ibmr; ibmr 1425 drivers/infiniband/hw/hns/hns_roce_mr.c static int hns_roce_set_page(struct ib_mr *ibmr, u64 addr) ibmr 1427 drivers/infiniband/hw/hns/hns_roce_mr.c struct hns_roce_mr *mr = to_hr_mr(ibmr); ibmr 1434 drivers/infiniband/hw/hns/hns_roce_mr.c int hns_roce_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, int sg_nents, ibmr 1437 drivers/infiniband/hw/hns/hns_roce_mr.c struct hns_roce_mr *mr = to_hr_mr(ibmr); ibmr 1441 drivers/infiniband/hw/hns/hns_roce_mr.c return ib_sg_to_pages(ibmr, sg, sg_nents, sg_offset, hns_roce_set_page); ibmr 359 drivers/infiniband/hw/i40iw/i40iw.h static inline struct i40iw_mr *to_iwmr(struct ib_mr *ibmr) ibmr 361 drivers/infiniband/hw/i40iw/i40iw.h return container_of(ibmr, struct i40iw_mr, ibmr); ibmr 3644 drivers/infiniband/hw/i40iw/i40iw_cm.c struct ib_mr *ibmr; ibmr 3710 drivers/infiniband/hw/i40iw/i40iw_cm.c ibmr = i40iw_reg_phys_mr(&iwpd->ibpd, ibmr 3715 drivers/infiniband/hw/i40iw/i40iw_cm.c if (IS_ERR(ibmr)) { ibmr 3720 drivers/infiniband/hw/i40iw/i40iw_cm.c ibmr->pd = &iwpd->ibpd; ibmr 3721 drivers/infiniband/hw/i40iw/i40iw_cm.c ibmr->device = iwpd->ibpd.device; ibmr 3722 drivers/infiniband/hw/i40iw/i40iw_cm.c iwqp->lsmm_mr = ibmr; ibmr 3728 drivers/infiniband/hw/i40iw/i40iw_cm.c ibmr->lkey); ibmr 1512 drivers/infiniband/hw/i40iw/i40iw_verbs.c struct i40iw_pd *iwpd = to_iwpd(iwmr->ibmr.pd); ibmr 1573 drivers/infiniband/hw/i40iw/i40iw_verbs.c iwmr->ibmr.rkey = stag; ibmr 1574 drivers/infiniband/hw/i40iw/i40iw_verbs.c iwmr->ibmr.lkey = stag; ibmr 1575 drivers/infiniband/hw/i40iw/i40iw_verbs.c iwmr->ibmr.pd = pd; ibmr 1576 drivers/infiniband/hw/i40iw/i40iw_verbs.c iwmr->ibmr.device = pd->device; ibmr 1595 drivers/infiniband/hw/i40iw/i40iw_verbs.c return &iwmr->ibmr; ibmr 1610 drivers/infiniband/hw/i40iw/i40iw_verbs.c static int i40iw_set_page(struct ib_mr *ibmr, u64 addr) ibmr 1612 drivers/infiniband/hw/i40iw/i40iw_verbs.c struct i40iw_mr *iwmr = to_iwmr(ibmr); ibmr 1631 drivers/infiniband/hw/i40iw/i40iw_verbs.c static int i40iw_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, ibmr 1634 drivers/infiniband/hw/i40iw/i40iw_verbs.c struct i40iw_mr *iwmr = to_iwmr(ibmr); ibmr 1637 drivers/infiniband/hw/i40iw/i40iw_verbs.c return ib_sg_to_pages(ibmr, sg, sg_nents, sg_offset, i40iw_set_page); ibmr 1678 drivers/infiniband/hw/i40iw/i40iw_verbs.c struct i40iw_pd *iwpd = to_iwpd(iwmr->ibmr.pd); ibmr 1784 drivers/infiniband/hw/i40iw/i40iw_verbs.c iwmr->ibmr.pd = pd; ibmr 1785 drivers/infiniband/hw/i40iw/i40iw_verbs.c iwmr->ibmr.device = pd->device; ibmr 1850 drivers/infiniband/hw/i40iw/i40iw_verbs.c iwmr->ibmr.rkey = stag; ibmr 1851 drivers/infiniband/hw/i40iw/i40iw_verbs.c iwmr->ibmr.lkey = stag; ibmr 1867 drivers/infiniband/hw/i40iw/i40iw_verbs.c return &iwmr->ibmr; ibmr 1903 drivers/infiniband/hw/i40iw/i40iw_verbs.c iwmr->ibmr.pd = pd; ibmr 1904 drivers/infiniband/hw/i40iw/i40iw_verbs.c iwmr->ibmr.device = pd->device; ibmr 1916 drivers/infiniband/hw/i40iw/i40iw_verbs.c iwmr->ibmr.rkey = stag; ibmr 1917 drivers/infiniband/hw/i40iw/i40iw_verbs.c iwmr->ibmr.lkey = stag; ibmr 1929 drivers/infiniband/hw/i40iw/i40iw_verbs.c return &iwmr->ibmr; ibmr 2249 drivers/infiniband/hw/i40iw/i40iw_verbs.c info.va = (void *)(uintptr_t)iwmr->ibmr.iova; ibmr 2250 drivers/infiniband/hw/i40iw/i40iw_verbs.c info.total_len = iwmr->ibmr.length; ibmr 90 drivers/infiniband/hw/i40iw/i40iw_verbs.h struct ib_mr ibmr; ibmr 134 drivers/infiniband/hw/mlx4/mlx4_ib.h struct ib_mr ibmr; ibmr 671 drivers/infiniband/hw/mlx4/mlx4_ib.h static inline struct mlx4_ib_mr *to_mmr(struct ib_mr *ibmr) ibmr 673 drivers/infiniband/hw/mlx4/mlx4_ib.h return container_of(ibmr, struct mlx4_ib_mr, ibmr); ibmr 742 drivers/infiniband/hw/mlx4/mlx4_ib.h int mlx4_ib_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, int sg_nents, ibmr 76 drivers/infiniband/hw/mlx4/mr.c mr->ibmr.rkey = mr->ibmr.lkey = mr->mmr.key; ibmr 79 drivers/infiniband/hw/mlx4/mr.c return &mr->ibmr; ibmr 440 drivers/infiniband/hw/mlx4/mr.c mr->ibmr.rkey = mr->ibmr.lkey = mr->mmr.key; ibmr 441 drivers/infiniband/hw/mlx4/mr.c mr->ibmr.length = length; ibmr 442 drivers/infiniband/hw/mlx4/mr.c mr->ibmr.iova = virt_addr; ibmr 443 drivers/infiniband/hw/mlx4/mr.c mr->ibmr.page_size = 1U << shift; ibmr 445 drivers/infiniband/hw/mlx4/mr.c return &mr->ibmr; ibmr 588 drivers/infiniband/hw/mlx4/mr.c struct ib_device *device = mr->ibmr.device; ibmr 597 drivers/infiniband/hw/mlx4/mr.c int mlx4_ib_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata) ibmr 599 drivers/infiniband/hw/mlx4/mr.c struct mlx4_ib_mr *mr = to_mmr(ibmr); ibmr 604 drivers/infiniband/hw/mlx4/mr.c ret = mlx4_mr_free(to_mdev(ibmr->device)->dev, &mr->mmr); ibmr 686 drivers/infiniband/hw/mlx4/mr.c mr->ibmr.rkey = mr->ibmr.lkey = mr->mmr.key; ibmr 689 drivers/infiniband/hw/mlx4/mr.c return &mr->ibmr; ibmr 692 drivers/infiniband/hw/mlx4/mr.c mr->ibmr.device = pd->device; ibmr 794 drivers/infiniband/hw/mlx4/mr.c static int mlx4_set_page(struct ib_mr *ibmr, u64 addr) ibmr 796 drivers/infiniband/hw/mlx4/mr.c struct mlx4_ib_mr *mr = to_mmr(ibmr); ibmr 806 drivers/infiniband/hw/mlx4/mr.c int mlx4_ib_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, int sg_nents, ibmr 809 drivers/infiniband/hw/mlx4/mr.c struct mlx4_ib_mr *mr = to_mmr(ibmr); ibmr 814 drivers/infiniband/hw/mlx4/mr.c ib_dma_sync_single_for_cpu(ibmr->device, mr->page_map, ibmr 817 drivers/infiniband/hw/mlx4/mr.c rc = ib_sg_to_pages(ibmr, sg, sg_nents, sg_offset, mlx4_set_page); ibmr 819 drivers/infiniband/hw/mlx4/mr.c ib_dma_sync_single_for_device(ibmr->device, mr->page_map, ibmr 3326 drivers/infiniband/hw/mlx4/qp.c fseg->start_addr = cpu_to_be64(mr->ibmr.iova); ibmr 3327 drivers/infiniband/hw/mlx4/qp.c fseg->reg_len = cpu_to_be64(mr->ibmr.length); ibmr 3329 drivers/infiniband/hw/mlx4/qp.c fseg->page_size = cpu_to_be32(ilog2(mr->ibmr.page_size)); ibmr 590 drivers/infiniband/hw/mlx5/mlx5_ib.h struct ib_mr ibmr; ibmr 1083 drivers/infiniband/hw/mlx5/mlx5_ib.h static inline struct mlx5_ib_mr *to_mmr(struct ib_mr *ibmr) ibmr 1085 drivers/infiniband/hw/mlx5/mlx5_ib.h return container_of(ibmr, struct mlx5_ib_mr, ibmr); ibmr 1169 drivers/infiniband/hw/mlx5/mlx5_ib.h int mlx5_ib_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata); ibmr 1175 drivers/infiniband/hw/mlx5/mlx5_ib.h int mlx5_ib_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, int sg_nents, ibmr 1177 drivers/infiniband/hw/mlx5/mlx5_ib.h int mlx5_ib_map_mr_sg_pi(struct ib_mr *ibmr, struct scatterlist *data_sg, ibmr 1227 drivers/infiniband/hw/mlx5/mlx5_ib.h int mlx5_ib_check_mr_status(struct ib_mr *ibmr, u32 check_mask, ibmr 722 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.lkey = mr->mmkey.key; ibmr 723 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.rkey = mr->mmkey.key; ibmr 726 drivers/infiniband/hw/mlx5/mr.c return &mr->ibmr; ibmr 874 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.pd = pd; ibmr 995 drivers/infiniband/hw/mlx5/mr.c wr.pd = mr->ibmr.pd; ibmr 1050 drivers/infiniband/hw/mlx5/mr.c static struct mlx5_ib_mr *reg_create(struct ib_mr *ibmr, struct ib_pd *pd, ibmr 1065 drivers/infiniband/hw/mlx5/mr.c mr = ibmr ? to_mmr(ibmr) : kzalloc(sizeof(*mr), GFP_KERNEL); ibmr 1069 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.pd = pd; ibmr 1130 drivers/infiniband/hw/mlx5/mr.c if (!ibmr) ibmr 1141 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.lkey = mr->mmkey.key; ibmr 1142 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.rkey = mr->mmkey.key; ibmr 1143 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.length = length; ibmr 1192 drivers/infiniband/hw/mlx5/mr.c return &mr->ibmr; ibmr 1279 drivers/infiniband/hw/mlx5/mr.c return &mr->ibmr; ibmr 1345 drivers/infiniband/hw/mlx5/mr.c return &mr->ibmr; ibmr 1470 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.pd = pd; ibmr 1540 drivers/infiniband/hw/mlx5/mr.c struct ib_device *device = mr->ibmr.device; ibmr 1628 drivers/infiniband/hw/mlx5/mr.c int mlx5_ib_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata) ibmr 1630 drivers/infiniband/hw/mlx5/mr.c struct mlx5_ib_mr *mmr = to_mmr(ibmr); ibmr 1632 drivers/infiniband/hw/mlx5/mr.c if (ibmr->type == IB_MR_TYPE_INTEGRITY) { ibmr 1633 drivers/infiniband/hw/mlx5/mr.c dereg_mr(to_mdev(mmr->mtt_mr->ibmr.device), mmr->mtt_mr); ibmr 1634 drivers/infiniband/hw/mlx5/mr.c dereg_mr(to_mdev(mmr->klm_mr->ibmr.device), mmr->klm_mr); ibmr 1637 drivers/infiniband/hw/mlx5/mr.c dereg_mr(to_mdev(ibmr->device), mmr); ibmr 1681 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.lkey = mr->mmkey.key; ibmr 1682 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.rkey = mr->mmkey.key; ibmr 1706 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.pd = pd; ibmr 1707 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.device = pd->device; ibmr 1803 drivers/infiniband/hw/mlx5/mr.c dereg_mr(to_mdev(mr->mtt_mr->ibmr.device), mr->mtt_mr); ibmr 1806 drivers/infiniband/hw/mlx5/mr.c dereg_mr(to_mdev(mr->klm_mr->ibmr.device), mr->klm_mr); ibmr 1842 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.device = pd->device; ibmr 1866 drivers/infiniband/hw/mlx5/mr.c return &mr->ibmr; ibmr 1986 drivers/infiniband/hw/mlx5/mr.c int mlx5_ib_check_mr_status(struct ib_mr *ibmr, u32 check_mask, ibmr 1989 drivers/infiniband/hw/mlx5/mr.c struct mlx5_ib_mr *mmr = to_mmr(ibmr); ibmr 2010 drivers/infiniband/hw/mlx5/mr.c if (ibmr->lkey == mmr->sig->err_item.key) ibmr 2028 drivers/infiniband/hw/mlx5/mr.c mlx5_ib_map_pa_mr_sg_pi(struct ib_mr *ibmr, struct scatterlist *data_sg, ibmr 2033 drivers/infiniband/hw/mlx5/mr.c struct mlx5_ib_mr *mr = to_mmr(ibmr); ibmr 2055 drivers/infiniband/hw/mlx5/mr.c ibmr->length = mr->data_length + mr->meta_length; ibmr 2073 drivers/infiniband/hw/mlx5/mr.c u32 lkey = mr->ibmr.pd->local_dma_lkey; ibmr 2076 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.iova = sg_dma_address(sg) + sg_offset; ibmr 2077 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.length = 0; ibmr 2085 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.length += sg_dma_len(sg) - sg_offset; ibmr 2094 drivers/infiniband/hw/mlx5/mr.c mr->data_length = mr->ibmr.length; ibmr 2107 drivers/infiniband/hw/mlx5/mr.c mr->ibmr.length += sg_dma_len(sg) - sg_offset; ibmr 2115 drivers/infiniband/hw/mlx5/mr.c mr->meta_length = mr->ibmr.length - mr->data_length; ibmr 2121 drivers/infiniband/hw/mlx5/mr.c static int mlx5_set_page(struct ib_mr *ibmr, u64 addr) ibmr 2123 drivers/infiniband/hw/mlx5/mr.c struct mlx5_ib_mr *mr = to_mmr(ibmr); ibmr 2135 drivers/infiniband/hw/mlx5/mr.c static int mlx5_set_page_pi(struct ib_mr *ibmr, u64 addr) ibmr 2137 drivers/infiniband/hw/mlx5/mr.c struct mlx5_ib_mr *mr = to_mmr(ibmr); ibmr 2151 drivers/infiniband/hw/mlx5/mr.c mlx5_ib_map_mtt_mr_sg_pi(struct ib_mr *ibmr, struct scatterlist *data_sg, ibmr 2156 drivers/infiniband/hw/mlx5/mr.c struct mlx5_ib_mr *mr = to_mmr(ibmr); ibmr 2164 drivers/infiniband/hw/mlx5/mr.c ib_dma_sync_single_for_cpu(ibmr->device, pi_mr->desc_map, ibmr 2168 drivers/infiniband/hw/mlx5/mr.c pi_mr->ibmr.page_size = ibmr->page_size; ibmr 2169 drivers/infiniband/hw/mlx5/mr.c n = ib_sg_to_pages(&pi_mr->ibmr, data_sg, data_sg_nents, data_sg_offset, ibmr 2174 drivers/infiniband/hw/mlx5/mr.c pi_mr->data_iova = pi_mr->ibmr.iova; ibmr 2175 drivers/infiniband/hw/mlx5/mr.c pi_mr->data_length = pi_mr->ibmr.length; ibmr 2176 drivers/infiniband/hw/mlx5/mr.c pi_mr->ibmr.length = pi_mr->data_length; ibmr 2177 drivers/infiniband/hw/mlx5/mr.c ibmr->length = pi_mr->data_length; ibmr 2180 drivers/infiniband/hw/mlx5/mr.c u64 page_mask = ~((u64)ibmr->page_size - 1); ibmr 2183 drivers/infiniband/hw/mlx5/mr.c n += ib_sg_to_pages(&pi_mr->ibmr, meta_sg, meta_sg_nents, ibmr 2186 drivers/infiniband/hw/mlx5/mr.c pi_mr->meta_length = pi_mr->ibmr.length; ibmr 2194 drivers/infiniband/hw/mlx5/mr.c pi_mr->ndescs * ibmr->page_size + ibmr 2195 drivers/infiniband/hw/mlx5/mr.c (pi_mr->ibmr.iova & ~page_mask); ibmr 2203 drivers/infiniband/hw/mlx5/mr.c pi_mr->ibmr.length = pi_mr->pi_iova + pi_mr->meta_length - iova; ibmr 2204 drivers/infiniband/hw/mlx5/mr.c pi_mr->ibmr.iova = iova; ibmr 2205 drivers/infiniband/hw/mlx5/mr.c ibmr->length += pi_mr->meta_length; ibmr 2208 drivers/infiniband/hw/mlx5/mr.c ib_dma_sync_single_for_device(ibmr->device, pi_mr->desc_map, ibmr 2216 drivers/infiniband/hw/mlx5/mr.c mlx5_ib_map_klm_mr_sg_pi(struct ib_mr *ibmr, struct scatterlist *data_sg, ibmr 2221 drivers/infiniband/hw/mlx5/mr.c struct mlx5_ib_mr *mr = to_mmr(ibmr); ibmr 2229 drivers/infiniband/hw/mlx5/mr.c ib_dma_sync_single_for_cpu(ibmr->device, pi_mr->desc_map, ibmr 2236 drivers/infiniband/hw/mlx5/mr.c ib_dma_sync_single_for_device(ibmr->device, pi_mr->desc_map, ibmr 2242 drivers/infiniband/hw/mlx5/mr.c pi_mr->ibmr.iova = 0; ibmr 2244 drivers/infiniband/hw/mlx5/mr.c ibmr->length = pi_mr->ibmr.length; ibmr 2249 drivers/infiniband/hw/mlx5/mr.c int mlx5_ib_map_mr_sg_pi(struct ib_mr *ibmr, struct scatterlist *data_sg, ibmr 2254 drivers/infiniband/hw/mlx5/mr.c struct mlx5_ib_mr *mr = to_mmr(ibmr); ibmr 2258 drivers/infiniband/hw/mlx5/mr.c WARN_ON(ibmr->type != IB_MR_TYPE_INTEGRITY); ibmr 2271 drivers/infiniband/hw/mlx5/mr.c n = mlx5_ib_map_pa_mr_sg_pi(ibmr, data_sg, data_sg_nents, ibmr 2285 drivers/infiniband/hw/mlx5/mr.c n = mlx5_ib_map_mtt_mr_sg_pi(ibmr, data_sg, data_sg_nents, ibmr 2292 drivers/infiniband/hw/mlx5/mr.c n = mlx5_ib_map_klm_mr_sg_pi(ibmr, data_sg, data_sg_nents, ibmr 2300 drivers/infiniband/hw/mlx5/mr.c ibmr->iova = 0; ibmr 2303 drivers/infiniband/hw/mlx5/mr.c ibmr->sig_attrs->meta_length = pi_mr->meta_length; ibmr 2305 drivers/infiniband/hw/mlx5/mr.c ibmr->sig_attrs->meta_length = mr->meta_length; ibmr 2310 drivers/infiniband/hw/mlx5/mr.c int mlx5_ib_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, int sg_nents, ibmr 2313 drivers/infiniband/hw/mlx5/mr.c struct mlx5_ib_mr *mr = to_mmr(ibmr); ibmr 2318 drivers/infiniband/hw/mlx5/mr.c ib_dma_sync_single_for_cpu(ibmr->device, mr->desc_map, ibmr 2326 drivers/infiniband/hw/mlx5/mr.c n = ib_sg_to_pages(ibmr, sg, sg_nents, sg_offset, ibmr 2329 drivers/infiniband/hw/mlx5/mr.c ib_dma_sync_single_for_device(ibmr->device, mr->desc_map, ibmr 166 drivers/infiniband/hw/mlx5/odp.c struct ib_pd *pd = mr->ibmr.pd; ibmr 213 drivers/infiniband/hw/mlx5/odp.c pklm->key = cpu_to_be32(mtt->ibmr.lkey); ibmr 267 drivers/infiniband/hw/mlx5/odp.c if (!mr || !mr->ibmr.pd) ibmr 433 drivers/infiniband/hw/mlx5/odp.c mr->ibmr.pd = pd; ibmr 460 drivers/infiniband/hw/mlx5/odp.c mr->ibmr.lkey = mr->mmkey.key; ibmr 461 drivers/infiniband/hw/mlx5/odp.c mr->ibmr.rkey = mr->mmkey.key; ibmr 478 drivers/infiniband/hw/mlx5/odp.c struct mlx5_ib_dev *dev = to_mdev(mr->ibmr.pd->device); ibmr 502 drivers/infiniband/hw/mlx5/odp.c mtt = implicit_mr_alloc(mr->ibmr.pd, odp, 0, ibmr 812 drivers/infiniband/hw/mlx5/odp.c if (!smp_load_acquire(&mr->live) || !mr->ibmr.pd) { ibmr 820 drivers/infiniband/hw/mlx5/odp.c mr->ibmr.pd != pd) { ibmr 1685 drivers/infiniband/hw/mlx5/odp.c if (mr->ibmr.pd != pd) { ibmr 4350 drivers/infiniband/hw/mlx5/qp.c seg->log2_page_size = ilog2(mr->ibmr.page_size); ibmr 4358 drivers/infiniband/hw/mlx5/qp.c seg->start_addr = cpu_to_be64(mr->ibmr.iova); ibmr 4359 drivers/infiniband/hw/mlx5/qp.c seg->len = cpu_to_be64(mr->ibmr.length); ibmr 4609 drivers/infiniband/hw/mlx5/qp.c data_key = pi_mr->ibmr.lkey; ibmr 4613 drivers/infiniband/hw/mlx5/qp.c prot_key = pi_mr->ibmr.lkey; ibmr 4737 drivers/infiniband/hw/mlx5/qp.c struct ib_sig_attrs *sig_attrs = sig_mr->ibmr.sig_attrs; ibmr 4749 drivers/infiniband/hw/mlx5/qp.c region_len = pi_mr->ibmr.length; ibmr 5096 drivers/infiniband/hw/mlx5/qp.c reg_pi_wr.mr = &pi_mr->ibmr; ibmr 5098 drivers/infiniband/hw/mlx5/qp.c reg_pi_wr.key = pi_mr->ibmr.rkey; ibmr 5127 drivers/infiniband/hw/mlx5/qp.c pa_pi_mr.ibmr.lkey = ibmr 5128 drivers/infiniband/hw/mlx5/qp.c mr->ibmr.pd->local_dma_lkey; ibmr 5141 drivers/infiniband/hw/mlx5/qp.c pa_pi_mr.ibmr.length = mr->ibmr.length; ibmr 5144 drivers/infiniband/hw/mlx5/qp.c ctrl->imm = cpu_to_be32(mr->ibmr.rkey); ibmr 5161 drivers/infiniband/hw/mlx5/qp.c sig_attrs = mr->ibmr.sig_attrs; ibmr 197 drivers/infiniband/hw/mthca/mthca_av.c ah->key = pd->ntmr.ibmr.lkey; ibmr 834 drivers/infiniband/hw/mthca/mthca_cq.c cq_context->lkey = cpu_to_be32(cq->buf.mr.ibmr.lkey); ibmr 543 drivers/infiniband/hw/mthca/mthca_eq.c eq_context->lkey = cpu_to_be32(eq->mr.ibmr.lkey); ibmr 444 drivers/infiniband/hw/mthca/mthca_mr.c mr->ibmr.rkey = mr->ibmr.lkey = hw_index_to_key(dev, key); ibmr 481 drivers/infiniband/hw/mthca/mthca_mr.c mthca_dbg(dev, "Dumping MPT entry %08x:\n", mr->ibmr.lkey); ibmr 558 drivers/infiniband/hw/mthca/mthca_mr.c key_to_hw_index(dev, mr->ibmr.lkey) & ibmr 563 drivers/infiniband/hw/mthca/mthca_mr.c mthca_free_region(dev, mr->ibmr.lkey); ibmr 594 drivers/infiniband/hw/mthca/mthca_mr.c mr->ibmr.rkey = mr->ibmr.lkey = hw_index_to_key(dev, key); ibmr 644 drivers/infiniband/hw/mthca/mthca_mr.c mthca_dbg(dev, "Dumping MPT entry %08x:\n", mr->ibmr.lkey); ibmr 683 drivers/infiniband/hw/mthca/mthca_mr.c mthca_free_region(dev, fmr->ibmr.lkey); ibmr 732 drivers/infiniband/hw/mthca/mthca_mr.c key = tavor_key_to_hw_index(fmr->ibmr.lkey); ibmr 734 drivers/infiniband/hw/mthca/mthca_mr.c fmr->ibmr.lkey = fmr->ibmr.rkey = tavor_hw_index_to_key(key); ibmr 772 drivers/infiniband/hw/mthca/mthca_mr.c key = arbel_key_to_hw_index(fmr->ibmr.lkey); ibmr 777 drivers/infiniband/hw/mthca/mthca_mr.c fmr->ibmr.lkey = fmr->ibmr.rkey = arbel_hw_index_to_key(key); ibmr 430 drivers/infiniband/hw/mthca/mthca_provider.c srq->mr.ibmr.lkey = ucmd.lkey; ibmr 516 drivers/infiniband/hw/mthca/mthca_provider.c qp->mr.ibmr.lkey = ucmd.lkey; ibmr 643 drivers/infiniband/hw/mthca/mthca_provider.c cq->buf.mr.ibmr.lkey = ucmd.lkey; ibmr 748 drivers/infiniband/hw/mthca/mthca_provider.c lkey = cq->resize_buf->buf.mr.ibmr.lkey; ibmr 851 drivers/infiniband/hw/mthca/mthca_provider.c return &mr->ibmr; ibmr 938 drivers/infiniband/hw/mthca/mthca_provider.c return &mr->ibmr; ibmr 981 drivers/infiniband/hw/mthca/mthca_provider.c return &fmr->ibmr; ibmr 74 drivers/infiniband/hw/mthca/mthca_provider.h struct ib_mr ibmr; ibmr 80 drivers/infiniband/hw/mthca/mthca_provider.h struct ib_fmr ibmr; ibmr 304 drivers/infiniband/hw/mthca/mthca_provider.h static inline struct mthca_fmr *to_mfmr(struct ib_fmr *ibmr) ibmr 306 drivers/infiniband/hw/mthca/mthca_provider.h return container_of(ibmr, struct mthca_fmr, ibmr); ibmr 309 drivers/infiniband/hw/mthca/mthca_provider.h static inline struct mthca_mr *to_mmr(struct ib_mr *ibmr) ibmr 311 drivers/infiniband/hw/mthca/mthca_provider.h return container_of(ibmr, struct mthca_mr, ibmr); ibmr 711 drivers/infiniband/hw/mthca/mthca_qp.c qp_context->wqe_lkey = cpu_to_be32(qp->mr.ibmr.lkey); ibmr 1559 drivers/infiniband/hw/mthca/mthca_qp.c data->lkey = cpu_to_be32(to_mpd(sqp->qp.ibqp.pd)->ntmr.ibmr.lkey); ibmr 110 drivers/infiniband/hw/mthca/mthca_srq.c context->lkey = cpu_to_be32(srq->mr.ibmr.lkey); ibmr 137 drivers/infiniband/hw/mthca/mthca_srq.c context->lkey = cpu_to_be32(srq->mr.ibmr.lkey); ibmr 194 drivers/infiniband/hw/ocrdma/ocrdma.h struct ib_mr ibmr; ibmr 483 drivers/infiniband/hw/ocrdma/ocrdma.h static inline struct ocrdma_mr *get_ocrdma_mr(struct ib_mr *ibmr) ibmr 485 drivers/infiniband/hw/ocrdma/ocrdma.h return container_of(ibmr, struct ocrdma_mr, ibmr); ibmr 717 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c mr->ibmr.lkey = mr->hwmr.lkey; ibmr 719 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c mr->ibmr.rkey = mr->hwmr.lkey; ibmr 746 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c return &mr->ibmr; ibmr 904 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c mr->ibmr.lkey = mr->hwmr.lkey; ibmr 906 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c mr->ibmr.rkey = mr->hwmr.lkey; ibmr 908 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c return &mr->ibmr; ibmr 2062 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c hdr->total_len = mr->ibmr.length; ibmr 2064 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c fbo = mr->ibmr.iova - mr->pages[0]; ibmr 2066 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c fast_reg->va_hi = upper_32_bits(mr->ibmr.iova); ibmr 2067 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c fast_reg->va_lo = (u32) (mr->ibmr.iova & 0xffffffff); ibmr 2071 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c fast_reg->size_sge = get_encoded_page_size(mr->ibmr.page_size); ibmr 2950 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c mr->ibmr.rkey = mr->hwmr.lkey; ibmr 2951 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c mr->ibmr.lkey = mr->hwmr.lkey; ibmr 2954 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c return &mr->ibmr; ibmr 2964 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c static int ocrdma_set_page(struct ib_mr *ibmr, u64 addr) ibmr 2966 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c struct ocrdma_mr *mr = get_ocrdma_mr(ibmr); ibmr 2976 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c int ocrdma_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, int sg_nents, ibmr 2979 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c struct ocrdma_mr *mr = get_ocrdma_mr(ibmr); ibmr 2983 drivers/infiniband/hw/ocrdma/ocrdma_verbs.c return ib_sg_to_pages(ibmr, sg, sg_nents, sg_offset, ocrdma_set_page); ibmr 107 drivers/infiniband/hw/ocrdma/ocrdma_verbs.h int ocrdma_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, int sg_nents, ibmr 481 drivers/infiniband/hw/qedr/qedr.h struct ib_mr ibmr; ibmr 583 drivers/infiniband/hw/qedr/qedr.h static inline struct qedr_mr *get_qedr_mr(struct ib_mr *ibmr) ibmr 585 drivers/infiniband/hw/qedr/qedr.h return container_of(ibmr, struct qedr_mr, ibmr); ibmr 2670 drivers/infiniband/hw/qedr/verbs.c mr->ibmr.lkey = mr->hw_mr.itid << 8 | mr->hw_mr.key; ibmr 2673 drivers/infiniband/hw/qedr/verbs.c mr->ibmr.rkey = mr->hw_mr.itid << 8 | mr->hw_mr.key; ibmr 2676 drivers/infiniband/hw/qedr/verbs.c mr->ibmr.lkey); ibmr 2677 drivers/infiniband/hw/qedr/verbs.c return &mr->ibmr; ibmr 2766 drivers/infiniband/hw/qedr/verbs.c mr->ibmr.lkey = mr->hw_mr.itid << 8 | mr->hw_mr.key; ibmr 2767 drivers/infiniband/hw/qedr/verbs.c mr->ibmr.rkey = mr->ibmr.lkey; ibmr 2769 drivers/infiniband/hw/qedr/verbs.c DP_DEBUG(dev, QEDR_MSG_MR, "alloc frmr: %x\n", mr->ibmr.lkey); ibmr 2792 drivers/infiniband/hw/qedr/verbs.c return &mr->ibmr; ibmr 2795 drivers/infiniband/hw/qedr/verbs.c static int qedr_set_page(struct ib_mr *ibmr, u64 addr) ibmr 2797 drivers/infiniband/hw/qedr/verbs.c struct qedr_mr *mr = get_qedr_mr(ibmr); ibmr 2842 drivers/infiniband/hw/qedr/verbs.c int qedr_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, ibmr 2845 drivers/infiniband/hw/qedr/verbs.c struct qedr_mr *mr = get_qedr_mr(ibmr); ibmr 2850 drivers/infiniband/hw/qedr/verbs.c return ib_sg_to_pages(ibmr, sg, sg_nents, NULL, qedr_set_page); ibmr 2888 drivers/infiniband/hw/qedr/verbs.c mr->ibmr.lkey = mr->hw_mr.itid << 8 | mr->hw_mr.key; ibmr 2891 drivers/infiniband/hw/qedr/verbs.c mr->ibmr.rkey = mr->hw_mr.itid << 8 | mr->hw_mr.key; ibmr 2893 drivers/infiniband/hw/qedr/verbs.c DP_DEBUG(dev, QEDR_MSG_MR, "get dma mr: lkey = %x\n", mr->ibmr.lkey); ibmr 2894 drivers/infiniband/hw/qedr/verbs.c return &mr->ibmr; ibmr 3083 drivers/infiniband/hw/qedr/verbs.c fwqe1->addr.hi = upper_32_bits(mr->ibmr.iova); ibmr 3084 drivers/infiniband/hw/qedr/verbs.c fwqe1->addr.lo = lower_32_bits(mr->ibmr.iova); ibmr 3101 drivers/infiniband/hw/qedr/verbs.c ilog2(mr->ibmr.page_size) - 12); ibmr 3104 drivers/infiniband/hw/qedr/verbs.c fwqe2->length_lo = mr->ibmr.length; ibmr 84 drivers/infiniband/hw/qedr/verbs.h int qedr_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, ibmr 69 drivers/infiniband/hw/usnic/usnic_ib.h struct ib_mr ibmr; ibmr 125 drivers/infiniband/hw/usnic/usnic_ib.h struct usnic_ib_mr *to_umr(struct ib_mr *ibmr) ibmr 127 drivers/infiniband/hw/usnic/usnic_ib.h return container_of(ibmr, struct usnic_ib_mr, ibmr); ibmr 626 drivers/infiniband/hw/usnic/usnic_ib_verbs.c mr->ibmr.lkey = mr->ibmr.rkey = 0; ibmr 627 drivers/infiniband/hw/usnic/usnic_ib_verbs.c return &mr->ibmr; ibmr 634 drivers/infiniband/hw/usnic/usnic_ib_verbs.c int usnic_ib_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata) ibmr 636 drivers/infiniband/hw/usnic/usnic_ib_verbs.c struct usnic_ib_mr *mr = to_umr(ibmr); ibmr 67 drivers/infiniband/hw/usnic/usnic_ib_verbs.h int usnic_ib_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata); ibmr 141 drivers/infiniband/hw/vmw_pvrdma/pvrdma.h struct ib_mr ibmr; ibmr 284 drivers/infiniband/hw/vmw_pvrdma/pvrdma.h static inline struct pvrdma_user_mr *to_vmr(struct ib_mr *ibmr) ibmr 286 drivers/infiniband/hw/vmw_pvrdma/pvrdma.h return container_of(ibmr, struct pvrdma_user_mr, ibmr); ibmr 94 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c mr->ibmr.lkey = resp->lkey; ibmr 95 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c mr->ibmr.rkey = resp->rkey; ibmr 97 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c return &mr->ibmr; ibmr 182 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c mr->ibmr.lkey = resp->lkey; ibmr 183 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c mr->ibmr.rkey = resp->rkey; ibmr 185 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c return &mr->ibmr; ibmr 254 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c mr->ibmr.lkey = resp->lkey; ibmr 255 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c mr->ibmr.rkey = resp->rkey; ibmr 259 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c return &mr->ibmr; ibmr 276 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c int pvrdma_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata) ibmr 278 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c struct pvrdma_user_mr *mr = to_vmr(ibmr); ibmr 279 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c struct pvrdma_dev *dev = to_vdev(ibmr->device); ibmr 301 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c static int pvrdma_set_page(struct ib_mr *ibmr, u64 addr) ibmr 303 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c struct pvrdma_user_mr *mr = to_vmr(ibmr); ibmr 312 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c int pvrdma_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, int sg_nents, ibmr 315 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c struct pvrdma_user_mr *mr = to_vmr(ibmr); ibmr 316 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c struct pvrdma_dev *dev = to_vdev(ibmr->device); ibmr 321 drivers/infiniband/hw/vmw_pvrdma/pvrdma_mr.c ret = ib_sg_to_pages(ibmr, sg, sg_nents, sg_offset, pvrdma_set_page); ibmr 598 drivers/infiniband/hw/vmw_pvrdma/pvrdma_qp.c wqe_hdr->wr.fast_reg.iova_start = mr->ibmr.iova; ibmr 602 drivers/infiniband/hw/vmw_pvrdma/pvrdma_qp.c wqe_hdr->wr.fast_reg.length = mr->ibmr.length; ibmr 410 drivers/infiniband/hw/vmw_pvrdma/pvrdma_verbs.h int pvrdma_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, ibmr 302 drivers/infiniband/sw/rdmavt/mr.c mr->ibmr.lkey = mr->mr.lkey; ibmr 303 drivers/infiniband/sw/rdmavt/mr.c mr->ibmr.rkey = mr->mr.lkey; ibmr 359 drivers/infiniband/sw/rdmavt/mr.c ret = &mr->ibmr; ibmr 431 drivers/infiniband/sw/rdmavt/mr.c return &mr->ibmr; ibmr 553 drivers/infiniband/sw/rdmavt/mr.c int rvt_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata) ibmr 555 drivers/infiniband/sw/rdmavt/mr.c struct rvt_mr *mr = to_imr(ibmr); ibmr 591 drivers/infiniband/sw/rdmavt/mr.c return &mr->ibmr; ibmr 601 drivers/infiniband/sw/rdmavt/mr.c static int rvt_set_page(struct ib_mr *ibmr, u64 addr) ibmr 603 drivers/infiniband/sw/rdmavt/mr.c struct rvt_mr *mr = to_imr(ibmr); ibmr 632 drivers/infiniband/sw/rdmavt/mr.c int rvt_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, ibmr 635 drivers/infiniband/sw/rdmavt/mr.c struct rvt_mr *mr = to_imr(ibmr); ibmr 640 drivers/infiniband/sw/rdmavt/mr.c ret = ib_sg_to_pages(ibmr, sg, sg_nents, sg_offset, rvt_set_page); ibmr 641 drivers/infiniband/sw/rdmavt/mr.c mr->mr.user_base = ibmr->iova; ibmr 642 drivers/infiniband/sw/rdmavt/mr.c mr->mr.iova = ibmr->iova; ibmr 643 drivers/infiniband/sw/rdmavt/mr.c mr->mr.offset = ibmr->iova - (u64)mr->mr.map[0]->segs[0].vaddr; ibmr 644 drivers/infiniband/sw/rdmavt/mr.c mr->mr.length = (size_t)ibmr->length; ibmr 645 drivers/infiniband/sw/rdmavt/mr.c trace_rvt_map_mr_sg(ibmr, sg_nents, sg_offset); ibmr 658 drivers/infiniband/sw/rdmavt/mr.c int rvt_fast_reg_mr(struct rvt_qp *qp, struct ib_mr *ibmr, u32 key, ibmr 661 drivers/infiniband/sw/rdmavt/mr.c struct rvt_mr *mr = to_imr(ibmr); ibmr 673 drivers/infiniband/sw/rdmavt/mr.c ibmr->lkey = key; ibmr 674 drivers/infiniband/sw/rdmavt/mr.c ibmr->rkey = key; ibmr 677 drivers/infiniband/sw/rdmavt/mr.c mr->mr.iova = ibmr->iova; ibmr 58 drivers/infiniband/sw/rdmavt/mr.h struct ib_mr ibmr; ibmr 68 drivers/infiniband/sw/rdmavt/mr.h static inline struct rvt_mr *to_imr(struct ib_mr *ibmr) ibmr 70 drivers/infiniband/sw/rdmavt/mr.h return container_of(ibmr, struct rvt_mr, ibmr); ibmr 81 drivers/infiniband/sw/rdmavt/mr.h int rvt_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata); ibmr 84 drivers/infiniband/sw/rdmavt/mr.h int rvt_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, ibmr 186 drivers/infiniband/sw/rdmavt/trace_mr.h TP_PROTO(struct ib_mr *ibmr, int sg_nents, unsigned int *sg_offset), ibmr 187 drivers/infiniband/sw/rdmavt/trace_mr.h TP_ARGS(ibmr, sg_nents, sg_offset), ibmr 189 drivers/infiniband/sw/rdmavt/trace_mr.h RDI_DEV_ENTRY(ib_to_rvt(to_imr(ibmr)->mr.pd->device)) ibmr 198 drivers/infiniband/sw/rdmavt/trace_mr.h RDI_DEV_ASSIGN(ib_to_rvt(to_imr(ibmr)->mr.pd->device)) ibmr 199 drivers/infiniband/sw/rdmavt/trace_mr.h __entry->ibmr_iova = ibmr->iova; ibmr 200 drivers/infiniband/sw/rdmavt/trace_mr.h __entry->iova = to_imr(ibmr)->mr.iova; ibmr 201 drivers/infiniband/sw/rdmavt/trace_mr.h __entry->user_base = to_imr(ibmr)->mr.user_base; ibmr 202 drivers/infiniband/sw/rdmavt/trace_mr.h __entry->ibmr_length = to_imr(ibmr)->mr.length; ibmr 83 drivers/infiniband/sw/rxe/rxe_mr.c mem->ibmr.lkey = lkey; ibmr 84 drivers/infiniband/sw/rxe/rxe_mr.c mem->ibmr.rkey = rkey; ibmr 246 drivers/infiniband/sw/rxe/rxe_mr.c mem->ibmr.rkey = mem->ibmr.lkey; ibmr 915 drivers/infiniband/sw/rxe/rxe_verbs.c return &mr->ibmr; ibmr 951 drivers/infiniband/sw/rxe/rxe_verbs.c return &mr->ibmr; ibmr 961 drivers/infiniband/sw/rxe/rxe_verbs.c static int rxe_dereg_mr(struct ib_mr *ibmr, struct ib_udata *udata) ibmr 963 drivers/infiniband/sw/rxe/rxe_verbs.c struct rxe_mem *mr = to_rmr(ibmr); ibmr 997 drivers/infiniband/sw/rxe/rxe_verbs.c return &mr->ibmr; ibmr 1007 drivers/infiniband/sw/rxe/rxe_verbs.c static int rxe_set_page(struct ib_mr *ibmr, u64 addr) ibmr 1009 drivers/infiniband/sw/rxe/rxe_verbs.c struct rxe_mem *mr = to_rmr(ibmr); ibmr 1020 drivers/infiniband/sw/rxe/rxe_verbs.c buf->size = ibmr->page_size; ibmr 1026 drivers/infiniband/sw/rxe/rxe_verbs.c static int rxe_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg, ibmr 1029 drivers/infiniband/sw/rxe/rxe_verbs.c struct rxe_mem *mr = to_rmr(ibmr); ibmr 1034 drivers/infiniband/sw/rxe/rxe_verbs.c n = ib_sg_to_pages(ibmr, sg, sg_nents, sg_offset, rxe_set_page); ibmr 1036 drivers/infiniband/sw/rxe/rxe_verbs.c mr->va = ibmr->iova; ibmr 1037 drivers/infiniband/sw/rxe/rxe_verbs.c mr->iova = ibmr->iova; ibmr 1038 drivers/infiniband/sw/rxe/rxe_verbs.c mr->length = ibmr->length; ibmr 1039 drivers/infiniband/sw/rxe/rxe_verbs.c mr->page_shift = ilog2(ibmr->page_size); ibmr 1040 drivers/infiniband/sw/rxe/rxe_verbs.c mr->page_mask = ibmr->page_size - 1; ibmr 321 drivers/infiniband/sw/rxe/rxe_verbs.h struct ib_mr ibmr; ibmr 460 drivers/infiniband/sw/rxe/rxe_verbs.h return mr ? container_of(mr, struct rxe_mem, ibmr) : NULL; ibmr 563 include/rdma/rdma_vt.h int rvt_fast_reg_mr(struct rvt_qp *qp, struct ib_mr *ibmr, u32 key, ibmr 38 net/rds/ib_fmr.c struct rds_ib_mr *ibmr = NULL; ibmr 58 net/rds/ib_fmr.c ibmr = rds_ib_try_reuse_ibmr(pool); ibmr 59 net/rds/ib_fmr.c if (ibmr) ibmr 60 net/rds/ib_fmr.c return ibmr; ibmr 62 net/rds/ib_fmr.c ibmr = kzalloc_node(sizeof(*ibmr), GFP_KERNEL, ibmr 64 net/rds/ib_fmr.c if (!ibmr) { ibmr 69 net/rds/ib_fmr.c fmr = &ibmr->u.fmr; ibmr 83 net/rds/ib_fmr.c ibmr->pool = pool; ibmr 89 net/rds/ib_fmr.c return ibmr; ibmr 92 net/rds/ib_fmr.c kfree(ibmr); ibmr 99 net/rds/ib_fmr.c struct rds_ib_mr *ibmr, struct scatterlist *sg, ibmr 103 net/rds/ib_fmr.c struct rds_ib_fmr *fmr = &ibmr->u.fmr; ibmr 148 net/rds/ib_fmr.c if (page_cnt > ibmr->pool->fmr_attr.max_pages) { ibmr 179 net/rds/ib_fmr.c rds_ib_teardown_mr(ibmr); ibmr 181 net/rds/ib_fmr.c ibmr->sg = scat; ibmr 182 net/rds/ib_fmr.c ibmr->sg_len = nents; ibmr 183 net/rds/ib_fmr.c ibmr->sg_dma_len = sg_dma_len; ibmr 184 net/rds/ib_fmr.c ibmr->remap_count++; ibmr 186 net/rds/ib_fmr.c if (ibmr->pool->pool_type == RDS_IB_MR_8K_POOL) ibmr 203 net/rds/ib_fmr.c struct rds_ib_mr *ibmr = NULL; ibmr 207 net/rds/ib_fmr.c ibmr = rds_ib_alloc_fmr(rds_ibdev, nents); ibmr 208 net/rds/ib_fmr.c if (IS_ERR(ibmr)) ibmr 209 net/rds/ib_fmr.c return ibmr; ibmr 211 net/rds/ib_fmr.c ibmr->device = rds_ibdev; ibmr 212 net/rds/ib_fmr.c fmr = &ibmr->u.fmr; ibmr 213 net/rds/ib_fmr.c ret = rds_ib_map_fmr(rds_ibdev, ibmr, sg, nents); ibmr 217 net/rds/ib_fmr.c rds_ib_free_mr(ibmr, 0); ibmr 219 net/rds/ib_fmr.c return ibmr; ibmr 225 net/rds/ib_fmr.c struct rds_ib_mr *ibmr, *next; ibmr 232 net/rds/ib_fmr.c list_for_each_entry(ibmr, list, unmap_list) { ibmr 233 net/rds/ib_fmr.c fmr = &ibmr->u.fmr; ibmr 242 net/rds/ib_fmr.c list_for_each_entry_safe(ibmr, next, list, unmap_list) { ibmr 243 net/rds/ib_fmr.c fmr = &ibmr->u.fmr; ibmr 244 net/rds/ib_fmr.c *unpinned += ibmr->sg_len; ibmr 245 net/rds/ib_fmr.c __rds_ib_teardown_mr(ibmr); ibmr 247 net/rds/ib_fmr.c ibmr->remap_count >= ibmr->pool->fmr_attr.max_maps) { ibmr 248 net/rds/ib_fmr.c if (ibmr->pool->pool_type == RDS_IB_MR_8K_POOL) ibmr 252 net/rds/ib_fmr.c list_del(&ibmr->unmap_list); ibmr 254 net/rds/ib_fmr.c kfree(ibmr); ibmr 261 net/rds/ib_fmr.c void rds_ib_free_fmr_list(struct rds_ib_mr *ibmr) ibmr 263 net/rds/ib_fmr.c struct rds_ib_mr_pool *pool = ibmr->pool; ibmr 265 net/rds/ib_fmr.c if (ibmr->remap_count >= pool->fmr_attr.max_maps) ibmr 266 net/rds/ib_fmr.c llist_add(&ibmr->llnode, &pool->drop_list); ibmr 268 net/rds/ib_fmr.c llist_add(&ibmr->llnode, &pool->free_list); ibmr 36 net/rds/ib_frmr.c rds_transition_frwr_state(struct rds_ib_mr *ibmr, ibmr 40 net/rds/ib_frmr.c if (cmpxchg(&ibmr->u.frmr.fr_state, ibmr 47 net/rds/ib_frmr.c atomic_dec(&ibmr->ic->i_fastreg_inuse_count); ibmr 57 net/rds/ib_frmr.c struct rds_ib_mr *ibmr = NULL; ibmr 66 net/rds/ib_frmr.c ibmr = rds_ib_try_reuse_ibmr(pool); ibmr 67 net/rds/ib_frmr.c if (ibmr) ibmr 68 net/rds/ib_frmr.c return ibmr; ibmr 70 net/rds/ib_frmr.c ibmr = kzalloc_node(sizeof(*ibmr), GFP_KERNEL, ibmr 72 net/rds/ib_frmr.c if (!ibmr) { ibmr 77 net/rds/ib_frmr.c frmr = &ibmr->u.frmr; ibmr 86 net/rds/ib_frmr.c ibmr->pool = pool; ibmr 98 net/rds/ib_frmr.c return ibmr; ibmr 101 net/rds/ib_frmr.c kfree(ibmr); ibmr 106 net/rds/ib_frmr.c static void rds_ib_free_frmr(struct rds_ib_mr *ibmr, bool drop) ibmr 108 net/rds/ib_frmr.c struct rds_ib_mr_pool *pool = ibmr->pool; ibmr 111 net/rds/ib_frmr.c llist_add(&ibmr->llnode, &pool->drop_list); ibmr 113 net/rds/ib_frmr.c llist_add(&ibmr->llnode, &pool->free_list); ibmr 114 net/rds/ib_frmr.c atomic_add(ibmr->sg_len, &pool->free_pinned); ibmr 123 net/rds/ib_frmr.c static int rds_ib_post_reg_frmr(struct rds_ib_mr *ibmr) ibmr 125 net/rds/ib_frmr.c struct rds_ib_frmr *frmr = &ibmr->u.frmr; ibmr 129 net/rds/ib_frmr.c while (atomic_dec_return(&ibmr->ic->i_fastreg_wrs) <= 0) { ibmr 130 net/rds/ib_frmr.c atomic_inc(&ibmr->ic->i_fastreg_wrs); ibmr 134 net/rds/ib_frmr.c ret = ib_map_mr_sg_zbva(frmr->mr, ibmr->sg, ibmr->sg_len, ibmr 136 net/rds/ib_frmr.c if (unlikely(ret != ibmr->sg_len)) ibmr 143 net/rds/ib_frmr.c atomic_inc(&ibmr->ic->i_fastreg_inuse_count); ibmr 150 net/rds/ib_frmr.c ib_update_fast_reg_key(frmr->mr, ibmr->remap_count++); ibmr 154 net/rds/ib_frmr.c reg_wr.wr.wr_id = (unsigned long)(void *)ibmr; ibmr 164 net/rds/ib_frmr.c ret = ib_post_send(ibmr->ic->i_cm_id->qp, ®_wr.wr, NULL); ibmr 167 net/rds/ib_frmr.c rds_transition_frwr_state(ibmr, FRMR_IS_INUSE, FRMR_IS_STALE); ibmr 169 net/rds/ib_frmr.c atomic_inc(&ibmr->ic->i_fastreg_wrs); ibmr 189 net/rds/ib_frmr.c struct rds_ib_mr *ibmr, ibmr 193 net/rds/ib_frmr.c struct rds_ib_frmr *frmr = &ibmr->u.frmr; ibmr 201 net/rds/ib_frmr.c rds_ib_teardown_mr(ibmr); ibmr 203 net/rds/ib_frmr.c ibmr->sg = sg; ibmr 204 net/rds/ib_frmr.c ibmr->sg_len = sg_len; ibmr 205 net/rds/ib_frmr.c ibmr->sg_dma_len = 0; ibmr 207 net/rds/ib_frmr.c WARN_ON(ibmr->sg_dma_len); ibmr 208 net/rds/ib_frmr.c ibmr->sg_dma_len = ib_dma_map_sg(dev, ibmr->sg, ibmr->sg_len, ibmr 210 net/rds/ib_frmr.c if (unlikely(!ibmr->sg_dma_len)) { ibmr 220 net/rds/ib_frmr.c for (i = 0; i < ibmr->sg_dma_len; ++i) { ibmr 221 net/rds/ib_frmr.c unsigned int dma_len = sg_dma_len(&ibmr->sg[i]); ibmr 222 net/rds/ib_frmr.c u64 dma_addr = sg_dma_address(&ibmr->sg[i]); ibmr 233 net/rds/ib_frmr.c if (i < ibmr->sg_dma_len - 1) ibmr 243 net/rds/ib_frmr.c if (frmr->dma_npages > ibmr->pool->fmr_attr.max_pages) { ibmr 248 net/rds/ib_frmr.c ret = rds_ib_post_reg_frmr(ibmr); ibmr 252 net/rds/ib_frmr.c if (ibmr->pool->pool_type == RDS_IB_MR_8K_POOL) ibmr 260 net/rds/ib_frmr.c ib_dma_unmap_sg(rds_ibdev->dev, ibmr->sg, ibmr->sg_len, ibmr 262 net/rds/ib_frmr.c ibmr->sg_dma_len = 0; ibmr 266 net/rds/ib_frmr.c static int rds_ib_post_inv(struct rds_ib_mr *ibmr) ibmr 269 net/rds/ib_frmr.c struct rds_ib_frmr *frmr = &ibmr->u.frmr; ibmr 270 net/rds/ib_frmr.c struct rdma_cm_id *i_cm_id = ibmr->ic->i_cm_id; ibmr 279 net/rds/ib_frmr.c while (atomic_dec_return(&ibmr->ic->i_fastreg_wrs) <= 0) { ibmr 280 net/rds/ib_frmr.c atomic_inc(&ibmr->ic->i_fastreg_wrs); ibmr 288 net/rds/ib_frmr.c s_wr->wr_id = (unsigned long)(void *)ibmr; ibmr 295 net/rds/ib_frmr.c rds_transition_frwr_state(ibmr, FRMR_IS_INUSE, FRMR_IS_STALE); ibmr 301 net/rds/ib_frmr.c atomic_inc(&ibmr->ic->i_fastreg_wrs); ibmr 324 net/rds/ib_frmr.c struct rds_ib_mr *ibmr = (void *)(unsigned long)wc->wr_id; ibmr 325 net/rds/ib_frmr.c struct rds_ib_frmr *frmr = &ibmr->u.frmr; ibmr 328 net/rds/ib_frmr.c rds_transition_frwr_state(ibmr, FRMR_IS_INUSE, FRMR_IS_STALE); ibmr 340 net/rds/ib_frmr.c rds_transition_frwr_state(ibmr, FRMR_IS_INUSE, FRMR_IS_FREE); ibmr 360 net/rds/ib_frmr.c struct rds_ib_mr *ibmr, *next; ibmr 366 net/rds/ib_frmr.c list_for_each_entry(ibmr, list, unmap_list) { ibmr 367 net/rds/ib_frmr.c if (ibmr->sg_dma_len) { ibmr 368 net/rds/ib_frmr.c ret2 = rds_ib_post_inv(ibmr); ibmr 378 net/rds/ib_frmr.c list_for_each_entry_safe(ibmr, next, list, unmap_list) { ibmr 379 net/rds/ib_frmr.c *unpinned += ibmr->sg_len; ibmr 380 net/rds/ib_frmr.c frmr = &ibmr->u.frmr; ibmr 381 net/rds/ib_frmr.c __rds_ib_teardown_mr(ibmr); ibmr 387 net/rds/ib_frmr.c if (ibmr->pool->pool_type == RDS_IB_MR_8K_POOL) ibmr 391 net/rds/ib_frmr.c list_del(&ibmr->unmap_list); ibmr 394 net/rds/ib_frmr.c kfree(ibmr); ibmr 406 net/rds/ib_frmr.c struct rds_ib_mr *ibmr = NULL; ibmr 416 net/rds/ib_frmr.c if (ibmr) ibmr 417 net/rds/ib_frmr.c rds_ib_free_frmr(ibmr, true); ibmr 418 net/rds/ib_frmr.c ibmr = rds_ib_alloc_frmr(rds_ibdev, nents); ibmr 419 net/rds/ib_frmr.c if (IS_ERR(ibmr)) ibmr 420 net/rds/ib_frmr.c return ibmr; ibmr 421 net/rds/ib_frmr.c frmr = &ibmr->u.frmr; ibmr 424 net/rds/ib_frmr.c ibmr->ic = ic; ibmr 425 net/rds/ib_frmr.c ibmr->device = rds_ibdev; ibmr 426 net/rds/ib_frmr.c ret = rds_ib_map_frmr(rds_ibdev, ibmr->pool, ibmr, sg, nents); ibmr 430 net/rds/ib_frmr.c rds_ib_free_frmr(ibmr, false); ibmr 431 net/rds/ib_frmr.c ibmr = ERR_PTR(ret); ibmr 434 net/rds/ib_frmr.c return ibmr; ibmr 437 net/rds/ib_frmr.c void rds_ib_free_frmr_list(struct rds_ib_mr *ibmr) ibmr 439 net/rds/ib_frmr.c struct rds_ib_mr_pool *pool = ibmr->pool; ibmr 440 net/rds/ib_frmr.c struct rds_ib_frmr *frmr = &ibmr->u.frmr; ibmr 443 net/rds/ib_frmr.c llist_add(&ibmr->llnode, &pool->drop_list); ibmr 445 net/rds/ib_frmr.c llist_add(&ibmr->llnode, &pool->free_list); ibmr 193 net/rds/ib_rdma.c struct rds_ib_mr *ibmr = NULL; ibmr 201 net/rds/ib_rdma.c ibmr = llist_entry(ret, struct rds_ib_mr, llnode); ibmr 208 net/rds/ib_rdma.c return ibmr; ibmr 213 net/rds/ib_rdma.c struct rds_ib_mr *ibmr = trans_private; ibmr 214 net/rds/ib_rdma.c struct rds_ib_device *rds_ibdev = ibmr->device; ibmr 218 net/rds/ib_rdma.c ib_dma_sync_sg_for_cpu(rds_ibdev->dev, ibmr->sg, ibmr 219 net/rds/ib_rdma.c ibmr->sg_dma_len, DMA_BIDIRECTIONAL); ibmr 222 net/rds/ib_rdma.c ib_dma_sync_sg_for_device(rds_ibdev->dev, ibmr->sg, ibmr 223 net/rds/ib_rdma.c ibmr->sg_dma_len, DMA_BIDIRECTIONAL); ibmr 228 net/rds/ib_rdma.c void __rds_ib_teardown_mr(struct rds_ib_mr *ibmr) ibmr 230 net/rds/ib_rdma.c struct rds_ib_device *rds_ibdev = ibmr->device; ibmr 232 net/rds/ib_rdma.c if (ibmr->sg_dma_len) { ibmr 234 net/rds/ib_rdma.c ibmr->sg, ibmr->sg_len, ibmr 236 net/rds/ib_rdma.c ibmr->sg_dma_len = 0; ibmr 240 net/rds/ib_rdma.c if (ibmr->sg_len) { ibmr 243 net/rds/ib_rdma.c for (i = 0; i < ibmr->sg_len; ++i) { ibmr 244 net/rds/ib_rdma.c struct page *page = sg_page(&ibmr->sg[i]); ibmr 252 net/rds/ib_rdma.c kfree(ibmr->sg); ibmr 254 net/rds/ib_rdma.c ibmr->sg = NULL; ibmr 255 net/rds/ib_rdma.c ibmr->sg_len = 0; ibmr 259 net/rds/ib_rdma.c void rds_ib_teardown_mr(struct rds_ib_mr *ibmr) ibmr 261 net/rds/ib_rdma.c unsigned int pinned = ibmr->sg_len; ibmr 263 net/rds/ib_rdma.c __rds_ib_teardown_mr(ibmr); ibmr 265 net/rds/ib_rdma.c struct rds_ib_mr_pool *pool = ibmr->pool; ibmr 288 net/rds/ib_rdma.c struct rds_ib_mr *ibmr; ibmr 296 net/rds/ib_rdma.c ibmr = llist_entry(node, struct rds_ib_mr, llnode); ibmr 297 net/rds/ib_rdma.c list_add_tail(&ibmr->unmap_list, list); ibmr 313 net/rds/ib_rdma.c struct rds_ib_mr *ibmr; ibmr 317 net/rds/ib_rdma.c list_for_each_entry(ibmr, list, unmap_list) { ibmr 318 net/rds/ib_rdma.c cur = &ibmr->llnode; ibmr 335 net/rds/ib_rdma.c struct rds_ib_mr *ibmr; ibmr 350 net/rds/ib_rdma.c ibmr = rds_ib_reuse_mr(pool); ibmr 351 net/rds/ib_rdma.c if (ibmr) { ibmr 352 net/rds/ib_rdma.c *ibmr_ret = ibmr; ibmr 362 net/rds/ib_rdma.c ibmr = rds_ib_reuse_mr(pool); ibmr 363 net/rds/ib_rdma.c if (ibmr) { ibmr 364 net/rds/ib_rdma.c *ibmr_ret = ibmr; ibmr 374 net/rds/ib_rdma.c ibmr = rds_ib_reuse_mr(pool); ibmr 375 net/rds/ib_rdma.c if (ibmr) { ibmr 376 net/rds/ib_rdma.c *ibmr_ret = ibmr; ibmr 435 net/rds/ib_rdma.c struct rds_ib_mr *ibmr = NULL; ibmr 439 net/rds/ib_rdma.c ibmr = rds_ib_reuse_mr(pool); ibmr 440 net/rds/ib_rdma.c if (ibmr) ibmr 441 net/rds/ib_rdma.c return ibmr; ibmr 462 net/rds/ib_rdma.c rds_ib_flush_mr_pool(pool, 0, &ibmr); ibmr 463 net/rds/ib_rdma.c if (ibmr) ibmr 464 net/rds/ib_rdma.c return ibmr; ibmr 479 net/rds/ib_rdma.c struct rds_ib_mr *ibmr = trans_private; ibmr 480 net/rds/ib_rdma.c struct rds_ib_mr_pool *pool = ibmr->pool; ibmr 481 net/rds/ib_rdma.c struct rds_ib_device *rds_ibdev = ibmr->device; ibmr 483 net/rds/ib_rdma.c rdsdebug("RDS/IB: free_mr nents %u\n", ibmr->sg_len); ibmr 487 net/rds/ib_rdma.c rds_ib_free_frmr_list(ibmr); ibmr 489 net/rds/ib_rdma.c rds_ib_free_fmr_list(ibmr); ibmr 491 net/rds/ib_rdma.c atomic_add(ibmr->sg_len, &pool->free_pinned); ibmr 534 net/rds/ib_rdma.c struct rds_ib_mr *ibmr = NULL; ibmr 553 net/rds/ib_rdma.c ibmr = rds_ib_reg_frmr(rds_ibdev, ic, sg, nents, key_ret); ibmr 555 net/rds/ib_rdma.c ibmr = rds_ib_reg_fmr(rds_ibdev, sg, nents, key_ret); ibmr 556 net/rds/ib_rdma.c if (IS_ERR(ibmr)) { ibmr 557 net/rds/ib_rdma.c ret = PTR_ERR(ibmr); ibmr 560 net/rds/ib_rdma.c return ibmr; ibmr 330 net/sunrpc/xprtrdma/frwr_ops.c struct ib_mr *ibmr; ibmr 361 net/sunrpc/xprtrdma/frwr_ops.c ibmr = mr->frwr.fr_mr; ibmr 362 net/sunrpc/xprtrdma/frwr_ops.c n = ib_map_mr_sg(ibmr, mr->mr_sg, dma_nents, NULL, PAGE_SIZE); ibmr 366 net/sunrpc/xprtrdma/frwr_ops.c ibmr->iova &= 0x00000000ffffffff; ibmr 367 net/sunrpc/xprtrdma/frwr_ops.c ibmr->iova |= ((u64)be32_to_cpu(xid)) << 32; ibmr 368 net/sunrpc/xprtrdma/frwr_ops.c key = (u8)(ibmr->rkey & 0x000000FF); ibmr 369 net/sunrpc/xprtrdma/frwr_ops.c ib_update_fast_reg_key(ibmr, ++key); ibmr 372 net/sunrpc/xprtrdma/frwr_ops.c reg_wr->mr = ibmr; ibmr 373 net/sunrpc/xprtrdma/frwr_ops.c reg_wr->key = ibmr->rkey; ibmr 378 net/sunrpc/xprtrdma/frwr_ops.c mr->mr_handle = ibmr->rkey; ibmr 379 net/sunrpc/xprtrdma/frwr_ops.c mr->mr_length = ibmr->length; ibmr 380 net/sunrpc/xprtrdma/frwr_ops.c mr->mr_offset = ibmr->iova;