diff options
author | Jenny Derzhavetz <jennyf@mellanox.com> | 2015-12-09 14:12:01 +0200 |
---|---|---|
committer | Doug Ledford <dledford@redhat.com> | 2015-12-24 00:17:34 -0500 |
commit | b5f04b00f73d8f5d7755f5be7d05258641d99126 (patch) | |
tree | 99a80209198fa637aa3170c6614f632ff0bea082 /drivers/infiniband/ulp/iser/iser_initiator.c | |
parent | bfe066e256d55562b00c2d4897ae52e1545a084e (diff) | |
download | linux-stable-b5f04b00f73d8f5d7755f5be7d05258641d99126.tar.gz linux-stable-b5f04b00f73d8f5d7755f5be7d05258641d99126.tar.bz2 linux-stable-b5f04b00f73d8f5d7755f5be7d05258641d99126.zip |
IB/iser: Don't register memory for all immediate data writes
When all the task data is sent as immediate data, we are
allowed to use the local_dma_lkey as it is not sent to
the wire.
Signed-off-by: Jenny Derzhavetz <jennyf@mellanox.com>
Signed-off-by: Sagi Grimberg <sagig@mellanox.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Diffstat (limited to 'drivers/infiniband/ulp/iser/iser_initiator.c')
-rw-r--r-- | drivers/infiniband/ulp/iser/iser_initiator.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/infiniband/ulp/iser/iser_initiator.c b/drivers/infiniband/ulp/iser/iser_initiator.c index 44ecb89689f5..bc96dcb11b87 100644 --- a/drivers/infiniband/ulp/iser/iser_initiator.c +++ b/drivers/infiniband/ulp/iser/iser_initiator.c @@ -72,7 +72,7 @@ static int iser_prepare_read_cmd(struct iscsi_task *task) return err; } - err = iser_reg_rdma_mem(iser_task, ISER_DIR_IN); + err = iser_reg_rdma_mem(iser_task, ISER_DIR_IN, false); if (err) { iser_err("Failed to set up Data-IN RDMA\n"); return err; @@ -126,7 +126,8 @@ iser_prepare_write_cmd(struct iscsi_task *task, return err; } - err = iser_reg_rdma_mem(iser_task, ISER_DIR_OUT); + err = iser_reg_rdma_mem(iser_task, ISER_DIR_OUT, + buf_out->data_len == imm_sz); if (err != 0) { iser_err("Failed to register write cmd RDMA mem\n"); return err; |