IB/srpt: Remove use of transport_do_task_sg_chain()
With the modern target core, se_cmd->t_data_sg already points to a sglist that covers the whole command. So task_sg chaining is needless overhead and obfuscation -- instead of splicing the split up task sglists back into one list, we can just use the original list directly. Signed-off-by: Roland Dreier <roland@purestorage.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
This commit is contained in:
parent
e182d6828d
commit
6f9e7f01b6
1 changed files with 2 additions and 6 deletions
|
@ -1099,9 +1099,8 @@ static int srpt_map_sg_to_ib_sge(struct srpt_rdma_ch *ch,
|
|||
dir = cmd->data_direction;
|
||||
BUG_ON(dir == DMA_NONE);
|
||||
|
||||
transport_do_task_sg_chain(cmd);
|
||||
ioctx->sg = sg = sg_orig = cmd->t_tasks_sg_chained;
|
||||
ioctx->sg_cnt = sg_cnt = cmd->t_tasks_sg_chained_no;
|
||||
ioctx->sg = sg = sg_orig = cmd->t_data_sg;
|
||||
ioctx->sg_cnt = sg_cnt = cmd->t_data_nents;
|
||||
|
||||
count = ib_dma_map_sg(ch->sport->sdev->device, sg, sg_cnt,
|
||||
opposite_dma_dir(dir));
|
||||
|
@ -4003,9 +4002,6 @@ static int __init srpt_init_module(void)
|
|||
|
||||
srpt_target->tf_ops = srpt_template;
|
||||
|
||||
/* Enable SG chaining */
|
||||
srpt_target->tf_ops.task_sg_chaining = true;
|
||||
|
||||
/*
|
||||
* Set up default attribute lists.
|
||||
*/
|
||||
|
|
Loading…
Reference in a new issue