Commit Graph

62 Commits

Author SHA1 Message Date
Vladislav Bolkhovitin
20a2e4ae8d Copyrights updated
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@408 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-06-12 11:39:28 +00:00
Vladislav Bolkhovitin
994b72d114 The major TM processing cleanup in scst_user module which was possible after the recent SCST changes, to fix current problems. Also there are fixes for found during development/testing problems. Particularly:
- PRIO queue was removed from scst_user. Instead, all priority commands now queued in the head of the regular queue. The corresponding code was removed from fileio_tgt as well. It necessary, in the future the priority queue can be easily restored from this patch.

 - pre_unreg_sess() was removed from struct scst_dev_type. The corresponding code was removed from SCST core as well

 - Almost all /proc/scsi_tgt commands now can fail after timeout (90 seconds) with EBUSY

 - Fixed possible incorrect command's retry if double RESET UA is detected.

 - Many minor changes and cleanups

Also docs were updated.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@403 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-05-31 12:05:02 +00:00
Vladislav Bolkhovitin
21cc5df121 Patch from Bart Van Assche <bart.vanassche@gmail.com>:
The patch below fixes the following class of checkpatch.pl errors:
  ERROR("(foo*)" should be "(foo *)".
Or: another whitespace-only change.

I have verified that the output of svn diff -w -x is empty for this patch.

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



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@383 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-05-21 15:43:54 +00:00
Vladislav Bolkhovitin
56e642cf77 Patch from Bart Van Assche <bart.vanassche@gmail.com>:
The patch below implements the following changes:
- Fixes the remaining warnings reported by checkpatch.pl with regard to the use
  of whitespace in C code.
- Adds double qoutes around some #warning messages, such that checkpatch.pl
  does no longer try to interprete the text behind the #warning preprocessor
  directive.
- Adds an extra conversion to the generate-kernel-patch script that removes
  the single space from before goto-labels while generating the kernel patch.

This patch has been tested as follows:
- Verified that svn diff -x -w only shows changes in the #warning preprocessor directives.
- Verified the output of svn diff by reading it.
- Verified that checkpatch.pl does no longer complain on the use of whitespace
  (searched through the checkpatch.pl output for the text ' space').
- Verified that the patch generated by the generate-kernel-patch script still
  applies cleanly to the 2.6.24 kernel, and that the patched kernel still compiles cleanly.

Please let me know if I have to resubmit parts of this patch to other SCST authors.

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



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@381 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-05-21 11:56:09 +00:00
Vladislav Bolkhovitin
1213800b2f Patch from Bart Van Assche <bart.vanassche@gmail.com>, except few chuncks from qla2x00t/ obviously not related to the target mode addon:
One of the Linux kernel patch submission requirements is that source files do
not contain trailing whitespace. The patch below removes trailing whitespace
from .c and .h source files.

Note: it might be more convenient to run the script I used to generate this
patch than to review and apply the patch below. This is how I generated and
verified the patch below:

cat <<EOF >./strip-trailing-whitespace
#!/bin/bash
trap "rm -f $t" EXIT
t=/tmp/temporary-file.$$
for f in "$@"
do
  sed 's/[	 ]*$//' <"$f" >"$t" && mv "$t" "$f"
done
EOF
chmod a+x ./strip-trailing-whitespace
find -name '*.[ch]' | xargs ./strip-trailing-whitespace
svn diff -x -w

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



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@377 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-05-19 10:21:41 +00:00
Vladislav Bolkhovitin
a06c3d97e3 - Fixed sg_tablesize in qla2x00t to be per target card, not global
- Minor cleanups


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@374 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-05-15 17:27:50 +00:00
Vladislav Bolkhovitin
cf53d51733 - In "extraclean" target new autogenerated files added
- Don't automatically build iscsi-scst-adm anymore until it will be fixed


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@368 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-05-13 17:18:07 +00:00
Vladislav Bolkhovitin
2bff6d9765 - Rejecting command reimplemented in a more simple, straightforward and readable way.
- Minor external interface change: now target drivers should set for aborted commands SCST_CMD_DELIVERY_ABORTED status via scst_set_delivery_status(). In-tree drivers updated.
 - Fixed broken compilation if put_page_callback patch not applied to the kernel. Reported by Erez Zilber <erezz@Voltaire.COM>
 - Fixed several minor problems reported by David Berton <davidbrt@yahoo.com>
 - Fixed __exit misuse, when such functions called from __init functions.
 - Docs updated.
 - Other minor changes and cleanups.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@364 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-05-07 18:44:15 +00:00
Vladislav Bolkhovitin
925fbcdda3 The bunch of pending changes. Sorry, it's quite big.
- "RECEIVE DIAGNOSTIC RESULTS" command handling fixed
 - Obtaining device queue parameters in scst_obtain_device_parameters() changed to handle NOT READY sense
 - Fixed possible dev_cmd_count underflow
 - Minor iSCSI-SCST connection closing cleanups and fixes
 - Semantic of other *_atomic flags changed a bit. Now they are intended only to allow SCST to optimize execution context. The corresponing functions now can *always* be called on atomic context and, if necessary, should manually determine that using scst_cmd_atomic() function and restart using corresponding *_NEED_THREAD_* return value.
 - scst_cmd_get_tgt_resp_flags() and SCST_TSC_FLAG_STATUS flag made obsolete and replaced by scst_cmd_get_is_send_status(). All in-tree drivers updated accordingly
 - Cleanup: preprocessing_done_atomic removed, now preprocessing_done() callback always called on thread context
 - 64-bit cleanups
 - Documented that iscsi-scst-adm is currently broken and explained why
 - In user space Makefile's added possibility to specify external linker flags
 - Minor performance optimizations
 - Other minor cleanups


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@350 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-04-22 10:30:53 +00:00
Vladislav Bolkhovitin
25b29b701a Update for 2.6.25
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@338 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-04-18 16:38:39 +00:00
Vladislav Bolkhovitin
fa84d540ef scsi_tgt.h renamed to scst.h
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@337 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-04-17 17:35:37 +00:00
Vladislav Bolkhovitin
eec2a571dd - Fixed minor problem in iSCSI-SCST
- Important reference counting and barriers usage cleanups
 - Sense buffer made dynamic
 - Other minor improvements and cleanups
 - Docs updates


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@287 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-02-13 17:15:47 +00:00
Vladislav Bolkhovitin
7d18a8a3e2 - Update to work on 2.6.24
- Minor cleanups


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@251 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-01-31 18:28:43 +00:00
Vladislav Bolkhovitin
af933af991 - Version protection added
- Cleanups


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@249 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-01-24 11:52:01 +00:00
Vladislav Bolkhovitin
7412de833b Logging improvements
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@244 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-01-11 18:09:38 +00:00
Vladislav Bolkhovitin
0489f4287b - Fixed possible crash on SN slots overflow
- Docs updates
 - Other minor changes


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@243 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-01-11 10:03:48 +00:00
Vladislav Bolkhovitin
e819486311 - Fixed huge iSCSI RFC violation, inherited from IET: incorrect commands ordering.
- TM fixes related to new commands serialization
 - Other TM improvements
 - Minor changes: likely/unlikely and priority of mgmt threads

Work not fully completed, still there are some rare issues.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@240 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-12-29 17:04:13 +00:00
Vladislav Bolkhovitin
1e18aabf3a - Implement SN based iSCSI IO flow control
- ABORT_CONSIDER_FINISHED_TASKS_AS_NOT_EXISTING compilation symbol added
 - TM fixes and cleanups
 - Fixes crash on modprobe with some real devices


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@233 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-12-13 18:28:34 +00:00
Vladislav Bolkhovitin
eb2a55ef21 - Fixed incorrect residual on internal BUSY replies
- Cleanups and ChangeLog updates


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@232 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-12-12 16:06:47 +00:00
Vladislav Bolkhovitin
513b742628 Fixed possible crash if tgt module rmmod'ed under load
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@231 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-12-11 10:51:08 +00:00
Vladislav Bolkhovitin
d33edb6ba3 Simple bugfix for concurrent work of several targets, which eventually turned out in a massive cleanup and fixes.
Particularly:
 - Added ability for target drivers to set result of command's status delvery to initiator (see scst_set_delivery_status())
 - Added ability for user space devices set some mode page parameters to make SCST core behave correspondingly
 - TM improvements
 - Few possible crashes fixed
 - Logging improvements
 - Performance improvements
 - Docs updates


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@227 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-12-07 17:00:42 +00:00
Vladislav Bolkhovitin
71592f2cac Cleanups, debug imporvements and minor fixes
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@214 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-11-01 17:07:07 +00:00
Vladislav Bolkhovitin
ec6f11c514 Update to work on 2.6.23+ kernels + some other related fixes and updates
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@209 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-10-23 15:35:20 +00:00
Vladislav Bolkhovitin
89ca743fc6 Fixes a race, when an event comes on the driver unload, so DPC thread will try to use already half destroyed data.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@158 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-10 08:40:54 +00:00
Vladislav Bolkhovitin
48effdd529 - Implemented temporary workaround to work on 2.6.22+ kernels
- qla2x00-target/ChangeLog updated
 - Typo in scst_page.html fixed


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@156 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-07 17:12:21 +00:00
Vladislav Bolkhovitin
5814b4ba13 Partial update for 2.6.22
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@152 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-23 11:51:05 +00:00
Vladislav Bolkhovitin
0f286f40f5 Update for 64-bit tags
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@151 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-18 08:50:50 +00:00
Vladislav Bolkhovitin
c7748b916b - Fixed race with wake_up()
- Some cleanups


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@129 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-06-15 09:02:57 +00:00
Vladislav Bolkhovitin
be5205f51a Support for per-target default security groups added
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@119 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-05-31 17:02:41 +00:00
Vladislav Bolkhovitin
0733627b2c Fixed depmod to work for the necessary kernel, not the current one
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@106 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-04-03 14:49:33 +00:00
Vladislav Bolkhovitin
3b449d4705 Copyrights updated, "-g" added in DEBUG mode
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@104 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-04-03 14:42:47 +00:00
Vladislav Bolkhovitin
d88d3897b5 Minor fixes
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@103 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-04-02 10:55:55 +00:00
Vladislav Bolkhovitin
76b6ad80ff Oops, the previous commit was wrong. Fix it.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@89 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-02-19 12:55:54 +00:00
Vladislav Bolkhovitin
48bf0d2bf7 Minor fix for ABORTed on SIRQ commands
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@88 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-02-19 10:46:53 +00:00
Vladislav Bolkhovitin
0c0c6850ac Update to work on 2.6.20 + minor fix
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@87 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-02-16 11:11:18 +00:00
Vladislav Bolkhovitin
a0867f49fc In Qlogic initiator driver (version 8.01.04) in qla2x00_rff_id() BIT_1 of the RFF_ID
Feature bits is set, indicating to the name server that this is an
initiator. The attached patch sets BIT_0 instead if target mode is
enabled, indicating target mode support to the name server. (See the
INCITS FC-GS-4 document). This fixed many of my problems relating to
working with a switch fabric, including the discovery and addition of
the initiator ports in the fcports list.

From Brad Johnson <bjohnson@proficientsolutionsinc.com>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@84 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-01-24 13:17:20 +00:00
Vladislav Bolkhovitin
9bb1f8eefe Atomic memory barriers cleanup. Inspired by Ming Zhang.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@74 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-01-09 14:52:16 +00:00
Vladislav Bolkhovitin
59fb188c83 ChangeLog updated
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@65 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-12-15 16:49:15 +00:00
Vladislav Bolkhovitin
ba4f29ee54 Update to allow SCST built inside Linux kernel. Done together with Erik Habbinga.
--This line, and below, will be ignored--

_M   trunk/mpt
_M   trunk/mpt/in-tree
M    trunk/mpt/in-tree/Makefile.diff
M    trunk/mpt/mpt_scst.c
M    trunk/mpt/Makefile
M    trunk/qla2x00t/qla2x00-target/qla2x00t.c
M    trunk/scst/kernel/in-tree/Makefile.scsi_tgt
D    trunk/scst/include/scst_debug.c
M    trunk/scst/include/scst_debug.h
M    trunk/scst/src/scst_proc.c
M    trunk/scst/src/scst_priv.h
A    trunk/scst/src/scst_debug.c
M    trunk/scst/src/scst_targ.c
M    trunk/scst/src/scst_mem.c
M    trunk/scst/src/Makefile
M    trunk/scst/src/scst.c
M    trunk/scst/src/dev_handlers/scst_cdrom.c
M    trunk/scst/src/dev_handlers/scst_modisk.c
M    trunk/scst/src/dev_handlers/scst_changer.c
M    trunk/scst/src/dev_handlers/scst_fileio.c
M    trunk/scst/src/dev_handlers/scst_tape.c
M    trunk/scst/src/dev_handlers/scst_disk.c
M    trunk/scst/src/dev_handlers/scst_processor.c
M    trunk/scst/src/dev_handlers/scst_raid.c
M    trunk/scst/src/dev_handlers/Makefile
M    trunk/scst/src/dev_handlers/scst_dev_handler.h
M    trunk/scst/README


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@62 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-12-15 15:59:21 +00:00
Vladislav Bolkhovitin
0e04ac351a Update to work on 2.6.19. Mostly done by Ming Zhang.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@60 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-12-14 18:10:39 +00:00
Vladislav Bolkhovitin
f1e2c33ac7 /proc implementation moved to seq_*() library. Mostly done by Ming Zhang.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@57 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-12-14 17:08:46 +00:00
Vladislav Bolkhovitin
f375c2e756 Various changes and fixes
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@56 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-12-14 16:22:29 +00:00
Vladislav Bolkhovitin
426e0474e0 - Switch kmem_cache_alloc() -> kmem_cache_zalloc()
- Minor changes

M    trunk/qla2x00t/qla2x00-target/qla2x00t.h
M    trunk/qla2x00t/qla2x00-target/qla2x00t.c
M    trunk/scst/src/scst_lib.c
M    trunk/Makefile


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@54 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-12-14 15:42:11 +00:00
Vladislav Bolkhovitin
549b81f7cc Minor cleanup
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@47 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-12-13 11:26:23 +00:00
Vladislav Bolkhovitin
22041237a9 Updated version to 0.9.6 and Makefiles to bring the debug options back
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@39 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-12-04 10:53:25 +00:00
Vladislav Bolkhovitin
4784c2ec6e Release 0.9.5 of both SCST and Qlogic target driver
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@38 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-12-01 19:01:35 +00:00
Vladislav Bolkhovitin
f668acb6d5 A bunch of small fixes and cleanups before 0.9.5
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@37 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-11-30 16:44:59 +00:00
Vladislav Bolkhovitin
e721a3e0bd Documentaion updates
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@31 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-11-10 12:39:12 +00:00
Vladislav Bolkhovitin
bfb9a2ea3c DEBUG_WORK_IN_THREAD undefined
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@29 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-11-07 10:53:35 +00:00
Vladislav Bolkhovitin
0efcd3d65f - Fixed double locking regression, introduced rev20
- Small docs update


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@27 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2006-11-03 17:41:16 +00:00