mirror of
https://github.com/torvalds/linux.git
synced 2024-11-29 07:31:29 +00:00
ib_srpt: Remove ib_get_dma_mr calls
The pd now has a local_dma_lkey member which completely replaces ib_get_dma_mr, use it instead. Signed-off-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com> Reviewed-by: Sagi Grimberg <sagig@mellanox.com> Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
parent
e6bf5f48d2
commit
5a783956c2
@ -783,7 +783,7 @@ static int srpt_post_recv(struct srpt_device *sdev,
|
||||
|
||||
list.addr = ioctx->ioctx.dma;
|
||||
list.length = srp_max_req_size;
|
||||
list.lkey = sdev->mr->lkey;
|
||||
list.lkey = sdev->pd->local_dma_lkey;
|
||||
|
||||
wr.next = NULL;
|
||||
wr.sg_list = &list;
|
||||
@ -818,7 +818,7 @@ static int srpt_post_send(struct srpt_rdma_ch *ch,
|
||||
|
||||
list.addr = ioctx->ioctx.dma;
|
||||
list.length = len;
|
||||
list.lkey = sdev->mr->lkey;
|
||||
list.lkey = sdev->pd->local_dma_lkey;
|
||||
|
||||
wr.next = NULL;
|
||||
wr.wr_id = encode_wr_id(SRPT_SEND, ioctx->ioctx.index);
|
||||
@ -1206,7 +1206,7 @@ static int srpt_map_sg_to_ib_sge(struct srpt_rdma_ch *ch,
|
||||
|
||||
while (rsize > 0 && tsize > 0) {
|
||||
sge->addr = dma_addr;
|
||||
sge->lkey = ch->sport->sdev->mr->lkey;
|
||||
sge->lkey = ch->sport->sdev->pd->local_dma_lkey;
|
||||
|
||||
if (rsize >= dma_len) {
|
||||
sge->length =
|
||||
@ -3211,10 +3211,6 @@ static void srpt_add_one(struct ib_device *device)
|
||||
if (IS_ERR(sdev->pd))
|
||||
goto free_dev;
|
||||
|
||||
sdev->mr = ib_get_dma_mr(sdev->pd, IB_ACCESS_LOCAL_WRITE);
|
||||
if (IS_ERR(sdev->mr))
|
||||
goto err_pd;
|
||||
|
||||
sdev->srq_size = min(srpt_srq_size, sdev->dev_attr.max_srq_wr);
|
||||
|
||||
srq_attr.event_handler = srpt_srq_event;
|
||||
@ -3226,7 +3222,7 @@ static void srpt_add_one(struct ib_device *device)
|
||||
|
||||
sdev->srq = ib_create_srq(sdev->pd, &srq_attr);
|
||||
if (IS_ERR(sdev->srq))
|
||||
goto err_mr;
|
||||
goto err_pd;
|
||||
|
||||
pr_debug("%s: create SRQ #wr= %d max_allow=%d dev= %s\n",
|
||||
__func__, sdev->srq_size, sdev->dev_attr.max_srq_wr,
|
||||
@ -3311,8 +3307,6 @@ err_cm:
|
||||
ib_destroy_cm_id(sdev->cm_id);
|
||||
err_srq:
|
||||
ib_destroy_srq(sdev->srq);
|
||||
err_mr:
|
||||
ib_dereg_mr(sdev->mr);
|
||||
err_pd:
|
||||
ib_dealloc_pd(sdev->pd);
|
||||
free_dev:
|
||||
@ -3357,7 +3351,6 @@ static void srpt_remove_one(struct ib_device *device, void *client_data)
|
||||
srpt_release_sdev(sdev);
|
||||
|
||||
ib_destroy_srq(sdev->srq);
|
||||
ib_dereg_mr(sdev->mr);
|
||||
ib_dealloc_pd(sdev->pd);
|
||||
|
||||
srpt_free_ioctx_ring((struct srpt_ioctx **)sdev->ioctx_ring, sdev,
|
||||
|
@ -393,7 +393,6 @@ struct srpt_port {
|
||||
struct srpt_device {
|
||||
struct ib_device *device;
|
||||
struct ib_pd *pd;
|
||||
struct ib_mr *mr;
|
||||
struct ib_srq *srq;
|
||||
struct ib_cm_id *cm_id;
|
||||
struct ib_device_attr dev_attr;
|
||||
|
Loading…
Reference in New Issue
Block a user