From a565f89eb48716f954af254e55cada7eb23b5730 Mon Sep 17 00:00:00 2001 From: Vladislav Bolkhovitin Date: Tue, 2 Nov 2010 20:05:54 +0000 Subject: [PATCH] Don't return SN errors on IMMEDIATE commands git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2575 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- iscsi-scst/kernel/iscsi.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/iscsi-scst/kernel/iscsi.c b/iscsi-scst/kernel/iscsi.c index f7678c4e8..7ba16b040 100644 --- a/iscsi-scst/kernel/iscsi.c +++ b/iscsi-scst/kernel/iscsi.c @@ -1235,9 +1235,12 @@ static int check_cmd_sn(struct iscsi_cmnd *cmnd) cmnd->pdu.bhs.sn = cmd_sn = be32_to_cpu((__force __be32)cmnd->pdu.bhs.sn); TRACE_DBG("%d(%d)", cmd_sn, session->exp_cmd_sn); - if (likely((s32)(cmd_sn - session->exp_cmd_sn) >= 0)) + if ((s32)(cmd_sn - session->exp_cmd_sn) >= 0) return 0; - PRINT_ERROR("sequence error (%x,%x)", cmd_sn, session->exp_cmd_sn); + if (likely(cmnd->pdu.bhs.opcode & ISCSI_OP_IMMEDIATE)) + return 0; + PRINT_ERROR("sequence error (cmd sn %x, exp cmd sn %x, )", + cmd_sn, session->exp_cmd_sn); return -ISCSI_REASON_PROTOCOL_ERROR; }