mirror/scst/.git
14 years agoSeries of patches from Bart Van Assche <bart.vanassche@gmail.com>:
vlnb [Tue, 13 May 2008 09:27:16 +0000 (09:27 +0000)]
Series of patches from Bart Van Assche <bart.vanassche@gmail.com>:

 - Added Makefile.scsi.Linux-2.6.24.patch and Kconfig.scsi.Linux-2.6.24.patch
 - Updated Makefile.scsi_tgt to reflect move of the SCST device handlers from scst/src/ to scst/src/dev_handlers/
 - Added Makefile.dev_handlers
 - SCST include path fixed in srpt/ Makefile.in_kernel
 - Added script for converting the SCST source tree to a kernel patch. More comment on it:

The SCST source tree as it exists in the current Subversion repository will
have to be maintained for some time. And if SCST is submitted for inclusion
in the mainline kernel, this tree will have to be converted to a kernel
patch, reviewer comments will have to be processed, and the patch will have
to be resubmitted. So it's convenient to have a script available that
converts the Subversion source tree into a kernel patch. The patch below does
just that: convert the scst and srpt directories into a kernel patch
(iscsi-scst support will be added later on). I have tested the script
contained in the patch below as follows:

rm -rf linux-2.6.24
rm -rf /lib/modules/2.6.24-scst
tar xjf ~vanasscb/software/downloads/linux-2.6.24.tar.bz2
cd linux-2.6.24
cp ../.config .
(cd ~vanasscb/software/scst
&& ~vanasscb/software/scst/scripts/generate-kernel-patch \
2.6.24) | patch -p1
make -j5 bzImage modules && make modules_install install
cp -r /lib/firmware/$(uname -r) /lib/firmware/2.6.24-scst
update-initramfs -k 2.6.24-scst -c
reboot

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@366 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago - Fixed GFP_KERNEL misuse. Reported independently by mbe1@charter.net and Erez Zilbe...
vlnb [Mon, 12 May 2008 15:58:34 +0000 (15:58 +0000)]
 - Fixed GFP_KERNEL misuse. Reported independently by mbe1@charter.net and Erez Zilber <erezz@Voltaire.COM>
 - Fixed not sufficient in_irq() to determine atomic allocation context. Reported by mbe1@charter.net

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@365 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago - Rejecting command reimplemented in a more simple, straightforward and readable...
vlnb [Wed, 7 May 2008 18:44:15 +0000 (18:44 +0000)]
 - 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: https://scst.svn.sourceforge.net/svnroot/scst/trunk@364 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoDouble "repository" word fixed
vlnb [Sun, 4 May 2008 10:31:05 +0000 (10:31 +0000)]
Double "repository" word fixed

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@363 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoWeb updates
vlnb [Fri, 2 May 2008 11:40:26 +0000 (11:40 +0000)]
Web updates

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@362 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoRemove request sense warning and fix typo.
swgruszka [Thu, 1 May 2008 06:49:33 +0000 (06:49 +0000)]
Remove request sense warning and fix typo.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@361 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoNullify f/w pointer if load fails.
swgruszka [Thu, 1 May 2008 06:46:23 +0000 (06:46 +0000)]
Nullify f/w pointer if load fails.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@360 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoBugfix - disallow to free initiator data when disabling target mode,
swgruszka [Wed, 30 Apr 2008 14:19:38 +0000 (14:19 +0000)]
Bugfix - disallow to free initiator data when disabling target mode,
as long as all reference to it is dropped.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@359 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoAdd missing definition of strncasecmp() for older kernels.
swgruszka [Thu, 24 Apr 2008 13:12:08 +0000 (13:12 +0000)]
Add missing definition of strncasecmp() for older kernels.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@358 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago- Update README.scst.
swgruszka [Thu, 24 Apr 2008 12:50:51 +0000 (12:50 +0000)]
- Update README.scst.
- Add comment about overall isp_scst.c design.
- Put some compile time selectable values in one place.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@357 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoBugfix: put initiator reference counter when finish task management.
swgruszka [Thu, 24 Apr 2008 09:31:02 +0000 (09:31 +0000)]
Bugfix: put initiator reference counter when finish task management.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@356 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Thu, 24 Apr 2008 06:34:08 +0000 (06:34 +0000)]
Synchronize with Feral CVS repository:
- use kthread
- MBOX_ACQUIRE macro redefined

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@355 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoRemove unnecessary variables.
swgruszka [Wed, 23 Apr 2008 11:17:33 +0000 (11:17 +0000)]
Remove unnecessary variables.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@354 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago- Compile time conditinal debug.
swgruszka [Wed, 23 Apr 2008 09:23:43 +0000 (09:23 +0000)]
- Compile time conditinal debug.
- Initialize variable.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@353 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago- Avoid tmd's leakage when disable target mode when pending I/O (some work still
swgruszka [Wed, 23 Apr 2008 09:15:14 +0000 (09:15 +0000)]
- Avoid tmd's leakage when disable target mode when pending I/O (some work still
  needed in low level driver).
- Properly free channels on error case.
- Start HBA unregistation after proc file is removed.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@352 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoFixed wrong state assigmnent in scst_xmit_response()
vlnb [Tue, 22 Apr 2008 15:04:09 +0000 (15:04 +0000)]
Fixed wrong state assigmnent in scst_xmit_response()

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@351 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoThe bunch of pending changes. Sorry, it's quite big.
vlnb [Tue, 22 Apr 2008 10:30:53 +0000 (10:30 +0000)]
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: https://scst.svn.sourceforge.net/svnroot/scst/trunk@350 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoType fix.
swgruszka [Mon, 21 Apr 2008 17:37:43 +0000 (17:37 +0000)]
Type fix.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@349 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoRemove not necessary headers and definitions.
swgruszka [Mon, 21 Apr 2008 17:34:42 +0000 (17:34 +0000)]
Remove not necessary headers and definitions.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@348 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoFixes compilation brokenness on kernels below 2.6.24
vlnb [Mon, 21 Apr 2008 16:34:55 +0000 (16:34 +0000)]
Fixes compilation brokenness on kernels below 2.6.24

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@347 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoAdded possibility to create virtual removable devices
vlnb [Mon, 21 Apr 2008 15:04:10 +0000 (15:04 +0000)]
Added possibility to create virtual removable devices

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@346 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoLimit scatter/gather table size (need to be reviewed).
swgruszka [Mon, 21 Apr 2008 10:45:22 +0000 (10:45 +0000)]
Limit scatter/gather table size (need to be reviewed).

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@345 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago- bug fix: pass error to scst_rx_data
swgruszka [Mon, 21 Apr 2008 10:37:35 +0000 (10:37 +0000)]
- bug fix: pass error to scst_rx_data
- set transfer length for SPI transport
- add unlikely()/likely()
- print error when don't know what to do with tmd

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@344 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoRemove obsolete kernel_thread and use kthread API.
swgruszka [Mon, 21 Apr 2008 10:31:16 +0000 (10:31 +0000)]
Remove obsolete kernel_thread and use kthread API.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@343 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoChange proc interface to SCST like. Allow to enable/disable each lun for SPI device.
swgruszka [Mon, 21 Apr 2008 10:27:59 +0000 (10:27 +0000)]
Change proc interface to SCST like. Allow to enable/disable each lun for SPI device.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@342 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoLogout implementation, reference counting to protect initiator data.
swgruszka [Mon, 21 Apr 2008 08:36:14 +0000 (08:36 +0000)]
Logout implementation, reference counting to protect initiator data.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@341 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoForgotten in r338 patches
vlnb [Mon, 21 Apr 2008 07:01:13 +0000 (07:01 +0000)]
Forgotten in r338 patches

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@340 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoMore svn:ignore fixes
vlnb [Fri, 18 Apr 2008 16:42:10 +0000 (16:42 +0000)]
More svn:ignore fixes

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@339 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoUpdate for 2.6.25
vlnb [Fri, 18 Apr 2008 16:38:39 +0000 (16:38 +0000)]
Update for 2.6.25

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@338 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoscsi_tgt.h renamed to scst.h
vlnb [Thu, 17 Apr 2008 17:35:37 +0000 (17:35 +0000)]
scsi_tgt.h renamed to scst.h

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@337 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago - Fixes scst_user brokennesses in various modes, especially in iSCSI-SCST
vlnb [Thu, 17 Apr 2008 15:25:39 +0000 (15:25 +0000)]
 - Fixes scst_user brokennesses in various modes, especially in iSCSI-SCST
 - Minor debug logging fixes
 - Minor cleanups

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@336 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoRemove unintended change from r334, added there only for testing TM.
swgruszka [Fri, 11 Apr 2008 08:18:02 +0000 (08:18 +0000)]
Remove unintended change from r334, added there only for testing TM.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@335 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoFixes for task management:
swgruszka [Fri, 11 Apr 2008 07:34:07 +0000 (07:34 +0000)]
Fixes for task management:
- abort only tasks from initiator, which send TM function
- check LUN for LUN_RESET function
- schedule tasklet to free aborted command from tmd's queue
- call scst_tgt_cmd_done() to free aborted command from SCST

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@334 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoCritical fix:
vlnb [Thu, 10 Apr 2008 10:57:30 +0000 (10:57 +0000)]
Critical fix:

 - Fixes hang on HEAD OF QUEUE commands under high load

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@333 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoFix bug when checking tmd flags against bidirectional transfer.
swgruszka [Tue, 8 Apr 2008 09:11:10 +0000 (09:11 +0000)]
Fix bug when checking tmd flags against bidirectional transfer.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@332 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoPass expected transfer length and direction to SCST for fibre channel devices.
swgruszka [Tue, 8 Apr 2008 06:47:30 +0000 (06:47 +0000)]
Pass expected transfer length and direction to SCST for fibre channel devices.
Fix bug when using SCST_DATA_UNKNOWN insted of SCST_DATA_NONE.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@331 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoWe need only 2 debug level, one for error situations, second for normal
swgruszka [Fri, 4 Apr 2008 12:18:00 +0000 (12:18 +0000)]
We need only 2 debug level, one for error situations, second for normal
data flow. Print only in debug mode about sense buffer cutting.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@330 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoDocument changes about how to enable/disable target.
swgruszka [Fri, 4 Apr 2008 12:02:20 +0000 (12:02 +0000)]
Document changes about how to enable/disable target.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@329 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoFix bug when enabling target on nonzero channel.
swgruszka [Fri, 4 Apr 2008 11:57:40 +0000 (11:57 +0000)]
Fix bug when enabling target on nonzero channel.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@328 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoFix bugs introduced in r325 and r324.
swgruszka [Fri, 4 Apr 2008 11:53:01 +0000 (11:53 +0000)]
Fix bugs introduced in r325 and r324.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@327 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoRemove trailing whitespaces.
swgruszka [Fri, 4 Apr 2008 11:49:19 +0000 (11:49 +0000)]
Remove trailing whitespaces.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@326 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoImplement multichannel support in the way each channel is seen by SCST
swgruszka [Fri, 4 Apr 2008 11:48:28 +0000 (11:48 +0000)]
Implement multichannel support in the way each channel is seen by SCST
as separate HBA.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@325 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoFix HBA registration / unregistration:
swgruszka [Fri, 4 Apr 2008 11:26:53 +0000 (11:26 +0000)]
Fix HBA registration / unregistration:
- not acknowledge when fail to register
- unregistration when no one can call functions from HBA

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@324 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoDo not dump stack when data length is bigger than low level driver can handle.
swgruszka [Fri, 4 Apr 2008 11:17:49 +0000 (11:17 +0000)]
Do not dump stack when data length is bigger than low level driver can handle.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@323 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoPrint error when we can not send all sense data (which is very unlikely).
swgruszka [Tue, 1 Apr 2008 13:51:07 +0000 (13:51 +0000)]
Print error when we can not send all sense data (which is very unlikely).

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@322 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoAdd missed things from Feral CVS repository.
swgruszka [Tue, 1 Apr 2008 12:04:34 +0000 (12:04 +0000)]
Add missed things from Feral CVS repository.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@321 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoStop setting command expected values for SCST,
swgruszka [Tue, 1 Apr 2008 07:14:26 +0000 (07:14 +0000)]
Stop setting command expected values for SCST,
as we can not assure values are right.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@320 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago- Update copyrights.
swgruszka [Tue, 1 Apr 2008 06:47:11 +0000 (06:47 +0000)]
- Update copyrights.
- Substitute scsi_tdebug to debug.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@319 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoRemove obsolete linux stuff.
swgruszka [Tue, 1 Apr 2008 06:38:55 +0000 (06:38 +0000)]
Remove obsolete linux stuff.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@318 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 13:03:31 +0000 (13:03 +0000)]
Synchronize with Feral CVS repository:
- define an IS_1020 macro
- more dma mask cleanups

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@317 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 13:01:38 +0000 (13:01 +0000)]
Synchronize with Feral CVS repository:
- Make pre-1240 cards be able to do 64 bit dma as well, making sure that
  they don't cross a 16MB boundary.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@316 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 13:00:26 +0000 (13:00 +0000)]
Synchronize with Feral CVS repository:
- remove the poorly thought out isp_in_intr goop

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@315 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 12:58:58 +0000 (12:58 +0000)]
Synchronize with Feral CVS repository:
- Make FC_SCRATCH_ACQUIRE a macro that returns true/false
- Fixes from Stanislaw for 2.6.23 & 2.6.24. Many thanks.
- A quick hack to isp_kthread to use waitqueues instead of semaphores
  to have less blockage. More rewrites later

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@314 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 12:47:37 +0000 (12:47 +0000)]
Synchronize with Feral CVS repository:
- Do some whitespace changes. Solaris related compilation fix. Remove
  XS_SET_STATE_STAT macro.
- Remove XS_SET_STATE_STATE macro.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@313 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 12:44:16 +0000 (12:44 +0000)]
Synchronize with Feral CVS repository:
- update 24xx firmware to 4.03.00

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@312 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 12:42:36 +0000 (12:42 +0000)]
Synchronize with Feral CVS repository:
- whitespace and other minor fixes
- Remove F/W crash dump support. We only worked it out for 2200 and 2300
  cards. It's also true that QLogic would not support us even if we *did*
  give them a crash dump, so the usage here is not really worth it.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@311 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 12:38:10 +0000 (12:38 +0000)]
Synchronize with Feral CVS repository:
- simplify: remove f/w crashdump stuff

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@310 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 12:35:40 +0000 (12:35 +0000)]
Synchronize with Feral CVS repository:
- Use a slightly cleaner macro.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@309 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 12:33:36 +0000 (12:33 +0000)]
Synchronize with Feral CVS repository:
- whitespace

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@308 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 12:31:35 +0000 (12:31 +0000)]
Synchronize with Feral CVS repository:
- Allow different platforms/environments to specificy the size of the
  high and low private storage for tmd_cmd_t structures
- Add a scan scsi thread event so that we can attach devices as we
  discover them
- Fix some tabs
- Make things work correctly when CONFIG_FW_LOADER is *not* defined
- Get rid of sema and use wait_interruptible

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@307 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 12:27:17 +0000 (12:27 +0000)]
Synchronize with Feral CVS repository:
- remove redundant pdb

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@306 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Fri, 28 Mar 2008 12:23:27 +0000 (12:23 +0000)]
Synchronize with Feral CVS repository:
- Copyright Update
- Fix some fabric login bugs

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@305 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoPatch from Vu Pham <vuhuong@mellanox.com>: SRP target driver
vlnb [Mon, 17 Mar 2008 11:29:50 +0000 (11:29 +0000)]
Patch from Vu Pham <vuhuong@mellanox.com>: SRP target driver

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@304 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoFixes possible *dev_cmd_count leak
vlnb [Fri, 14 Mar 2008 10:42:03 +0000 (10:42 +0000)]
Fixes possible *dev_cmd_count leak

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@303 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoBugfixes:
swgruszka [Thu, 13 Mar 2008 10:58:44 +0000 (10:58 +0000)]
Bugfixes:
- pass commands to SCST after assigning initiator to them
- enable lun's on proper channel

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@302 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago - Fixed race on TM leading to crashes
vlnb [Tue, 11 Mar 2008 19:09:30 +0000 (19:09 +0000)]
 - Fixed race on TM leading to crashes
 - Connection close improved to be less agressive and honor TCP TIME_WATE state
 - Docs updates

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@301 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoProtect initiators list using tmds_lock. Avoid possibility to
swgruszka [Tue, 11 Mar 2008 14:27:13 +0000 (14:27 +0000)]
Protect initiators list using tmds_lock. Avoid possibility to
allocate initiator twice.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@300 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago - Fixed READ POSITION command handling
vlnb [Mon, 10 Mar 2008 10:59:56 +0000 (10:59 +0000)]
 - Fixed READ POSITION command handling
 - Fixed race in TM handling

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@299 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago - Fixed race on TM processing leading to BUG()
vlnb [Wed, 5 Mar 2008 18:22:01 +0000 (18:22 +0000)]
 - Fixed race on TM processing leading to BUG()
 - Fixed dev_cdrom and dev_modisk load failures if there are no media in the drives
 - Other minor fixes and cleanups

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@298 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago - TM fixes
vlnb [Fri, 29 Feb 2008 18:25:56 +0000 (18:25 +0000)]
 - TM fixes
 - Optimizations and send timeout introduced in r295 temporary disabled
 - Big connection shutdown times improvements. Great thanks to Alexey Kuznetsov for suggestions!
 - RESERVE/RELEASE serialization now made with TST field 0 (i.e. single task set)
 - Other minor fixes and improvements

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@297 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago - Fixes for previous commit
vlnb [Tue, 26 Feb 2008 18:22:45 +0000 (18:22 +0000)]
 - Fixes for previous commit
 - Minor logging improvements

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@296 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoA bunch of pending changes:
vlnb [Mon, 25 Feb 2008 18:48:02 +0000 (18:48 +0000)]
A bunch of pending changes:
 - Response data send timeout implemented: now if initiator doesn't accept data for too long (7 sec), target closes connection
 - Connction closing improved: now session cleared without need to wait for all outstanding commands data fully transmitted
 - On session unregistration now all outstanding commands are implicitely aborted
 - TM processing in SCST core made independant from other TM commands (before they were serialized)
 - Few bug fixes
 - Other minor improvements and cleanups
 - Docs update

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@295 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoPass proper expected length for INQUIRY command
swgruszka [Tue, 19 Feb 2008 12:02:14 +0000 (12:02 +0000)]
Pass proper expected length for INQUIRY command

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@294 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoUpdate README
swgruszka [Tue, 19 Feb 2008 10:42:43 +0000 (10:42 +0000)]
Update README

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@293 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoCompilation for kernel 2.6.24
swgruszka [Tue, 19 Feb 2008 10:12:12 +0000 (10:12 +0000)]
Compilation for kernel 2.6.24

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@292 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoAllow driver to compile
swgruszka [Tue, 19 Feb 2008 09:38:52 +0000 (09:38 +0000)]
Allow driver to compile

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@291 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoAvoid race conditions when task is aborted. Commands can be
swgruszka [Tue, 19 Feb 2008 09:37:46 +0000 (09:37 +0000)]
Avoid race conditions when task is aborted. Commands can be
in two places, our internal queue or passed to SCST.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@290 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoInterface to enable/disable target per channel
swgruszka [Tue, 19 Feb 2008 09:19:38 +0000 (09:19 +0000)]
Interface to enable/disable target per channel

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@289 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSome cleanups and performance works
vlnb [Mon, 18 Feb 2008 18:44:29 +0000 (18:44 +0000)]
Some cleanups and performance works

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@288 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years ago - Fixed minor problem in iSCSI-SCST
vlnb [Wed, 13 Feb 2008 17:15:47 +0000 (17:15 +0000)]
 - 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: https://scst.svn.sourceforge.net/svnroot/scst/trunk@287 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoPrevent to compile broken driver
swgruszka [Wed, 13 Feb 2008 16:28:35 +0000 (16:28 +0000)]
Prevent to compile broken driver

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@286 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoLet's isp_scst.c compile, multichannel support will be added later.
swgruszka [Tue, 12 Feb 2008 11:52:00 +0000 (11:52 +0000)]
Let's isp_scst.c compile, multichannel support will be added later.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@285 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 11:10:16 +0000 (11:10 +0000)]
Synchronize with Feral CVS repository:

Clean up MSI-X implementation and make sure we snag at least *3* vectors
so that the ATIO-Q vector is snagged.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@284 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 11:08:06 +0000 (11:08 +0000)]
Synchronize with Feral CVS repository:
- Add a missing MSI disable and provide for pre-2.6.8 kernels.
- Fix bugs- forgot to actually compile (shame on me).

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@283 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 11:05:04 +0000 (11:05 +0000)]
Synchronize with Feral CVS repository:

I don't know why I thought this would work- forcing a re-login to the fabric
controller just barfs.

Make down count reflect jiffies elapsed rather than depend on calls to
ISP_FC_RESCAN.

Shorten deadloop time default to 10 seconds.

At least enable MSI (if not MSI-X) for 24XX cards.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@282 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 11:02:21 +0000 (11:02 +0000)]
Synchronize with Feral CVS repository:

We can (somehow) get commands on an atio7 for which we've never had a PLOGI/PRLI.
How this happens, I don't know. Anyway, we stick a tentative entry in the PDB
and call the task thread to find the rest of the info. This includes, badly and
stupidly, searching for the N-port handle by asking the chip. Sometimes it's not
there. In that case, we terminate the command.

In restarting commands that arrive while we start up, have the watchdog
time call isp_task_thread- this gives us a bit of hysteresis.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@281 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 10:59:43 +0000 (10:59 +0000)]
Synchronize with Feral CVS repository:
- Need to include linux/vmalloc.h. Showed up on PPC port.
- Fix complaints about using an uninitialized pointer.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@280 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 10:55:04 +0000 (10:55 +0000)]
Synchronize with Feral CVS repository:

Make 2100/2200 and 2300 cards also maintain a target mode port database.

For the 24XX, we have to find the IID, N-port handle and channel when we
get an ATIO7. For the other cards, we already have the channel and N-port
handle and Port IID of the initiator, but have to find the S_ID.

Do the isp_find_pdb_by_{sid,loopid} functions search backwards to minimize
search time.

Don't load fw images more than once per device type!

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@279 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 10:50:57 +0000 (10:50 +0000)]
Synchronize with Feral CVS repository:
- Allow ISP_FC_GETDINFO callers to get target mode entries.
- Remove stray '`' from define and PPC is now working again.
- Fix a typo which had us loading 2322 f/w into a 2300. Oops.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@278 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 10:48:35 +0000 (10:48 +0000)]
Synchronize with Feral CVS repository:

Put RISC_CODE define in the firmware files.

Use the Linux 2.6 firmware loader support if available. This saves
close to 700K of useless code getting loaded otherwise.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@277 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 10:46:32 +0000 (10:46 +0000)]
Synchronize with Feral CVS repository:

Set PCI-X and PCI-E readahead to what QLogic manuals recommend.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@276 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 10:44:49 +0000 (10:44 +0000)]
Synchronize with Feral CVS repository:

If we're in role=NONE, then make sure that isp_init code sets state to
INITSTATE anyway.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@275 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 10:41:45 +0000 (10:41 +0000)]
Synchronize with Feral CVS repository:

Note that asking for "prefer N-port and then Loop" with the 24XX seems to
cause the f/w to crash. So, don't do that.

Firmware crashes are now considered fatal and cause the HBA to be marked dead.

Now that we've avoided the f/w crash in isp_init_24xx, we can process
toplogy options.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@274 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 10:37:37 +0000 (10:37 +0000)]
Synchronize with Feral CVS repository:

Add some code to do special IOCBs (that can just be ignored if they show
up as status IOCBs)- this is for some performance testing infrastructure.

Add some performance testing stuff.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@273 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 10:18:14 +0000 (10:18 +0000)]
Synchronize with Feral CVS repository:

Don't use both WWNs in the ICB block unless they're not NAA==2. This makes us
more consistent with QLogic driver setups and thus more likely to fit into the
same zoning setups.

If we're getting a PDB and it's for the Fabric Controller, force a login
to it (just in case it logged out underneath us). Return 'not logged in'
for the 24XX in case the 24XX specific login state isn't in the range of
PLOGI_DONE to LOGGED IN.

Don't do local loop scans if we have more than one channel (NP-IV) and we're
in a FL-port topology- we just end up poking ourselves usually.

Make sure we set loopstate in a couple of places we missed so that we
try and get it again.

Add in the RESET DEVICE and ABORT COMMAND functions for the 24XX cards
(finally).

Fix a longstanding bug where were passing the wrong (off by one) output
pointer to isp_handle_other_response.

Change isp_async...ISPASYNC_CHANGE_NOTIFY to have N-port handle, nlstate and
reason included as we get these for free with PDB Changed stuff for the
24XX card. Eventually we should be able to edit single local PDB entry
states instead of doing a full eval.

Put in the put of a 24XX Task Management Function IOCB. There is no get because
the firmware doesn't return it when done- instead a status iocb is done.

There is no "FAST POST" flag for the 24XX- this is a NOACK flag which means
that there is no interrupt if all goes well.

Fix spelling mistakes.

In isp_add_wwn_entry, ahem, don't allocate PDB entries out of the 'rexerved
for chip' area.

Put more comments in as to why we're terminating an exchange (and make them
all ISP_LOGTINFO).

Add, finally, the correct handling for a QIN_NOTIFY_ACK for a task management
function- this means we construct a ct7_entry_t to get the firmware to send
an FC Response IU for it. So, finally LUN RESETS and TARGET RESETS and
ABORT TASK will actually work and, more importantly, be seen to be working
by initiators.

Fix WWN defaults/active generation and retrieval. It was broken.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@272 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 10:02:35 +0000 (10:02 +0000)]
Synchronize with Feral CVS repository:

Fix a comment typo. Force on HARD ADDRESS for the 24XX.

Fix retry on error case- most of the time we *don't* want to retry a command
sent back with TDFL_ERROR set- instead we want to set PARITY ERROR as a
CA condition and just FIN the cmd.

Comment for r270:

1. A major botch for local loop handling - we were never getting past loopid zero
in isp_scan_loop. Bad doggie!

2. *Do* scan our loopid- this seems to allow us to find entities which are there
and have a N-port handle that is identical to ours. I have no idea how the QLogic
sorts this out. At least, this is how it seems to work for the 24XX in local loop
mode.

Don't deadlock with the HBA lock when performing a rescan ioctl. Also,
mark the loop state as if we'd just received a PDB event- that way

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@271 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 09:57:26 +0000 (09:57 +0000)]
Synchronize with Feral CVS repository:

Fix a comment typo. Force on HARD ADDRESS for the 24XX.

Fix retry on error case- most of the time we *don't* want to retry a command
sent back with TDFL_ERROR set- instead we want to set PARITY ERROR as a
CA condition and just FIN the cmd.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@270 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 09:55:49 +0000 (09:55 +0000)]
Synchronize with Feral CVS repository:
- fix comment

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@269 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 09:53:27 +0000 (09:53 +0000)]
Synchronize with Feral CVS repository:
- Add ASYNC_RCV_ERR
- Allow LIP to have a (possible) channel.
- Update for some channel stuff.
- whitespace

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@268 d57e44dd-8a1f-0410-8b47-8ef2f437770f

14 years agoSynchronize with Feral CVS repository:
swgruszka [Tue, 12 Feb 2008 09:51:21 +0000 (09:51 +0000)]
Synchronize with Feral CVS repository:
- Clean up 24XX abort handling.
- Remove the response queue busy stuff and just have an in_intr flag to note
  interrupt recursion.
- Add a lower level error flag.
- Clarifiy a comment; make a definition for the 'no task' RX_ID.
- Change severity of f/w timeout message
- Do the wait for mbox0 clearing for 2312 cards > revision 1.

git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@267 d57e44dd-8a1f-0410-8b47-8ef2f437770f