Commit Graph
359 Commits
Author SHA1 Message Date
Vladislav Bolkhovitin e061263995 - Necessary cleanups in SGV cache for upcoming improvements. Particularly, all reclaiming management made per-pool, not global as before
- Shared between devices caches implemented



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@843 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-11 17:30:47 +00:00
Vladislav Bolkhovitin 1060d45a1f Patch from frank zago <fzago@systemfabricworks.com> with some modifications. It exposes scst parameters scst_max_cmd_mem and scst_max_dev_cmd_mem as well as vdisk's parameters num_threads and scst_vdisk_ID visible through /sys/module/scst and /sys/module/scst_vdisk correspondingly.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@827 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-08 10:35:24 +00:00
Vladislav Bolkhovitin 6425f39dc3 Unfortunately the latest InfiniBand software is not included in Linux
distributions but must be installed separately via the OFED package. The patch
below makes it easier to compile SCST-SRPT with the OFED kernel headers by
disabling the backported <linux/scatterlist.h> macro's when compiling with
OFED kernel headers. OFED namely has its own set of backported macro's. OFED
kernel headers are detected via the preprocessor symbol
__BACKPORT_LINUX_SCATTERLIST_H_TO_2_6_23__, which is defined in the OFED
header file <linux/scatterlist.h> only. This patch does not have any effect
when compiling SCST on a system where OFED has not been installed.

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



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@824 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-05 18:58:06 +00:00
Bart Van Assche 00aa42706f Fixed checkpatch complaints about whitespace (indentation should use tabs / trailing whitespace).
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@821 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-04 19:07:22 +00:00
Vladislav Bolkhovitin 9f2f2e7bd1 - Cleanups and improvements in handling various special commands properties
- REQUEST SENSE handling improved
 - READ CAPACITY(16) handling improved
 - New write_medium member added to scst_user's scst_user_scsi_cmd_reply_parse
 - scst_user docs updated
 - Other minot cleanups



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@816 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-01 19:26:10 +00:00
Vladislav Bolkhovitin 1051eddac7 - Fixes incorrect initiators.allow matching. Reported and tested by Dimitri Puzin <max@psycast.de>.
- Fixes handling of tab character during parsing of initiators.allow and initiators.deny files
 - IET part of the version updated
 - TAGS updated
 - Comments in scst_targ.c about long ago gone scst_unregister_session_ex() fixed



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@812 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-29 11:29:51 +00:00
Vladislav Bolkhovitin 1d96eaaa0b Cersions and web updated
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@811 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-29 11:12:43 +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
Bart Van Assche 67d54eafc8 Modified a two-line preprocessor statement into a single-line statement and added a comment that explains why this has been done.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@801 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-26 18:06:10 +00:00
Vladislav Bolkhovitin 22eb47e455 - Fixes BUG: scheduling while atomic
- Removes nested allocation, because MAX_LOCKDEP_SUBCLASSES isn't sufficiently high in many cases
 - Size for mempools for UAs and sense buffers



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@796 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-24 13:16:38 +00:00
Vladislav Bolkhovitin 4f6c39b81f Patches from Bart Van Assche <bart.vanassche@gmail.com>:
- Fix for trailing whitespaces
 - Fix for an error in the iSCSI-SCST howto document.
 - Make SCST compile on RHEL 5.3

+ small qla2x00t README update



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@790 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-20 20:32:13 +00:00
Vladislav Bolkhovitin 8c88994bb2 The patch below fixes recently introduced checkpatch complaints on whitespace
and also fixes two (false positive) sparse warnings about uninitialized variables.

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



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@776 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-14 17:50:11 +00:00
Vladislav Bolkhovitin 7b30ca41cb - Now during connection and session reinstatements only SCSI commands are delayed until the corresponding reinstatement finished.
- TEST UNIT READY made HEAD OF QUEUE to let target don't look dead under high load
 - Docs updated



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@774 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-14 17:29:23 +00:00
Vladislav Bolkhovitin bf4556ec1c A bunch of minor fixes and important cleanups. Particularly:
- More fixes on circular dependency between target_mutex and scst_mutex
 - Docs updated
 - Sense handling cleanups



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@764 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-09 10:07:31 +00:00
Vladislav Bolkhovitin fb22b12769 Missed bits in BIDI commands support
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@751 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-06 11:17:22 +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 34958faa23 Patch from Smadar Gonen <smadar.gn@gmail.com> fixing compilation on CentOS 5.2
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@737 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-02 18:24:18 +00:00
Vladislav Bolkhovitin 33e1e13494 Docs and logging updates
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@736 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-02 18:20:15 +00:00
Vladislav Bolkhovitin 5f0de8486c Fix of leftover from previous debug sessions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@733 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-01 12:15:27 +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 eb14f7ca12 ChangeLog and ToDo files updated
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@725 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-27 19:50:23 +00:00
Vladislav Bolkhovitin ddf8e1d499 - Minor fixes in error recovery paths
- Minor cleanups



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@724 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-27 12:14:41 +00:00
Vladislav Bolkhovitin 766979063e The patch below adds a comment about why it is safe to use in_atomic() in
scst_cmd_atomic() -- the 2.6.29 checkpatch script issues a warning about it.
At the same time, the scst_cmd_atomic() comment has been converted to
kernel-doc style. See also Documentation/kernel-doc-nano-HOWTO.txt for more
information.

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



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@723 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-26 19:01:28 +00:00
Vladislav Bolkhovitin f8ba391aea - Fixed crash introduced by r710 reported by andy yan <andyysj@gmail.com>
- Improve logging on write access on read-only devices
 - Make the same initiator coming through different sessions use shared IO context
 - Cleanups



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@721 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-26 18:25:00 +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 643c7ab2d1 Patch from Ruben Laban <r.laban@ism.nl>:
I replaced all occurences of DISTDIR with DESTDIR and also introduced SBINDIR (and friends) to some other Makefiles. 



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@719 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-25 19:33:10 +00:00
Vladislav Bolkhovitin bc96b052d5 The patch below adds support for the 2.6.29 kernel and also fixes the
checkpatch issues reported by the checkpatch script included with the 2.6.29
kernel and that were not yet reported by the 2.6.28 checkpatch script
(trailing statements should be on the next line / struct should normally be
const).
The patch below has been tested as follows:
- Reran scripts/run-regression-tests -k 2.6.24.7 -k 2.6.25.20 -k 2.6.26.8 -k 2.6.27.21 -k 2.6.28.9 -k 2.6.29 and verified the output.
- Rebuilt, installed and loaded scst, iscsi-scst and srpt as follows:
make -s clean && make -s -C scst install && make -s -C iscsi-scst install && make -s -C srpt install && cd scstadmin && make -s && make -s install && modprobe scst_vdisk && modprobe iscsi-scst && dmesg

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

with minor cleanups and corrections in put_page_callback-2.6.29.patch



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@717 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-25 12:55:27 +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 9c552a9b60 The patch below fixes the following recently introduced checkpatch complaints:
* use tabs not spaces

and the following recently introduced sparse warnings:

* drivers/scst/scst_lib.c:437:6: warning: symbol 'scst_queue_report_luns_changed_UA' was not declared. Should it be static?
* drivers/scst/scst_lib.c:3909:21: warning: symbol 'tm_dbg_tgt_dev' was not declared. Should it be static?
* drivers/scst/iscsi-scst/session.c:170:9: warning: cast to non-scalar
* drivers/scst/iscsi-scst/session.c:180:24: warning: cast to non-scalar
The patch below has been verified by reviewing it carefully and by verifying the output of the following command: scripts/run-regression-tests -k 2.6.28.8

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



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@712 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-23 19:32:32 +00:00
Vladislav Bolkhovitin acbfc9a0d2 - Make dynamic io_context assignment complete. Old export_alloc_io_context patch should be reverted and new io_context patch applied instead.
- Make BLOCKIO io_contex be per-(device,session)
 - Cleanups



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@710 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-23 19:19:56 +00:00
Vladislav Bolkhovitin 27c5d8dcdf The patch below fixes the following recently introduced checkpatch complaints:
* use tabs not spaces
* Macros with complex values should be enclosed in parenthesis.
* printk() should include KERN_ facility level.
The patch below has been verified by reviewing it carefully and by verifying the output of the following command: scripts/run-regression-tests -k 2.6.28.8

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



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@707 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-20 12:36:01 +00:00
Vladislav Bolkhovitin a20e32ad33 Fixing NULL pointer dereferences accessing dev->d_sense
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@706 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-20 12:29:20 +00:00
Vladislav Bolkhovitin 071e0a720c Support for descriptor sense format added
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@705 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-20 12:07:48 +00:00
Vladislav Bolkhovitin 988f8d98fc Patch from Ruben Laban <r.laban@ism.nl> to make the Makefiles more packager friendly with some modifications.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@704 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-19 14:20:07 +00:00
Vladislav Bolkhovitin 43ee898fa6 Remove sg_init_one() definition, because it was added in the kernel prior 2.6.16.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@703 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-19 14:00:15 +00:00
Vladislav Bolkhovitin 341f592a4a Support for variable lenght CDB added
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@702 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-18 19:36:01 +00:00
Vladislav Bolkhovitin 3fe295f5c1 Better version of r696
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@701 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-17 18:47:05 +00:00
Vladislav Bolkhovitin 019760a88c - Support for Async. Event Notifications added
- Implemented "plug-and-play" notifications about new devices in security groups and changed size of a device both through AENs and Unit Attentions

 - New command SCST_USER_DEVICE_CAPACITY_CHANGED added to scst_user interface to notify SCST core that the corresponding device has changed its capacity

 - New command "resync_size" added to scst_vdisk proc interface to tell scst_vdisk to reread size of the corresponding device.

 - Docs update

 - Minor fixes and cleanups



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@697 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-17 17:56:28 +00:00
Vladislav Bolkhovitin 244775bb35 Increase size of struct scst_dev_type.name to match scst_user's requirements
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@696 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-16 18:46:17 +00:00
Vladislav Bolkhovitin 06a6ae94e6 Heavily modified patch from Gennadiy Nerubayev <parakie@gmail.com>.
Adds a pattern matching for initiator names to SCST access control.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@695 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-09 20:05:15 +00:00
Vladislav Bolkhovitin 271b6887d9 Add handling of non-NONE data transfer direction commands with 0 buffer length in scst_user module.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@694 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-09 19:24:32 +00:00
Vladislav Bolkhovitin 707c68abe9 - Now only sent for execution commands are counted to wait for in TM commands
- TM debug fixes and cleanups



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@691 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-06 19:01:16 +00:00
Vladislav Bolkhovitin 868223a3a5 Forgotten chunk in previous commit
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@690 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-06 10:26:39 +00:00
Vladislav Bolkhovitin ea244c7da7 Fexes for processing internal REQUEST SENSE with scst_user handler
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@688 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-04 18:33:50 +00:00
Vladislav Bolkhovitin 485c9c7f29 Fixes possible crash on BUG_ON (or memory leak without it), if REQUEST SENSE was issued on a command, in which empty sense was returned.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@686 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-03 18:17:36 +00:00
Vladislav Bolkhovitin aaa11b710b - Cleanups
- scst_set_initial_UA() added. It sets initial Unit Attention for session, replacing default scst_sense_reset_UA
 - task_mgmt_affected_cmds_done() callback added in struct scst_tgt_template. It's informs target driver that a received task management fun
ction has been completed.
 - Now devices blocked only in reset TM commands. ABORTs, etc. now done without devices blocking
 - scst_unregister_session_ex() removed, since there are no users of it



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@684 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-03 18:02:25 +00:00
Vladislav Bolkhovitin 982e4d1938 Bufflen can be changed after scst_get_cdb_info(), so for bufflen = 0 data_direction should be changed to SCST_DATA_NONE not in scst_get_cdb_info(), but in the end of parsing.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@683 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-03 17:04:12 +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 3f355da360 Fix for bug reported by Gennadiy Nerubayev <parakie@gmail.com>. In some cases, e.g. with DRBD, bio->bi_end_io() can be called with IRQs disable which isn't appropriate for direct processing in SCST core. Switch to one of internal SCST threads in such cases.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@678 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-02-20 18:04:11 +00:00
Vladislav Bolkhovitin 0cf7566b93 Patch from Krzysztof Blaszkowski with some cleanups:
I realized yesterday that the fix missed one rare case 
still. if the hiwmk_check() returned with error and no_fail override was set 
then the counter would still cross 0 on free.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@677 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-02-19 19:06:13 +00:00