diff options
author | Joe Eykholt <jeykholt@cisco.com> | 2010-03-12 19:08:29 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2010-04-11 10:23:40 -0400 |
commit | cc3593d3882ffa7dfaa739a8302b256955be7d99 (patch) | |
tree | 37e31656c73be8a19a1a6cea48597d14315db163 /drivers/scsi/libfc | |
parent | 4291365784c9622c9d643cf23421f9c7b9662d71 (diff) |
[SCSI] libfc: fix sequence-initiative WARN in fc_seq_start_next
When starting a new response sequence in a multi-sequence
exchange, a warning was issued that sequence initiative
wasn't held.
The bug was that sequence initiative was cleared by the previous
sequence due to the END_SEQ flag being on. The intent may have
been to check LAST_SEQ. Change just to check SEQ_INIT.
Signed-off-by: Joe Eykholt <jeykholt@cisco.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/libfc')
-rw-r--r-- | drivers/scsi/libfc/fc_exch.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/libfc/fc_exch.c b/drivers/scsi/libfc/fc_exch.c index e5df0d4db67e..7cc084cf9950 100644 --- a/drivers/scsi/libfc/fc_exch.c +++ b/drivers/scsi/libfc/fc_exch.c | |||
@@ -488,7 +488,7 @@ static int fc_seq_send(struct fc_lport *lport, struct fc_seq *sp, | |||
488 | */ | 488 | */ |
489 | spin_lock_bh(&ep->ex_lock); | 489 | spin_lock_bh(&ep->ex_lock); |
490 | ep->f_ctl = f_ctl & ~FC_FC_FIRST_SEQ; /* not first seq */ | 490 | ep->f_ctl = f_ctl & ~FC_FC_FIRST_SEQ; /* not first seq */ |
491 | if (f_ctl & (FC_FC_END_SEQ | FC_FC_SEQ_INIT)) | 491 | if (f_ctl & FC_FC_SEQ_INIT) |
492 | ep->esb_stat &= ~ESB_ST_SEQ_INIT; | 492 | ep->esb_stat &= ~ESB_ST_SEQ_INIT; |
493 | spin_unlock_bh(&ep->ex_lock); | 493 | spin_unlock_bh(&ep->ex_lock); |
494 | return error; | 494 | return error; |