now report functions that are called with a lock held but that are missing
__acquires() and __releases() annotations. The patch below adds such
annotations and makes the following sparse warnings disappear:
drivers/scst/iscsi-scst/iscsi.c:2861:9: warning: context imbalance in 'iscsi_check_send_delayed_tm_resp' - unexpected unlock
drivers/scst/iscsi-scst/nthread.c:1614:17: warning: context imbalance in 'scst_do_job_wr' - unexpected unlock
drivers/scst/iscsi-scst/iscsi.c:2861:9: warning: context imbalance in 'iscsi_check_send_delayed_tm_resp' - unexpected unlock
drivers/scst/iscsi-scst/nthread.c:1614:17: warning: context imbalance in 'scst_do_job_wr' - unexpected unlock
drivers/scst/scst_local/scst_local.c:554:30: warning: context imbalance in 'scst_local_queuecommand' - unexpected unlock
The patch below has been tested by comparing the output of
"scripts/run-regression-tests 2.6.30.3" before and after the patch was applied.
Signed-off-by: Bart Van Assche <bart.vanassche@gmail.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@982 d57e44dd-8a1f-0410-8b47-8ef2f437770f
can send a request as a non scatterlist. If we get one, we create a single
element scatterlist and hand that on to SCST.
This costs some extra space in the structure I use to keep track of requests
and the done function, but only on those versions for which it is possible.
For real kernels it is scatterlists all the way down young man.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@922 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2.6.24, 2.6.25.4, 2.6.27.x and 2.6.29. I have also tested under 2.6.18 on a
CentOS 5.3 system.
There might still be problems with some 2.6.18 systems, and I will commit more
changes as the need arises.
I have only tested that scst_local builds and loads with these changes. I have
not tested any devices as yet.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@899 d57e44dd-8a1f-0410-8b47-8ef2f437770f
While writing DKMS support for the SCST and iSCST-SCST kernel modules, I ran
into a (common) problem with regard to out-of-tree build detection. A common
method to detect out-of-tree building is by using the KERNELRELEASE variable.
The usage of this variable poses a problem when using DKMS. DKMS itself uses
the KERNELRELEASE variable to specify the kernel for which the driver to
build. A suggested alternative would to use the PATCHLEVEL variable as part
of the detection mechanism instead. I attached a patch reflecting this
suggested change.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@720 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Docs about limitation of having initiator and target on the same host updated + cleanups
- Minor local thread storage improvements
- TRACE_MGMT_MINOR excluded from the default set of trace flags to not confuse people
- Dedicated kmem_cache for blockio created
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@662 d57e44dd-8a1f-0410-8b47-8ef2f437770f
It, hopefully, fixes compilation problems on CentOS 5.2 as well as on vanilla kernels <2.6.28
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@638 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- In scst_local new experimental compile-time option to force direct processing added
- Attempt in SCST structures to separate read-mostly from read-write data to decrease cache ping-pong between CPUs
- In scst_vdisk new module parameter num_threads added to specify a number of threads for each vdisk/vcdrom. Default is 5.
- Debug logging for failed digests in iSCSI-SCST improved
- Docs updates/cleanups
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@635 d57e44dd-8a1f-0410-8b47-8ef2f437770f
the compiler in an ifdef block.
- Memory leak fixed on error path in scst_local
- Docs cleanups
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@592 d57e44dd-8a1f-0410-8b47-8ef2f437770f
is not available. Define it if it is not already defined.
Also fix a few minor English issues.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@590 d57e44dd-8a1f-0410-8b47-8ef2f437770f
allocation until we have checked for errors. Also, fix the host ID
(target #) to be one larger than the max target ID for the host. Also,
reduce the number of outstanding commands per LUN to 1 (although this
might not be needed). Also scst_lcl_ini_driver_template flags cleanup.
Signed-off-by: Richard Sharpe <realrichardsharpe@gmail.com>
Signed-off-by: Vladislav Bolkhovitin <vst@vlnb.net>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@576 d57e44dd-8a1f-0410-8b47-8ef2f437770f
1. scst_local can work with scst_user's devices
2. scst_user now compatible with iscsi-scst if put_page_callback not applied
+ some cosmetics
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@567 d57e44dd-8a1f-0410-8b47-8ef2f437770f
trunk/scst_local/scst_local.c:907: warning: initialization from incompatible pointer type
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@564 d57e44dd-8a1f-0410-8b47-8ef2f437770f
WARNING! This commit changes external SCST interface, so it can break compilation of your out of SCST SVN tree target driver or dev handler. To fix it, simply supply the preferred exection context to scst_cmd_done() and/or scst_tgt_cmd_done().
Thanks to Bart Van Assche <bart.vanassche@gmail.com> for pointing on it.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@556 d57e44dd-8a1f-0410-8b47-8ef2f437770f