diff options
author | Bart Van Assche <bart.vanassche@sandisk.com> | 2016-04-22 17:13:57 -0400 |
---|---|---|
committer | Doug Ledford <dledford@redhat.com> | 2016-05-12 14:18:56 -0400 |
commit | fa9863f869202a4ccc673cbd8dd326bf54a8efff (patch) | |
tree | 4c10667af91f6ff373f5a6c0296e1c8eb0ad4958 /drivers/infiniband/ulp | |
parent | e012f3639c95498d4e8d7a9f44e33f1cd2f241b0 (diff) |
IB/srp: Introduce target->mr_pool_size
This patch does not change any functionality.
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
Reviewed-by: Sagi Grimberg <sagig@mellanox.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Laurence Oberman <loberman@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband/ulp')
-rw-r--r-- | drivers/infiniband/ulp/srp/ib_srp.c | 6 | ||||
-rw-r--r-- | drivers/infiniband/ulp/srp/ib_srp.h | 1 |
2 files changed, 4 insertions, 3 deletions
diff --git a/drivers/infiniband/ulp/srp/ib_srp.c b/drivers/infiniband/ulp/srp/ib_srp.c index 47e753d9ab5b..92d2d98c9831 100644 --- a/drivers/infiniband/ulp/srp/ib_srp.c +++ b/drivers/infiniband/ulp/srp/ib_srp.c | |||
@@ -316,7 +316,7 @@ static struct ib_fmr_pool *srp_alloc_fmr_pool(struct srp_target_port *target) | |||
316 | struct ib_fmr_pool_param fmr_param; | 316 | struct ib_fmr_pool_param fmr_param; |
317 | 317 | ||
318 | memset(&fmr_param, 0, sizeof(fmr_param)); | 318 | memset(&fmr_param, 0, sizeof(fmr_param)); |
319 | fmr_param.pool_size = target->scsi_host->can_queue; | 319 | fmr_param.pool_size = target->mr_pool_size; |
320 | fmr_param.dirty_watermark = fmr_param.pool_size / 4; | 320 | fmr_param.dirty_watermark = fmr_param.pool_size / 4; |
321 | fmr_param.cache = 1; | 321 | fmr_param.cache = 1; |
322 | fmr_param.max_pages_per_fmr = dev->max_pages_per_mr; | 322 | fmr_param.max_pages_per_fmr = dev->max_pages_per_mr; |
@@ -441,8 +441,7 @@ static struct srp_fr_pool *srp_alloc_fr_pool(struct srp_target_port *target) | |||
441 | { | 441 | { |
442 | struct srp_device *dev = target->srp_host->srp_dev; | 442 | struct srp_device *dev = target->srp_host->srp_dev; |
443 | 443 | ||
444 | return srp_create_fr_pool(dev->dev, dev->pd, | 444 | return srp_create_fr_pool(dev->dev, dev->pd, target->mr_pool_size, |
445 | target->scsi_host->can_queue, | ||
446 | dev->max_pages_per_mr); | 445 | dev->max_pages_per_mr); |
447 | } | 446 | } |
448 | 447 | ||
@@ -3229,6 +3228,7 @@ static ssize_t srp_create_target(struct device *dev, | |||
3229 | } | 3228 | } |
3230 | 3229 | ||
3231 | target_host->sg_tablesize = target->sg_tablesize; | 3230 | target_host->sg_tablesize = target->sg_tablesize; |
3231 | target->mr_pool_size = target->scsi_host->can_queue; | ||
3232 | target->indirect_size = target->sg_tablesize * | 3232 | target->indirect_size = target->sg_tablesize * |
3233 | sizeof (struct srp_direct_buf); | 3233 | sizeof (struct srp_direct_buf); |
3234 | target->max_iu_len = sizeof (struct srp_cmd) + | 3234 | target->max_iu_len = sizeof (struct srp_cmd) + |
diff --git a/drivers/infiniband/ulp/srp/ib_srp.h b/drivers/infiniband/ulp/srp/ib_srp.h index 9e05ce4a04fd..a00914cdd44e 100644 --- a/drivers/infiniband/ulp/srp/ib_srp.h +++ b/drivers/infiniband/ulp/srp/ib_srp.h | |||
@@ -202,6 +202,7 @@ struct srp_target_port { | |||
202 | char target_name[32]; | 202 | char target_name[32]; |
203 | unsigned int scsi_id; | 203 | unsigned int scsi_id; |
204 | unsigned int sg_tablesize; | 204 | unsigned int sg_tablesize; |
205 | int mr_pool_size; | ||
205 | int queue_size; | 206 | int queue_size; |
206 | int req_ring_size; | 207 | int req_ring_size; |
207 | int comp_vector; | 208 | int comp_vector; |