public inbox for linux-rdma@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ib_srpt: Make srpt_map_sg_to_ib_sge() failure case return -EAGAIN
@ 2011-10-26  7:13 Nicholas A. Bellinger
  0 siblings, 0 replies; only message in thread
From: Nicholas A. Bellinger @ 2011-10-26  7:13 UTC (permalink / raw)
  Cc: target-devel, linux-scsi, linux-rdma, Nicholas Bellinger,
	Bart Van Assche, Christoph Hellwig, Roland Dreier

From: Nicholas Bellinger <nab@linux-iscsi.org>

This patch makes the failure case in srpt_map_sg_to_ib_sge() for ib_dma_map_sg()
return -EAGAIN so that this failure will trigger target-core QUEUE_FULL logic
from srpt_xfer_data() for srpt_write_pending() WRITEs and srpt_queue_response()
for READs.

Reported-by: Bart Van Assche <bvanassche@acm.org>
Cc: Bart Van Assche <bvanassche@acm.org>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Roland Dreier <roland@purestorage.com>
Signed-off-by: Nicholas A. Bellinger <nab@linux-iscsi.org>
---
 drivers/infiniband/ulp/srpt/ib_srpt.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/infiniband/ulp/srpt/ib_srpt.c b/drivers/infiniband/ulp/srpt/ib_srpt.c
index f7174b3..7892efc 100644
--- a/drivers/infiniband/ulp/srpt/ib_srpt.c
+++ b/drivers/infiniband/ulp/srpt/ib_srpt.c
@@ -1112,7 +1112,7 @@ static int srpt_map_sg_to_ib_sge(struct srpt_rdma_ch *ch,
 	count = ib_dma_map_sg(ch->sport->sdev->device, sg, sg_cnt,
 			      opposite_dma_dir(dir));
 	if (unlikely(!count))
-		return -EBUSY;
+		return -EAGAIN;
 
 	ioctx->mapped_sg_count = count;
 
-- 
1.7.2.5


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2011-10-26  7:13 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-10-26  7:13 [PATCH] ib_srpt: Make srpt_map_sg_to_ib_sge() failure case return -EAGAIN Nicholas A. Bellinger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox