Lines Matching refs:c2mr
438 struct c2_mr *c2mr; in c2_reg_user_mr() local
442 c2mr = kmalloc(sizeof(*c2mr), GFP_KERNEL); in c2_reg_user_mr()
443 if (!c2mr) in c2_reg_user_mr()
445 c2mr->pd = c2pd; in c2_reg_user_mr()
447 c2mr->umem = ib_umem_get(pd->uobject->context, start, length, acc, 0); in c2_reg_user_mr()
448 if (IS_ERR(c2mr->umem)) { in c2_reg_user_mr()
449 err = PTR_ERR(c2mr->umem); in c2_reg_user_mr()
450 kfree(c2mr); in c2_reg_user_mr()
454 shift = ffs(c2mr->umem->page_size) - 1; in c2_reg_user_mr()
455 n = c2mr->umem->nmap; in c2_reg_user_mr()
464 for_each_sg(c2mr->umem->sg_head.sgl, sg, c2mr->umem->nmap, entry) { in c2_reg_user_mr()
469 (c2mr->umem->page_size * k); in c2_reg_user_mr()
476 c2mr->umem->page_size, in c2_reg_user_mr()
479 ib_umem_offset(c2mr->umem), in c2_reg_user_mr()
482 c2mr); in c2_reg_user_mr()
486 return &c2mr->ibmr; in c2_reg_user_mr()
489 ib_umem_release(c2mr->umem); in c2_reg_user_mr()
490 kfree(c2mr); in c2_reg_user_mr()