Bart Van Assche 068bc3f41e scst: Fix scst_resume_activity()
Avoid that the following crash is triggered under memory pressure:

 PID: 12622  TASK: ffff88042069a040  CPU: 2   COMMAND: "scst_uid"
  #0 [ffff88040daebaa0] machine_kexec at ffffffff8103b60b
  #1 [ffff88040daebb00] crash_kexec at ffffffff810c99e2
  #2 [ffff88040daebbd0] oops_end at ffffffff8152e1c0
  #3 [ffff88040daebc00] die at ffffffff81010f5b
  #4 [ffff88040daebc30] do_general_protection at ffffffff8152dcb2
  #5 [ffff88040daebc60] general_protection at ffffffff8152d485
     [exception RIP: __scst_resume_activity+531]
     RIP: ffffffffa05ccbd3  RSP: ffff88040daebd10  RFLAGS: 00010046
     RAX: 0000000000000063  RBX: dead000000100100  RCX: 0000000000000000
     RDX: ffffffffa067c8a0  RSI: 0000000000000046  RDI: 0000000000000046
     RBP: ffff88040daebd30   R8: 000000001c1471e6   R9: 6320746d676d2065
     R10: 766974636120666f  R11: 2064616568206f74  R12: ffff88068fea73a8
     R13: ffff88068fea73a8  R14: ffff88040daebe08  R15: ffff88043a7eaab0
     ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018
  #6 [ffff88040daebd18] mutex_lock at ffffffff8152af9e
  #7 [ffff88040daebd38] scst_resume_activity at ffffffffa05ccc6d [scst]
  #8 [ffff88040daebd48] scst_unregister_virtual_device at ffffffffa05ce18c [scst]
  #9 [ffff88040daebd88] vdev_del_device at ffffffffa07ca1c0 [scst_vdisk]
 #10 [ffff88040daebdb8] vdisk_del_device at ffffffffa07ca4bf [scst_vdisk]
 #11 [ffff88040daebde8] scst_process_devt_mgmt_store at ffffffffa0605ab9 [scst]
 #12 [ffff88040daebe38] scst_devt_mgmt_store_work_fn at ffffffffa0605af6 [scst]
 #13 [ffff88040daebe48] scst_process_sysfs_works at ffffffffa0601c5f [scst]
 #14 [ffff88040daebe78] sysfs_work_thread_fn at ffffffffa0601e97 [scst]
 #15 [ffff88040daebee8] kthread at ffffffff8109e78e
 #16 [ffff88040daebf48] kernel_thread at ffffffff8100c28a
    
Reported-by: Ashok Ramu <ashok.ramu@actifio.com>
Reported-by: Boris Protopopov <boris.protopopov@actifio.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6818 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2016-03-01 17:39:37 +00:00
2016-01-22 03:08:44 +00:00
2016-01-22 04:04:43 +00:00
2016-02-19 03:12:53 +00:00
2016-01-22 04:04:43 +00:00
2016-03-01 17:39:37 +00:00
2016-01-22 04:04:43 +00:00
2016-02-16 19:35:02 +00:00
2016-02-24 01:01:54 +00:00
2016-02-18 03:15:53 +00:00
2011-04-19 22:56:07 +00:00
2016-01-22 04:04:43 +00:00
2015-11-10 01:59:28 +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%