diff options
Diffstat (limited to 'net/rds/ib.c')
-rw-r--r-- | net/rds/ib.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/net/rds/ib.c b/net/rds/ib.c index b9bcd32431e1..536ebe5d3f6b 100644 --- a/net/rds/ib.c +++ b/net/rds/ib.c | |||
@@ -43,11 +43,14 @@ | |||
43 | 43 | ||
44 | unsigned int fmr_pool_size = RDS_FMR_POOL_SIZE; | 44 | unsigned int fmr_pool_size = RDS_FMR_POOL_SIZE; |
45 | unsigned int fmr_message_size = RDS_FMR_SIZE + 1; /* +1 allows for unaligned MRs */ | 45 | unsigned int fmr_message_size = RDS_FMR_SIZE + 1; /* +1 allows for unaligned MRs */ |
46 | unsigned int rds_ib_retry_count = RDS_IB_DEFAULT_RETRY_COUNT; | ||
46 | 47 | ||
47 | module_param(fmr_pool_size, int, 0444); | 48 | module_param(fmr_pool_size, int, 0444); |
48 | MODULE_PARM_DESC(fmr_pool_size, " Max number of fmr per HCA"); | 49 | MODULE_PARM_DESC(fmr_pool_size, " Max number of fmr per HCA"); |
49 | module_param(fmr_message_size, int, 0444); | 50 | module_param(fmr_message_size, int, 0444); |
50 | MODULE_PARM_DESC(fmr_message_size, " Max size of a RDMA transfer"); | 51 | MODULE_PARM_DESC(fmr_message_size, " Max size of a RDMA transfer"); |
52 | module_param(rds_ib_retry_count, int, 0444); | ||
53 | MODULE_PARM_DESC(rds_ib_retry_count, " Number of hw retries before reporting an error"); | ||
51 | 54 | ||
52 | struct list_head rds_ib_devices; | 55 | struct list_head rds_ib_devices; |
53 | 56 | ||
@@ -82,9 +85,6 @@ void rds_ib_add_one(struct ib_device *device) | |||
82 | rds_ibdev->max_wrs = dev_attr->max_qp_wr; | 85 | rds_ibdev->max_wrs = dev_attr->max_qp_wr; |
83 | rds_ibdev->max_sge = min(dev_attr->max_sge, RDS_IB_MAX_SGE); | 86 | rds_ibdev->max_sge = min(dev_attr->max_sge, RDS_IB_MAX_SGE); |
84 | 87 | ||
85 | rds_ibdev->fmr_page_shift = max(9, ffs(dev_attr->page_size_cap) - 1); | ||
86 | rds_ibdev->fmr_page_size = 1 << rds_ibdev->fmr_page_shift; | ||
87 | rds_ibdev->fmr_page_mask = ~((u64) rds_ibdev->fmr_page_size - 1); | ||
88 | rds_ibdev->fmr_max_remaps = dev_attr->max_map_per_fmr?: 32; | 88 | rds_ibdev->fmr_max_remaps = dev_attr->max_map_per_fmr?: 32; |
89 | rds_ibdev->max_fmrs = dev_attr->max_fmr ? | 89 | rds_ibdev->max_fmrs = dev_attr->max_fmr ? |
90 | min_t(unsigned int, dev_attr->max_fmr, fmr_pool_size) : | 90 | min_t(unsigned int, dev_attr->max_fmr, fmr_pool_size) : |
@@ -282,6 +282,7 @@ struct rds_transport rds_ib_transport = { | |||
282 | .flush_mrs = rds_ib_flush_mrs, | 282 | .flush_mrs = rds_ib_flush_mrs, |
283 | .t_owner = THIS_MODULE, | 283 | .t_owner = THIS_MODULE, |
284 | .t_name = "infiniband", | 284 | .t_name = "infiniband", |
285 | .t_type = RDS_TRANS_IB | ||
285 | }; | 286 | }; |
286 | 287 | ||
287 | int __init rds_ib_init(void) | 288 | int __init rds_ib_init(void) |