Lines Matching refs:mr

251 		struct ib_mr *mr;  in ib_alloc_pd()  local
253 mr = ib_get_dma_mr(pd, IB_ACCESS_LOCAL_WRITE); in ib_alloc_pd()
254 if (IS_ERR(mr)) { in ib_alloc_pd()
256 return (struct ib_pd *)mr; in ib_alloc_pd()
259 pd->local_mr = mr; in ib_alloc_pd()
1204 struct ib_mr *mr; in ib_get_dma_mr() local
1211 mr = pd->device->get_dma_mr(pd, mr_access_flags); in ib_get_dma_mr()
1213 if (!IS_ERR(mr)) { in ib_get_dma_mr()
1214 mr->device = pd->device; in ib_get_dma_mr()
1215 mr->pd = pd; in ib_get_dma_mr()
1216 mr->uobject = NULL; in ib_get_dma_mr()
1218 atomic_set(&mr->usecnt, 0); in ib_get_dma_mr()
1221 return mr; in ib_get_dma_mr()
1225 int ib_query_mr(struct ib_mr *mr, struct ib_mr_attr *mr_attr) in ib_query_mr() argument
1227 return mr->device->query_mr ? in ib_query_mr()
1228 mr->device->query_mr(mr, mr_attr) : -ENOSYS; in ib_query_mr()
1232 int ib_dereg_mr(struct ib_mr *mr) in ib_dereg_mr() argument
1237 if (atomic_read(&mr->usecnt)) in ib_dereg_mr()
1240 pd = mr->pd; in ib_dereg_mr()
1241 ret = mr->device->dereg_mr(mr); in ib_dereg_mr()
1265 struct ib_mr *mr; in ib_alloc_mr() local
1270 mr = pd->device->alloc_mr(pd, mr_type, max_num_sg); in ib_alloc_mr()
1271 if (!IS_ERR(mr)) { in ib_alloc_mr()
1272 mr->device = pd->device; in ib_alloc_mr()
1273 mr->pd = pd; in ib_alloc_mr()
1274 mr->uobject = NULL; in ib_alloc_mr()
1276 atomic_set(&mr->usecnt, 0); in ib_alloc_mr()
1279 return mr; in ib_alloc_mr()
1467 int ib_check_mr_status(struct ib_mr *mr, u32 check_mask, in ib_check_mr_status() argument
1470 return mr->device->check_mr_status ? in ib_check_mr_status()
1471 mr->device->check_mr_status(mr, check_mask, mr_status) : -ENOSYS; in ib_check_mr_status()
1497 int ib_map_mr_sg(struct ib_mr *mr, in ib_map_mr_sg() argument
1502 if (unlikely(!mr->device->map_mr_sg)) in ib_map_mr_sg()
1505 mr->page_size = page_size; in ib_map_mr_sg()
1507 return mr->device->map_mr_sg(mr, sg, sg_nents); in ib_map_mr_sg()
1527 int ib_sg_to_pages(struct ib_mr *mr, in ib_sg_to_pages() argument
1535 u64 page_mask = ~((u64)mr->page_size - 1); in ib_sg_to_pages()
1538 mr->iova = sg_dma_address(&sgl[0]); in ib_sg_to_pages()
1539 mr->length = 0; in ib_sg_to_pages()
1566 ret = set_page(mr, page_addr); in ib_sg_to_pages()
1570 page_addr += mr->page_size; in ib_sg_to_pages()
1573 mr->length += dma_len; in ib_sg_to_pages()