Messages in this thread Patch in this message | | | From | "Nicholas A. Bellinger" <> | Subject | [PATCH/for-next 3/3] iser-target: Add special case for early ISCSI_OP_SCSI_CMD exception handling | Date | Thu, 25 Apr 2013 07:40:31 +0000 |
| |
From: Nicholas Bellinger <nab@linux-iscsi.org>
During early ISCSI_OP_SCSI_CMD exception handling with non GOOD status, the TX thread context in isert_response_queue() needs to post IB_WR_SEND via isert_put_response() when processing ISTATE_SEND_STATUS.
Cc: Or Gerlitz <ogerlitz@mellanox.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org> --- drivers/infiniband/ulp/isert/ib_isert.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/drivers/infiniband/ulp/isert/ib_isert.c b/drivers/infiniband/ulp/isert/ib_isert.c index 1a150ef..41712f0 100644 --- a/drivers/infiniband/ulp/isert/ib_isert.c +++ b/drivers/infiniband/ulp/isert/ib_isert.c @@ -1947,6 +1947,13 @@ isert_response_queue(struct iscsi_conn *conn, struct iscsi_cmd *cmd, int state) case ISTATE_SEND_REJECT: ret = isert_put_reject(cmd, conn); break; + case ISTATE_SEND_STATUS: + /* + * Special case for sending non GOOD SCSI status from TX thread + * context during pre se_cmd excecution failure. + */ + ret = isert_put_response(conn, cmd); + break; default: pr_err("Unknown response state: 0x%02x\n", state); ret = -EINVAL; -- 1.7.2.5
| |