This new version of the io_request_lock patch (siorl-v0) is available
at http://sourceforge.net/projects/lse/. It employs the same
concurrent request queueing scheme as the iorlv0 patch but isolates
code changes to the SCSI subsystem and engages the new locking scheme
only for SCSI drivers which explicitly request it. I took this more
restricted approach after additional development based on comments from
Jens and others indicated that iorlv0 impacted the IDE subsystem and
was unnecessarily broad in general.
The siorl-v0 patch allows drivers to enable concurrent queueing through
the concurrent_queue field in the Scsi_Host_Template which is copied to
the request queue. It creates SCSI-specific versions of generic block
i/o functions used by the SCSI subsystem and modifies them to conditionally
engage the new locking scheme based on this field. It allows control over
which drivers use concurrent queueing and preserves original block i/o
behavior by default.
I tested this patch with aic7xxx and lpfc drivers, and regression tested
it with IDE disk and CDROM drivers. Any feedback would be appreciated.
Thanks,
Jonathan
-- Jonathan Lahr IBM Linux Technology Center Beaverton, Oregon lahr@us.ibm.com 503-578-3385- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/