Using asynchronous has the advantage that SCSI commands can be processed
concurrently even if only one SCST command thread has been configured.
Asynchronous direct I/O has the additional advantage that the page cache
is bypassed and hence that the command processing overhead is reduced.
Asynchronous I/O is not used when DIF is enabled because it is
nontrivial to ensure that a DIF read received after a DIF write
returns the data that has just been written.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7514 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This patch does not change any functionality but makes a later patch
easier to read.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7513 d57e44dd-8a1f-0410-8b47-8ef2f437770f
A new zero-copy implementation will be added in a later patch.
This patch reverts most of r4213.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7512 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Instead of keeping scst/README and scst/README_in-tree in sync, remove
the latter. This file can always be restored if necessary.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7510 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This patch modifies scst_local such that on kernel version 3.19 and
later multiple hardware queues are used (scsi-mq). Note: in order
to benefit from concurrent processing, the number of SCST command
threads must be set to a value above one.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7509 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This patch does not change any functionality but brings the scst_local
source code more in line with recent upstream SCSI LLDs.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7508 d57e44dd-8a1f-0410-8b47-8ef2f437770f
When VAAI support is not needed can be convenient to use the
vdisk_blockio handler to handle I/O redirection between nodes in a
H.A. setup. Making the filename modifiable allows to keep the LUN
associations of an SCST device that is used for I/O redirection in
such a setup. This is a slightly modified version of a patch
provided by Marc Smith <marc.smith@parodyne.com>.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7497 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This patch does not change any functionality but makes it easier for
static analyzers like sparse and smatch to verify locking in
scst_unblock_aborted_cmds().
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7496 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This patch is only relevant for regression testing SCST against kernel
2.6.29 or older.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7495 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Since rebuilding the RHEL kernel is no longer recommended, remove the script
that rebuilds the RHEL kernel RPM.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7490 d57e44dd-8a1f-0410-8b47-8ef2f437770f
The supported stable kernels before 2.6.37 already include a backported
version of vzalloc().
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7487 d57e44dd-8a1f-0410-8b47-8ef2f437770f