Lines Matching defs:rdi
16 * @rdi: rvt dev struct
22 int rvt_driver_mr_init(struct rvt_dev_info *rdi)
24 unsigned int lkey_table_size = rdi->dparms.lkey_table_size;
36 spin_lock_init(&rdi->lkey_table.lock);
40 rvt_pr_warn(rdi, "lkey bits %u too large, reduced to %u\n",
42 rdi->dparms.lkey_table_size = RVT_MAX_LKEY_TABLE_BITS;
43 lkey_table_size = rdi->dparms.lkey_table_size;
45 rdi->lkey_table.max = 1 << lkey_table_size;
46 rdi->lkey_table.shift = 32 - lkey_table_size;
47 lk_tab_size = rdi->lkey_table.max * sizeof(*rdi->lkey_table.table);
48 rdi->lkey_table.table = (struct rvt_mregion __rcu **)
49 vmalloc_node(lk_tab_size, rdi->dparms.node);
50 if (!rdi->lkey_table.table)
53 RCU_INIT_POINTER(rdi->dma_mr, NULL);
54 for (i = 0; i < rdi->lkey_table.max; i++)
55 RCU_INIT_POINTER(rdi->lkey_table.table[i], NULL);
57 rdi->dparms.props.max_mr = rdi->lkey_table.max;
63 * @rdi: rvt dev structure
67 void rvt_mr_exit(struct rvt_dev_info *rdi)
69 if (rdi->dma_mr)
70 rvt_pr_err(rdi, "DMA MR not null!\n");
72 vfree(rdi->lkey_table.table);
426 struct rvt_dev_info *rdi = ib_to_rvt(mr->pd->device);
428 rvt_qp_iter(rdi, (u64)mr, rvt_dereg_clean_qp_cb);
445 struct rvt_dev_info *rdi = ib_to_rvt(mr->pd->device);
456 rvt_pr_err(rdi,
842 struct rvt_dev_info *rdi = ib_to_rvt(pd->ibpd.device);
846 mr = rcu_dereference(rdi->dma_mr);