[SCSI] libfc: fixes unnecessary seq id jump
commita104c844576c6bdc44c6f1336e30a5fcd90fef1c
authorVasu Dev <vasu.dev@intel.com>
Sat, 13 Mar 2010 00:08:34 +0000 (12 16:08 -0800)
committerJames Bottomley <James.Bottomley@suse.de>
Sun, 11 Apr 2010 14:23:41 +0000 (11 09:23 -0500)
tree663dcc3412254f0f004d014b93f2f96b402e14a1
parentcc3593d3882ffa7dfaa739a8302b256955be7d99
[SCSI] libfc: fixes unnecessary seq id jump

In some cases seq is incremented twice causing unnecessary
seq jump, for instance fc_exch_recv_seq_resp increments
seq id when fc_sof_is_init is true and that is true for
each incoming xfer ready but then fc_fcp_send_data does
another seq increment to send data for xfer ready.

This patch removes all such seq id jumps, at least it
eliminates few calls to fc_seq_start_next using ex_lock.

Also removes seq id update with incoming frame's seq id
as this is not needed since each end (I or T) just need
to send incremented their own seq id on each TSI from
other end & before sending new sequence within a
exchange.

Signed-off-by: Vasu Dev <vasu.dev@intel.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
drivers/scsi/libfc/fc_exch.c