Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6f9e7f01 authored by Roland Dreier's avatar Roland Dreier Committed by Nicholas Bellinger
Browse files

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: default avatarRoland Dreier <roland@purestorage.com>
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarNicholas Bellinger <nab@linux-iscsi.org>
parent e182d682
Loading
Loading
Loading
Loading
+2 −6
Original line number Diff line number Diff line
@@ -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.
	 */