Vladislav Bolkhovitin 29b38cfd96 Blocked revisions 7053,7059-7061,7065-7083,7086-7090 via svnmerge
........
  r7053 | vlnb | 2016-12-15 18:46:49 -0800 (Thu, 15 Dec 2016) | 3 lines
  
  fileio_tgt: avoid warnings about casting between pointers and integers of different size
........
  r7059 | vlnb | 2016-12-15 19:03:59 -0800 (Thu, 15 Dec 2016) | 3 lines
  
  Update SVN_TAGS for 3.2.0
........
  r7060 | vlnb | 2016-12-15 20:25:04 -0800 (Thu, 15 Dec 2016) | 3 lines
  
  Web updates
........
  r7061 | bvassche | 2016-12-17 04:33:45 -0800 (Sat, 17 Dec 2016) | 6 lines
  
  ib_srpt: Revert r7050
  
  r7050 did not change any behavior so revert it. Note for myself: in the
  ib_srpt driver the port number is set by the ib_modify_qp() call in
  srpt_init_ch_qp().
........
  r7065 | vlnb | 2016-12-19 21:47:15 -0800 (Mon, 19 Dec 2016) | 20 lines
  
  scst: avoid false lockdep complaints about recursive locking
  
  In some cases SCST needs to take multiple locks recursivly, e.g. to lock
  all tgt_devs in a session. For this case SCST takes those locks in their
  current sort order, e.g. by LUN for tgt_devs, then releases in the
  opposite order. Unfortunately, lockdep complains on such actions as
  recursive locking, then disables itself. The disabling itself action is
  the most unpleasant one leading to lockdep being useless after this point.
  
  Unfortunately, nested locking annotations can't help, because after
  free, then alloc again, or after LUN change (in case of tgt_devs) order
  of locks can change.
  
  So, this patch implements a way to annotate some lock and unlock actions
  as "no lockdep", so lockdep will not track them. It contains related
  kernel patches for some kernels.
  
  This is a debug aid only useful only with lockdep enabled kernels.
........
  r7066 | vlnb | 2016-12-19 21:49:07 -0800 (Mon, 19 Dec 2016) | 3 lines
  
  Put_page_callback and scst_exec_req_fifo patches for RHEL5/6
........
  r7067 | vlnb | 2016-12-19 21:53:48 -0800 (Mon, 19 Dec 2016) | 8 lines
  
  iscsi-scst: add target_ip attribute
  
  It adds target_ip attribute containing target IP address in each
  /sys/kernel/scst_tgt/targets/iscsi/TARGET/sessions/INITIATOR/INITIATOR_IP subdirectory.
  
  It's useful to simplify monitoring management utilities
........
  r7068 | vlnb | 2016-12-19 21:55:19 -0800 (Mon, 19 Dec 2016) | 3 lines
  
  Minor misc changes
........
  r7069 | vlnb | 2016-12-19 22:00:43 -0800 (Mon, 19 Dec 2016) | 9 lines
  
  iscsi-scst: add per_sess_dedicated_tgt_threads attribute in ini groups
  
  If this attrubute is set, each iSCSI session for this initiator has
  dedicated, i.e. not shared with other sessions, pool of the iscsi{wr,rd}
  kernel threads.
  
  Useful to control per-session CPU affinity to improve performance.
........
  r7070 | vlnb | 2016-12-19 22:01:34 -0800 (Mon, 19 Dec 2016) | 3 lines
  
  iscsi-scst: document thread_pid attribute
........
  r7071 | vlnb | 2016-12-19 22:07:55 -0800 (Mon, 19 Dec 2016) | 7 lines
  
  scst: improve thin provisioning support
  
  This patch adds gen_tp_soft_threshold_reached_UA attribute for thin
  provisioned devices that allows to generate THIN PROVISIONING SOFT
  THRESHOLD REACHED Unit Attention.
........
  r7072 | vlnb | 2016-12-19 22:10:56 -0800 (Mon, 19 Dec 2016) | 6 lines
  
  scst: add ACA support
  
  ACA (Auto Contingent Allegiance) is a way to handle CHECK CONDITION
  status. It significantly improves performance of AIX systems.
........
  r7073 | vlnb | 2016-12-19 22:14:55 -0800 (Mon, 19 Dec 2016) | 7 lines
  
  scst: add max_tgt_dev_commands sysfs attribute
  
  This per-device attribute allows to control maximum number of SCSI
  commands any session to this device can have in flight. It makes
  currently hardcoded constant be run time configurable.
........
  r7074 | vlnb | 2016-12-19 22:17:11 -0800 (Mon, 19 Dec 2016) | 3 lines
  
  scst: improve latency statistics
........
  r7075 | vlnb | 2016-12-19 22:21:13 -0800 (Mon, 19 Dec 2016) | 6 lines
  
  scst: performance improvements
  
  This patch trying to allocate memory in per-NUMA and per-CPU manner to
  (significantly) improve performance for high IOPS cases.
........
  r7076 | vlnb | 2016-12-19 22:27:38 -0800 (Mon, 19 Dec 2016) | 8 lines
  
  scst: add thread_index sysfs attribute
  
  This attribute exports per LUN thread index assigned by
  scst_add_threads(). It can be used to look up which export thread is
  serving which target since this index also appears in the export thread
  name. This information then could be used to set CPU affinity for those threads to improve performance.
........
  r7077 | vlnb | 2016-12-19 22:28:41 -0800 (Mon, 19 Dec 2016) | 3 lines
  
  scst: minor forwarding mode fixes
........
  r7078 | vlnb | 2016-12-20 19:39:24 -0800 (Tue, 20 Dec 2016) | 3 lines
  
  scst: document nolockdep patches
........
  r7079 | vlnb | 2016-12-20 19:42:30 -0800 (Tue, 20 Dec 2016) | 3 lines
  
  Web updates
........
  r7080 | vlnb | 2016-12-21 19:07:19 -0800 (Wed, 21 Dec 2016) | 3 lines
  
  Cleanup
........
  r7081 | bvassche | 2016-12-27 12:21:53 -0800 (Tue, 27 Dec 2016) | 1 line
  
  ib_srpt: Fix nightly build
........
  r7082 | bvassche | 2016-12-27 12:23:31 -0800 (Tue, 27 Dec 2016) | 1 line
  
  ib_srpt: Improve portability
........
  r7083 | bvassche | 2016-12-27 12:25:13 -0800 (Tue, 27 Dec 2016) | 4 lines
  
  isert-scst: Rename SCST_DIR into SCST_SYMVERS_DIR
  
  Additionally, align shell code.
........
  r7086 | bvassche | 2017-01-08 13:10:32 -0800 (Sun, 08 Jan 2017) | 2 lines
  
  ib_srpt: Remove a local variable
........
  r7087 | bvassche | 2017-01-08 13:10:54 -0800 (Sun, 08 Jan 2017) | 1 line
  
  ib_srpt: Rename a symbolic constant
........
  r7088 | bvassche | 2017-01-08 13:45:39 -0800 (Sun, 08 Jan 2017) | 2 lines
  
  ib_srpt: Destroy SRQ before freeing the buffers posted on the SRQ
........
  r7089 | bvassche | 2017-01-08 13:46:20 -0800 (Sun, 08 Jan 2017) | 2 lines
  
  ib_srpt: Only report that SRQ creation failed if it was attempted to create an SRQ
........
  r7090 | bvassche | 2017-01-10 17:16:07 -0800 (Tue, 10 Jan 2017) | 5 lines
  
  scst: Fix a memory leak
  
  Avoid that the memory allocated for struct scst_acn and its name is
  leaked by scst_del_acg().
........


git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.2.x@7094 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-02-14 03:36:51 +00:00
2016-08-03 02:24:57 +00:00
2016-08-03 02:24:57 +00:00
2016-12-16 02:51:54 +00:00
2011-04-19 22:56:07 +00:00
2016-12-16 03:03:09 +00:00

Overview
========

This is the SCST development repository. It contains not a single
project SCST as one can think, but a number of them, which are divided
as the following:

1. SCST core in scst/ subdirectory

2. Administration utility for SCST core scstadmin in scstadmin/

3. Target drivers in own subdirectories qla2x00t/, iscsi-scst/, etc.

4. User space programs in usr/ subdirectory, like fileio_tgt.

5. Some various docs in doc/ subdirectory.

Those subprojects are in most cases independent from each other,
although some of them depend from the SCST core. They put in the single
repository only to simplify their development, they are released
independently.

Thus, use "make all" only if you really need to build everything.
Otherwise build only what you need, like for iSCSI-SCST:

make scst scst_install iscsi iscsi_install

For more information about each subproject see their README files.


QLogic target driver
====================

QLogic target driver qla2x00t is the old driver, forked from qla2xxx
several years ago. It is very stable, well tested and actively used in
many production setups. The ultimate goal is to have the mainstream
(git) QLogic target driver to be the main and the only QLogic target
driver, but, unfortunately, this driver not yet reached level of quality
and maturity of qla2x00t. We with QLogic are working toward it.

You can find the latest version of the git driver in git://git.qlogic.com/scst-qla2xxx.git.
It is maintained by QLogic, hence located in the QLogic's git.

To integrate it into the SCST build tree you need:

1. Clone the QLogic git tree somewhere in your system.

2. Create in the SCST root, i.e. this directory, a subdirectory with name
qla2x00t_git

3. Optional for the in-tree build: symlink drivers/scsi/qla2xxx
subdirectory in the cloned git tree to the qla2x00t_git subdirectory

Thats all. Now common and QLA specific root Makefile targets "magically"
start working with the new driver.

For detail instructions how to setup QLA target build environment see
its README or HOWTO. Run either "make all" to build the SCST core and
all target drivers with in-tree QLogic drivers, or the following command
with standalone QLogic drivers:

BUILD_2X_MODULE=y CONFIG_SCSI_QLA_FC=y CONFIG_SCSI_QLA2XXX_TARGET=y make all

In presence of qla2x00t_git subdirectory you can still build the
qla2x00t using qla_old* root Makefile targets.

Vladislav Bolkhovitin <vst@vlnb.net>, http://scst.sourceforge.net
Description
No description provided
Readme 33 MiB
Languages
C 90.1%
Perl 4.2%
Shell 1.8%
HTML 1.7%
Makefile 1.2%
Other 0.9%