IB/core: Drop ib_alloc_fast_reg_mr

Fully replaced by a more generic and suitable
ib_alloc_mr.

Signed-off-by: Sagi Grimberg <sagig@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
Sagi Grimberg 2015-07-30 10:32:48 +03:00 committed by Doug Ledford
parent d9fe6dd7af
commit d9f272c523
2 changed files with 3 additions and 40 deletions

View File

@ -1253,15 +1253,10 @@ struct ib_mr *ib_alloc_mr(struct ib_pd *pd,
{ {
struct ib_mr *mr; struct ib_mr *mr;
if (pd->device->alloc_mr) { if (!pd->device->alloc_mr)
mr = pd->device->alloc_mr(pd, mr_type, max_num_sg); return ERR_PTR(-ENOSYS);
} else {
if (mr_type != IB_MR_TYPE_MEM_REG ||
!pd->device->alloc_fast_reg_mr)
return ERR_PTR(-ENOSYS);
mr = pd->device->alloc_fast_reg_mr(pd, max_num_sg);
}
mr = pd->device->alloc_mr(pd, mr_type, max_num_sg);
if (!IS_ERR(mr)) { if (!IS_ERR(mr)) {
mr->device = pd->device; mr->device = pd->device;
mr->pd = pd; mr->pd = pd;
@ -1274,27 +1269,6 @@ struct ib_mr *ib_alloc_mr(struct ib_pd *pd,
} }
EXPORT_SYMBOL(ib_alloc_mr); EXPORT_SYMBOL(ib_alloc_mr);
struct ib_mr *ib_alloc_fast_reg_mr(struct ib_pd *pd, int max_page_list_len)
{
struct ib_mr *mr;
if (!pd->device->alloc_fast_reg_mr)
return ERR_PTR(-ENOSYS);
mr = pd->device->alloc_fast_reg_mr(pd, max_page_list_len);
if (!IS_ERR(mr)) {
mr->device = pd->device;
mr->pd = pd;
mr->uobject = NULL;
atomic_inc(&pd->usecnt);
atomic_set(&mr->usecnt, 0);
}
return mr;
}
EXPORT_SYMBOL(ib_alloc_fast_reg_mr);
struct ib_fast_reg_page_list *ib_alloc_fast_reg_page_list(struct ib_device *device, struct ib_fast_reg_page_list *ib_alloc_fast_reg_page_list(struct ib_device *device,
int max_page_list_len) int max_page_list_len)
{ {

View File

@ -1672,8 +1672,6 @@ struct ib_device {
struct ib_mr * (*alloc_mr)(struct ib_pd *pd, struct ib_mr * (*alloc_mr)(struct ib_pd *pd,
enum ib_mr_type mr_type, enum ib_mr_type mr_type,
u32 max_num_sg); u32 max_num_sg);
struct ib_mr * (*alloc_fast_reg_mr)(struct ib_pd *pd,
int max_page_list_len);
struct ib_fast_reg_page_list * (*alloc_fast_reg_page_list)(struct ib_device *device, struct ib_fast_reg_page_list * (*alloc_fast_reg_page_list)(struct ib_device *device,
int page_list_len); int page_list_len);
void (*free_fast_reg_page_list)(struct ib_fast_reg_page_list *page_list); void (*free_fast_reg_page_list)(struct ib_fast_reg_page_list *page_list);
@ -2820,15 +2818,6 @@ struct ib_mr *ib_alloc_mr(struct ib_pd *pd,
enum ib_mr_type mr_type, enum ib_mr_type mr_type,
u32 max_num_sg); u32 max_num_sg);
/**
* ib_alloc_fast_reg_mr - Allocates memory region usable with the
* IB_WR_FAST_REG_MR send work request.
* @pd: The protection domain associated with the region.
* @max_page_list_len: requested max physical buffer list length to be
* used with fast register work requests for this MR.
*/
struct ib_mr *ib_alloc_fast_reg_mr(struct ib_pd *pd, int max_page_list_len);
/** /**
* ib_alloc_fast_reg_page_list - Allocates a page list array * ib_alloc_fast_reg_page_list - Allocates a page list array
* @device - ib device pointer. * @device - ib device pointer.