[SCSI] libfc: reduce hold time on SCSI host lock
authorChris Leech <christopher.leech@intel.com>
Thu, 10 Dec 2009 17:59:26 +0000 (09:59 -0800)
committerJames Bottomley <James.Bottomley@suse.de>
Sat, 12 Dec 2009 22:30:33 +0000 (16:30 -0600)
Introduce a new lock to protect the list of fc_fcp_pkt structs in libfc
instead of using the host lock.  This reduces the contention of this heavily
used lock, and I see up to a 25% performance gain in CPU bound small I/O
tests when scaling out across multiple quad-core CPUs.

The big win is in removing the host lock from the completion path
completely, as it does not need to be held around the call to scsi_done.

Signed-off-by: Chris Leech <christopher.leech@intel.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>

No differences found