Commit Graph

35 Commits

Author SHA1 Message Date
Vladislav Bolkhovitin
7bdc38faf2 The most recent version of the sparse static source code checking tool does
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
2009-07-27 17:52:19 +00:00
Vladislav Bolkhovitin
37ba91d275 Update for 2.6.30
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@938 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-07-08 17:27:30 +00:00
Bart Van Assche
41958a0723 Removed trailing whitespace.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@929 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-07-01 10:47:33 +00:00
Richard Sharpe
dc78e8a39c Add some conditional code to handle kernel versions less that 2.6.25 that
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
2009-06-26 00:54:57 +00:00
Richard Sharpe
6f5bc12172 Remove an ugly hack that was left in just in case. It has been confirmed to
be not needed.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@921 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-06-24 23:10:53 +00:00
Richard Sharpe
8187f28719 Make scst_local compile cleanly on a range of versions of Linux. I have tested
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
2009-06-14 21:00:52 +00:00
Vladislav Bolkhovitin
f572d4ff79 - Copyrights updated.
- Other minor updates



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@803 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-27 19:01:28 +00:00
Vladislav Bolkhovitin
e62b39196b Bidirectional data transfers added
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@744 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-03 17:49:26 +00:00
Vladislav Bolkhovitin
4bc15527d2 Version number increased
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@729 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-01 11:09:44 +00:00
Vladislav Bolkhovitin
00b094c7fa Patch from Ruben Laban <r.laban@ism.nl>:
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
2009-03-25 19:42:03 +00:00
Vladislav Bolkhovitin
2f9f473cde - Fixes broken build if io_context patch not applied
- #warning's cleanup



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@715 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-24 10:43:55 +00:00
Vladislav Bolkhovitin
d3d5666f5d Cleanups
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@682 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-03 17:00:53 +00:00
Vladislav Bolkhovitin
45fd88076c - Fix typo in scst_rx_mgmt_fn_tag() call for task abort
- Cosmetics



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@664 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-02-05 18:23:28 +00:00
Vladislav Bolkhovitin
a34ec0f7ff A bunch of pending fixes/cleanups:
- 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
2009-02-04 18:45:32 +00:00
Vladislav Bolkhovitin
48addc3482 Modified patch from Bart Van Assche <bart.vanassche@gmail.com>
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
2009-01-23 19:51:54 +00:00
Vladislav Bolkhovitin
ae7345340c A bunch of minor fixes/improvements, cleanups and updates:
- 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
2009-01-16 20:56:06 +00:00
Bart Van Assche
e5caaf4548 Removed trailing whitespace. While the checkpatch script included with the 2.6.27 kernel did not complain on trailing whitespace in documentation and kbuild files, the checkpatch script included with the 2.6.28 kernel does.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@631 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-01-10 17:21:57 +00:00
Vladislav Bolkhovitin
e7429fd16e Minor fixes
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@628 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-01-04 16:12:56 +00:00
Bart Van Assche
e01c2da60f Fixed a sparse warning.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@601 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-12-04 21:29:24 +00:00
Vladislav Bolkhovitin
0961dd7433 - Patch from Richard Sharpe <realrichardsharpe@gmail.com> to fix an unterminated macro call and add a semicolon to please
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
2008-12-01 18:36:54 +00:00
Richard Sharpe
bd3cef926e Some minor fixups to the doc to make it more correct.
My previous commit was tested against 2.6.24 and 2.6.26.5 prior to the commit.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@591 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-12-01 00:55:56 +00:00
Richard Sharpe
4c90106577 Fix a problem on kernels older than 2.6.25 where the symbol SCSI_MAX_SG_SEGMENTS
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
2008-12-01 00:42:02 +00:00
Vladislav Bolkhovitin
fb2fdb2ed6 Checkpatch warnings fixed
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@582 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-11-21 12:12:53 +00:00
Vladislav Bolkhovitin
8563f4f876 DRIVER_ATTR add_host made static
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@580 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-11-21 10:16:34 +00:00
Vladislav Bolkhovitin
371e083d06 Prevent memory leaks in error paths by deferring
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
2008-11-19 11:37:45 +00:00
Vladislav Bolkhovitin
bad0bad3da The patch below fixes two categories of checkpatch
complaints on scst_local, namely "line over 80 columns" and "use tabs to indent
instead of spaces".

Signed-off-by: Bart Van Assche <bart.vanassche@gmail.com>
Signed-off-by: Richard Sharpe <realrichardsharpe@gmail.com>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@573 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-11-18 18:45:13 +00:00
Vladislav Bolkhovitin
caa419d49d Cleanup
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@570 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-11-13 16:14:06 +00:00
Vladislav Bolkhovitin
190e00f6d2 Here is the patch to fix problems with scst_local and 2.6.24 or earlier (tested by building under 2.6.24).
Signed-off-by: Richard Sharpe <realrichardsharpe@gmail.com>

This line, and those below, will be ignored--

M    trunk/scst_local/scst_local.c



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@568 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-11-11 12:04:52 +00:00
Vladislav Bolkhovitin
47422bf856 Added possibility to coexist if both target driver and dev handler need custom memory allocation. Direct consequences:
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
2008-11-11 11:56:18 +00:00
Vladislav Bolkhovitin
2177758f82 Fixes warning:
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
2008-11-10 17:11:48 +00:00
Vladislav Bolkhovitin
55153a772c Attached is a patch that I think makes scst_local properly handle multiple targets per host.
Signed-off-by: Richard Sharpe <realrichardsharpe@gmail.com>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@561 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-11-05 18:56:31 +00:00
Vladislav Bolkhovitin
90c831b838 Cleanup removing usage of in_atomic(). Particularly, now target drivers and dev handlers need to explicitly supply preferred execution context in scst_cmd_done() and scst_tgt_cmd_done().
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
2008-10-31 10:49:25 +00:00
Vladislav Bolkhovitin
54b2a0a5b9 -Wno-missing-field-initializers added. Small cleanup.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@542 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-10-25 17:31:10 +00:00
Vladislav Bolkhovitin
1eeffbb3da The first approximation to update to 2.6.27 + minor fixes, particularly remove of unused variable and add full path to depmod in Makefiles. Partially done by Bart Van Assche <bart.vanassche@gmail.com>.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@529 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-10-21 11:51:52 +00:00
Vladislav Bolkhovitin
3fb2634b6e scst_local module added.
Signed-off-by: Richard Sharpe <realrichardsharpe@gmail.com>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@526 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-10-16 19:23:22 +00:00