From d00aaf6732ab190a7503cd4783d9a12331bec5f4 Mon Sep 17 00:00:00 2001 From: Bart Van Assche Date: Thu, 24 Feb 2011 17:45:22 +0000 Subject: [PATCH] ib_srpt: Handle fatal errors properly in srpt_xmit_response() git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3257 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- srpt/src/ib_srpt.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/srpt/src/ib_srpt.c b/srpt/src/ib_srpt.c index 2772f5201..169d80216 100644 --- a/srpt/src/ib_srpt.c +++ b/srpt/src/ib_srpt.c @@ -3098,14 +3098,12 @@ static int srpt_xmit_response(struct scst_cmd *scmnd) if (dir == SCST_DATA_READ && scst_cmd_get_adjusted_resp_data_len(scmnd)) { ret = srpt_xfer_data(ch, ioctx, scmnd); - if (ret == SCST_TGT_RES_QUEUE_FULL) { + if (unlikely(ret != SCST_TGT_RES_SUCCESS)) { srpt_set_cmd_state(ioctx, state); PRINT_WARNING("xfer_data failed for tag %llu" - " - retrying", scst_cmd_get_tag(scmnd)); - goto out; - } else if (ret != SCST_TGT_RES_SUCCESS) { - PRINT_ERROR("xfer_data failed for tag %llu", - scst_cmd_get_tag(scmnd)); + " - %s", scst_cmd_get_tag(scmnd), + ret == SCST_TGT_RES_QUEUE_FULL ? + "retrying" : "failing"); goto out; } }