SCST_VERSION_STRING will be incorrect because it gets defined before
CONFIG_SCST_PROC is defined. (merge r3489 and r3490 from trunk)
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/2.2.0.x@3993 d57e44dd-8a1f-0410-8b47-8ef2f437770f
https://vlnb@scst.svn.sourceforge.net/svnroot/scst/trunk
........
r3950 | vlnb | 2011-12-01 21:46:33 -0500 (Thu, 01 Dec 2011) | 9 lines
According to SPC-4 in the PERSISTENT RESERVE IN full status descriptor
the format of byte 13 is defined as follows:
- The most significant four bits are SCOPE field.
- The least significant four bits are the TYPE field.
Make sure that that byte is filled in according to the specification.
BSD-Signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3958 | vlnb | 2011-12-06 21:56:31 -0500 (Tue, 06 Dec 2011) | 21 lines
We try to build FC SAN on Sun T2 server, FC HBA cards used are
QLE2560 and QLE2562, the OS is RHEL6.0 with kernel linux-2.6.32,
scst code version from svn is 3952.
As T2 (SPARC64) is big-endian, which may not be tested sufficently,
we had to fix some endian swap to make qla2x00t work good on it.
The first fix is in q24_build_ctio_pkt(), loop_id from prm->cmd, which
was generated by CPU, should be converted to little-endian when wrapped
in pkt, which will be used by HBA ASIC.
The second fix in qla2x_tgt_def.h, reorder the bit-order of structs'
member, is an attempt in despair, cannot explain why, but it just works!
Besides the programming skills, we cannot get QLogic FC HBA databook,
and have little acknowledge about the driver, the fixes may need to
be refined, so don't hold the comments :)
Signed-off-by: Linwen Deng <linwendeng@gmail.com>
........
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/2.1.0.x@3974 d57e44dd-8a1f-0410-8b47-8ef2f437770f
https://vlnb@scst.svn.sourceforge.net/svnroot/scst/trunk
........
r3909 | vlnb | 2011-11-04 17:34:10 -0400 (Fri, 04 Nov 2011) | 3 lines
Fix build without CONFIG_SCSI_QLA2XXX_TARGET
........
r3917 | vlnb | 2011-11-08 21:47:23 -0500 (Tue, 08 Nov 2011) | 4 lines
task_mgmt_fn() callback now called under lock and IRQs disabled, so we
need to reschedule to thread during commands unjamming
........
r3923 | vlnb | 2011-11-15 20:53:27 -0500 (Tue, 15 Nov 2011) | 3 lines
Fix incorrect attach_tgt() errors processing in the sysfs build reported by David Pineau <dav.pineau@gmail.com>
........
r3935 | vlnb | 2011-11-22 21:14:38 -0500 (Tue, 22 Nov 2011) | 3 lines
Report target name when session assigned to security group
........
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/2.1.0.x@3971 d57e44dd-8a1f-0410-8b47-8ef2f437770f
........
r3930 | bvassche | 2011-11-17 05:36:03 -0500 (Thu, 17 Nov 2011) | 1 line
regtests: Fix a copy/paste bug in the #if ... partial evaluation code
........
r3931 | bvassche | 2011-11-17 12:52:29 -0500 (Thu, 17 Nov 2011) | 1 line
scst initialization: Remove kernel module parameters from /etc/default/scst
........
r3932 | bvassche | 2011-11-17 12:54:41 -0500 (Thu, 17 Nov 2011) | 1 line
regtests: Do not complain if a patch has not been found
........
r3933 | bvassche | 2011-11-17 12:55:22 -0500 (Thu, 17 Nov 2011) | 1 line
regtests: Use correct kernel.org longterm directory
........
r3934 | mgandalf | 2011-11-18 15:32:01 -0500 (Fri, 18 Nov 2011) | 1 line
- Fix -issue_lip as reported by Iain Paton.
........
r3936 | vlnb | 2011-11-22 21:32:25 -0500 (Tue, 22 Nov 2011) | 22 lines
From Bart Van Assche <bvanassche@acm.org>:
As Mikko Kortelainen <kordex@gmail.com> explained on the SCST IRC
channel, it's not necessary to replace the qla2xxx directory in the
kernel source tree in order to build the SCST qla2x00t target driver.
Also, if neither SCSI pass-through nor iSCSI will be used rebuilding
the kernel tree can be skipped entirely. The patch below updates the
qla2x00t howto accordingly, and also implements the following changes:
- Fix everything the W3C HTML validator complains about:
- Add DOCTYPE declaration.
- Add charset declaration.
- Change </br> into <br> since </br> is invalid.
- Change one occurrence of & into &.
- Use proper HTML constructs for numbered and unnumbered enumerations.
- Use a fixed-sized font and the brown color for all computer output
text (via inline CSS).
- Use hyperlinks to refer to other steps.
- Fix spelling errors.
- Merge the Debian and non-Debian howto's because the differences are
so small that it's not justified to maintain two different documents.
........
r3941 | vlnb | 2011-11-30 22:28:39 -0500 (Wed, 30 Nov 2011) | 6 lines
Use get/put_unaligned_be<n>(...) instead of
get/put_unaligned(cpu_to_be<n>(...)).
BSD-Signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3942 | vlnb | 2011-11-30 22:31:30 -0500 (Wed, 30 Nov 2011) | 7 lines
In the function scst_mgmt_translate_lun() the variable tgt_dev is
used as a loop variable and is used inside that loop only.
Hence it is not necessary to initialize it to NULL.
BSD-Signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3943 | vlnb | 2011-11-30 22:36:15 -0500 (Wed, 30 Nov 2011) | 17 lines
Use get/put_unaligned() instead of open coding these such that the
compiler can generate better code.
As an example, the get_unaligned_be24() function used in the
implementation of READ_6, WRITE_6 and VERIFY_6 together with
"& 0x1f0000" is inlined by the compiler and is translated as
follows on an x86_64 system (2031616 equals 0x1f0000):
movl 0(%r13), %r11d
bswapl %r11d
andl $2031616, %r11d
Also eliminate a conditional branch instruction from get_trans_len_1_256().
BSD-Signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3944 | vlnb | 2011-12-01 21:14:59 -0500 (Thu, 01 Dec 2011) | 8 lines
Avoid that the checkpatch.pl script as included in Linux kernel 3.1
complains about min((int)(a), (int)(b)) that should be changed into
min_t(int, (a), (b)).
BSD-signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3945 | vlnb | 2011-12-01 21:24:41 -0500 (Thu, 01 Dec 2011) | 7 lines
disk_work.result is set by disk_cmd_done() and read by disk_exec().
Since there is a complete_all() / wait_for_completion() pair between both
accesses the volatile keyword is not necessary here.
BSD-signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3946 | vlnb | 2011-12-01 21:26:29 -0500 (Thu, 01 Dec 2011) | 5 lines
Remove a superfluous pair of braces since checkpatch complains about these.
BSD-signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3947 | vlnb | 2011-12-01 21:39:43 -0500 (Thu, 01 Dec 2011) | 6 lines
Use get_unaligned_be16() for reading the two bytes specifying the buffer length
to allow the compiler to generate better code for reading these two bytes.
BSD-signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3948 | vlnb | 2011-12-01 21:41:15 -0500 (Thu, 01 Dec 2011) | 5 lines
Micro-optimize the code for CDB parsing in several device handlers.
BSD-signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3949 | vlnb | 2011-12-01 21:42:21 -0500 (Thu, 01 Dec 2011) | 6 lines
The only two values passed into the last two arguments of blockio_exec_rw()
are 0 and 1. Change their argument type from int to bool.
BSD-signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3951 | mgandalf | 2011-12-05 14:39:59 -0500 (Mon, 05 Dec 2011) | 1 line
- Warn only in issueLip() when -issue_lip is an argument.
........
r3952 | vlnb | 2011-12-05 22:02:13 -0500 (Mon, 05 Dec 2011) | 7 lines
Change __attribute__((packed)) into __packed and
__attribute__((aligned(x))) into __aligned(x) in kernel code since
checkpatch complains about the former.
BSD-signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3953 | bvassche | 2011-12-06 14:08:14 -0500 (Tue, 06 Dec 2011) | 2 lines
ib_srpt: Avoid that session registration failure causes trouble / send a reject if the transition to RTR fails.
........
r3954 | bvassche | 2011-12-06 14:11:50 -0500 (Tue, 06 Dec 2011) | 1 line
Kernel version updates
........
r3955 | bvassche | 2011-12-06 14:30:21 -0500 (Tue, 06 Dec 2011) | 1 line
ib_srpt: Send a reject message with non-zero reason code if session creation fails
........
r3956 | mgandalf | 2011-12-06 14:41:33 -0500 (Tue, 06 Dec 2011) | 1 line
- Small directory check in _issueLip(). Not sure why this is needed.
........
r3957 | vlnb | 2011-12-06 21:29:14 -0500 (Tue, 06 Dec 2011) | 11 lines
Eliminate the blockio / fileio / nullio if-statements in
vdisk_do_job() and the READ/WRITE functions called from that
function. Convert the opcode switch in vdisk_*do_job() to an
array with function pointers.
The function vdisk_exec_verify() only works for file I/O, so
rename it into fileio_exec_verify().
BSD-signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3959 | vlnb | 2011-12-06 22:07:45 -0500 (Tue, 06 Dec 2011) | 3 lines
Web updates
........
r3960 | bvassche | 2011-12-07 12:31:08 -0500 (Wed, 07 Dec 2011) | 1 line
qla2x_tgt: Remove trailing whitespace
........
r3961 | vlnb | 2011-12-07 18:58:59 -0500 (Wed, 07 Dec 2011) | 5 lines
Makes scst_vdisk build again on RHEL 5.x.
BSD-signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3962 | vlnb | 2011-12-07 19:00:06 -0500 (Wed, 07 Dec 2011) | 5 lines
Avoid converting back and forth between int and enum
BSD-signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3963 | vlnb | 2011-12-07 19:06:24 -0500 (Wed, 07 Dec 2011) | 6 lines
Micro-optimize the page count computations in scst_mem.c by
rewriting these computations such that branch instructions are avoided.
BSD-signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3964 | vlnb | 2011-12-08 18:49:52 -0500 (Thu, 08 Dec 2011) | 3 lines
Minor logging improvement
........
r3965 | vlnb | 2011-12-09 22:50:24 -0500 (Fri, 09 Dec 2011) | 5 lines
Replace list_entry((a)->next, b, c) by list_first_entry(a, b, c).
BSD-signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3966 | vlnb | 2011-12-09 22:54:47 -0500 (Fri, 09 Dec 2011) | 3 lines
QLA HOWTO update from Bart Van Assche <bvanassche@acm.org>
........
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/2.1.0.x@3967 d57e44dd-8a1f-0410-8b47-8ef2f437770f
........
r3844 | bvassche | 2011-09-07 14:52:46 -0400 (Wed, 07 Sep 2011) | 5 lines
scst_vdisk, thin provisioning: unmap the largest range possible even if the
upper bound of the range is not a multiple of PAGE_CACHE_SIZE. This is a
follow-up for r3799 and removes the PRINT_ERROR() statement introduced in that
revision.
........
r3847 | bvassche | 2011-09-07 15:03:06 -0400 (Wed, 07 Sep 2011) | 1 line
ib_srpt: Remove to-do list because outdated
........
r3850 | vlnb | 2011-09-07 22:17:01 -0400 (Wed, 07 Sep 2011) | 3 lines
Web updates
........
r3853 | bvassche | 2011-09-17 11:17:41 -0400 (Sat, 17 Sep 2011) | 1 line
ib_srpt: Make error reporting more detailed
........
r3854 | bvassche | 2011-09-17 11:19:45 -0400 (Sat, 17 Sep 2011) | 1 line
ib_srpt: Mask off AGN_MASK bits before invoking ib_cm_listen()
........
r3855 | bvassche | 2011-09-17 11:21:07 -0400 (Sat, 17 Sep 2011) | 1 line
ib_srpt: Relax a WARN_ON() statement such that it doesn't fire needlessly
........
r3856 | bvassche | 2011-09-17 11:22:13 -0400 (Sat, 17 Sep 2011) | 1 line
ib_srpt: Make srpt_release_sdev() logging more informative
........
r3857 | bvassche | 2011-09-17 11:23:36 -0400 (Sat, 17 Sep 2011) | 1 line
ib_srpt: Don't wait forever for the Last WQE event
........
r3858 | bvassche | 2011-09-17 11:24:37 -0400 (Sat, 17 Sep 2011) | 1 line
ib_srpt: Make sure that rmmod finishes
........
r3859 | bvassche | 2011-09-17 11:38:09 -0400 (Sat, 17 Sep 2011) | 1 line
Fix a typo introduced in r3858
........
r3863 | vlnb | 2011-09-17 20:58:15 -0400 (Sat, 17 Sep 2011) | 34 lines
Patch from Abhilash Sankar <Abhilash.S@hcl.com> with some fixes
Issue:
------------
The DevRegAttribute is sending a different Source Attribute (ISCSI name) which
represents the Storage Node for each target. So Microsoft isns server considers
the last request as the storage node and doesn't discover the previous targets.
Root Cause
----------------
Function ISNS_FUNC_DEV_ATTR_REG
Target A
Source attribute
ISCSI-Name = <IQN A Name>
Operating Attribute
ISCSI-Name = <IQN A Name>
Flags
Replace Access = 1
Target B
Source attribute
ISCSI-Name = <IQN B Name>
Operating Attribute
ISCSI-Name = <IQN B Name>
Replace Access = 1
So as per the request format Microsoft isns Server always takes the last target
as the source node. and register the same. Hence it doesn't discover the
targets other than last one. The Source Attribute has to be fixed for all targets. It
would be better if we use the first target iscsi name (rather than the last target
iscsi name) as source attribute iscsi name to represent the storage node.
........
r3866 | bvassche | 2011-09-18 03:38:37 -0400 (Sun, 18 Sep 2011) | 1 line
ib_srpt: Reduce the Last WQE wait time
........
r3867 | bvassche | 2011-09-18 04:01:29 -0400 (Sun, 18 Sep 2011) | 1 line
Follow-up for r3866
........
r3869 | bvassche | 2011-09-18 07:04:10 -0400 (Sun, 18 Sep 2011) | 1 line
ib_srpt: Show the state name in debug messages
........
r3870 | bvassche | 2011-09-18 07:15:17 -0400 (Sun, 18 Sep 2011) | 6 lines
ib_srpt: Fix "rejected SRP_LOGIN_REQ because creating a new RDMA channel failed"
Fix two race conditions that could trigger this failure:
- Completion thread not woken up after channel state change.
- Reception of Last WQE event before the channel queue pair was reset.
........
r3872 | bvassche | 2011-09-18 08:23:13 -0400 (Sun, 18 Sep 2011) | 1 line
ib_srpt: Remove a superfluous __srpt_close_ch() call
........
r3875 | bvassche | 2011-09-22 13:49:04 -0400 (Thu, 22 Sep 2011) | 1 line
ib_srpt: Clean up two PRINT_ERROR() statements
........
r3876 | bvassche | 2011-09-22 13:49:45 -0400 (Thu, 22 Sep 2011) | 1 line
ib_srpt: Remove an outdated comment
........
r3877 | bvassche | 2011-09-22 13:51:19 -0400 (Thu, 22 Sep 2011) | 1 line
ib_srpt: Avoid that the cleanup code invoked after rejecting a new initiator connection triggers a race condition
........
r3879 | bvassche | 2011-09-24 10:11:39 -0400 (Sat, 24 Sep 2011) | 1 line
scst, latency statistics: Introduce timespec_to_ns().
........
r3882 | vlnb | 2011-09-27 22:07:50 -0400 (Tue, 27 Sep 2011) | 3 lines
Change reporting processed_cmds to unsigned as suggested by ido benda <idombd@gmail.com>
........
r3883 | vlnb | 2011-09-27 22:18:44 -0400 (Tue, 27 Sep 2011) | 5 lines
Micro-optimize scst_unpack_lun(): avoid comparing "len" twice with the constant "2".
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
........
r3884 | bvassche | 2011-09-28 12:38:27 -0400 (Wed, 28 Sep 2011) | 4 lines
scst, latency statistics:
- Use 64 bits instead of 32 for each "processed commands" counter.
- Make sure there is at least one space between adjacent columns.
........
r3885 | bvassche | 2011-09-28 13:42:50 -0400 (Wed, 28 Sep 2011) | 1 line
Nightly build: include the latency measuring code
........
r3886 | vlnb | 2011-10-04 22:08:51 -0400 (Tue, 04 Oct 2011) | 3 lines
Limit max unmap LBA count to device size
........
r3887 | vlnb | 2011-10-04 22:11:19 -0400 (Tue, 04 Oct 2011) | 3 lines
Prevent reverse order of management commands
........
r3889 | bvassche | 2011-10-05 12:34:09 -0400 (Wed, 05 Oct 2011) | 1 line
srpt/README: Add note about DEVICE.threads_num
........
r3890 | bvassche | 2011-10-05 13:14:23 -0400 (Wed, 05 Oct 2011) | 1 line
scst: Add script for rebuilding RHEL / CentOS / Scientific Linux kernel RPMs
........
r3891 | bvassche | 2011-10-05 13:15:39 -0400 (Wed, 05 Oct 2011) | 1 line
Set executable property
........
r3892 | bvassche | 2011-10-08 07:08:55 -0400 (Sat, 08 Oct 2011) | 1 line
Reran performance measurements
........
r3894 | bvassche | 2011-10-10 04:27:27 -0400 (Mon, 10 Oct 2011) | 2 lines
scst_vdisk, vdev_sysfs_process_get_filename(): Make sure that dev->dev_unregistering is reread from memory in each loop iteration. Note: the now removed "(volatile bool)" cast did not have any effect.
........
r3895 | bvassche | 2011-10-10 05:23:32 -0400 (Mon, 10 Oct 2011) | 4 lines
scst_vdisk, blockio: Add write-through (FUA) support.
From: Etienne Dechamps <e-t172@akegroup.org>
........
r3896 | vlnb | 2011-10-10 23:13:18 -0400 (Mon, 10 Oct 2011) | 4 lines
Reverse r3894, because it is incorrect. There is no order dependency
between CPUs here, so there's no need in the corresponding fence command.
........
r3897 | bvassche | 2011-10-20 12:59:15 -0400 (Thu, 20 Oct 2011) | 1 line
ib_srpt: Make the error message about rejected login more clear
........
r3898 | vlnb | 2011-10-24 18:16:42 -0400 (Mon, 24 Oct 2011) | 3 lines
Make usage of scst_suspend_activity() more flexible by making its timeout be explicit
........
r3899 | bvassche | 2011-10-25 14:05:57 -0400 (Tue, 25 Oct 2011) | 6 lines
ib_srpt: Avoid stopping polling too early for IB completions.
This resulted in unnecessary complaints about IB completions not being
received in time when removing the ib_srpt kernel module during I/O. Note:
it is still possible that such complaints occur, but much less frequent.
........
r3900 | bvassche | 2011-10-26 13:42:37 -0400 (Wed, 26 Oct 2011) | 1 line
ib_srpt: Avoid a sporadic 160s delay when a session is unregistered or when removing the ib_srpt kernel module during I/O
........
r3901 | vlnb | 2011-10-26 15:32:58 -0400 (Wed, 26 Oct 2011) | 3 lines
Fix incorrect handling of jiffies wrap around as pointed out by Bart Van Assche.
........
r3903 | bvassche | 2011-10-30 08:29:45 -0400 (Sun, 30 Oct 2011) | 1 line
ib_srpt: Remove an unused struct member
........
r3904 | bvassche | 2011-10-30 08:33:42 -0400 (Sun, 30 Oct 2011) | 1 line
ib_srpt: Reduce number of kmalloc() calls per I/O
........
r3905 | bvassche | 2011-10-30 09:41:46 -0400 (Sun, 30 Oct 2011) | 2 lines
ib_srpt: Further reduce number of kmalloc() calls per I/O
........
r3906 | vlnb | 2011-11-03 22:24:35 -0400 (Thu, 03 Nov 2011) | 3 lines
Remove dead target
........
r3907 | bvassche | 2011-11-04 14:35:37 -0400 (Fri, 04 Nov 2011) | 4 lines
ib_srpt: Make srpt_alloc_ioctx_ring() return NULL instead of a dangling
pointer if allocation fails. Reported by Dan Carpenter
<dan.carpenter@oracle.com> on the linux-rdma@vger.kernel.org mailing list.
........
r3910 | vlnb | 2011-11-04 18:03:56 -0400 (Fri, 04 Nov 2011) | 6 lines
Implement building qla2xxx out of the kernel tree. For that
BUILD_2X_MODULE=y should be passed to make. New module named
qla2xxx_scst. Obviously, to have it working, the original qla2xxx should
be either blacklisted, or removed from the target system.
........
r3911 | bvassche | 2011-11-06 05:35:24 -0500 (Sun, 06 Nov 2011) | 1 line
ib_srpt: Simplify last WQE processing
........
r3914 | bvassche | 2011-11-07 15:04:26 -0500 (Mon, 07 Nov 2011) | 1 line
ib_srpt: Make max_rsp_size writable
........
r3915 | bvassche | 2011-11-07 15:09:42 -0500 (Mon, 07 Nov 2011) | 1 line
ib_srpt: Make srpt_srq_size writable
........
r3916 | bvassche | 2011-11-08 14:50:31 -0500 (Tue, 08 Nov 2011) | 1 line
ib_srpt: Change one occurrence of WARN_ON() into __WARN().
........
r3918 | mgandalf | 2011-11-11 12:50:08 -0500 (Fri, 11 Nov 2011) | 1 line
Fixed minor config file bug pointed out by Bart Van Assche.
........
r3919 | bvassche | 2011-11-13 05:04:55 -0500 (Sun, 13 Nov 2011) | 1 line
ib_srpt: Increase default value of srp_max_req_size from 2116 to 4148 bytes.
........
r3920 | bvassche | 2011-11-15 14:06:36 -0500 (Tue, 15 Nov 2011) | 2 lines
ib_srpt: Reduce the I/O overhead slightly
........
r3921 | vlnb | 2011-11-15 19:00:40 -0500 (Tue, 15 Nov 2011) | 4 lines
Fixes possible NULL cmd dereference in vdisk_fsync() noticed by Bart Van
Assche + possible calls of VERIFY commands for BLOCKIO devices
........
r3922 | vlnb | 2011-11-15 19:04:57 -0500 (Tue, 15 Nov 2011) | 3 lines
Fixes reporting to BLOCKIO devices fsync() errors, noticed by Bart Van Assche
........
r3924 | bvassche | 2011-11-16 13:50:24 -0500 (Wed, 16 Nov 2011) | 1 line
regtests: Reflect kernel.org directory tree changes
........
r3925 | bvassche | 2011-11-16 14:05:45 -0500 (Wed, 16 Nov 2011) | 1 line
regtests: Update kernel versions now that kernel.org has been restored.
........
r3927 | bvassche | 2011-11-16 14:49:44 -0500 (Wed, 16 Nov 2011) | 1 line
regtest: Another update because of the kernel.org directory structure changes
........
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/2.1.0.x@3928 d57e44dd-8a1f-0410-8b47-8ef2f437770f
Fix two race conditions that could trigger this failure:
- Completion thread not woken up after channel state change.
- Reception of Last WQE event before the channel queue pair was reset.
(Merged r3869 and r3870 from the trunk.)
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/2.1.0.x@3871 d57e44dd-8a1f-0410-8b47-8ef2f437770f
https://vlnb@scst.svn.sourceforge.net/svnroot/scst/trunk
........
r3799 | vlnb | 2011-08-04 22:07:35 -0400 (Thu, 04 Aug 2011) | 37 lines
Modified patch from Bart Van Assche <bvanassche@acm.org>:
The range unmapped by the scst_vdisk handler when processing an UNMAP command
is not correct. The patch below fixes that and also prevents that the following
kernel crash can be triggered on the target:
Call Trace:
[<ffffffffa06b5350>] ? srpt_post_send+0xd0/0x140 [ib_srpt]
[<ffffffff811bb595>] ? cpumask_next_and+0x35/0x50
[<ffffffff810e6296>] shmem_truncate_range+0x7a6/0xa50
[<ffffffffa0612ceb>] ? scst_get_buf_full+0x16b/0x270 [scst]
[<ffffffffa069beb6>] vdisk_exec_unmap+0x1d6/0x4b0 [scst_vdisk]
[<ffffffff813c0cb6>] ? _raw_spin_unlock+0x16/0x40
[<ffffffffa069dadc>] vdisk_do_job+0x5fc/0x950 [scst_vdisk]
[<ffffffffa0605402>] scst_do_real_exec+0xb2/0x400 [scst]
[<ffffffffa06076a7>] scst_exec+0xd7/0x240 [scst]
[<ffffffffa06079b6>] scst_send_for_exec+0x1a6/0x2f0 [scst]
[<ffffffffa06086f8>] scst_process_active_cmd+0x4f8/0x790 [scst]
[<ffffffffa0608a29>] scst_do_job_active+0x99/0x170 [scst]
[<ffffffffa060a3da>] scst_cmd_thread+0x15a/0x3b0 [scst]
[<ffffffff81047470>] ? default_wake_function+0x0/0x20
[<ffffffffa060a280>] ? scst_cmd_thread+0x0/0x3b0 [scst]
[<ffffffff8106dc26>] kthread+0x96/0xa0
[<ffffffff81003cd4>] kernel_thread_helper+0x4/0x10
[<ffffffff8103db01>] ? finish_task_switch+0x51/0xb0
[<ffffffff813c0c7c>] ? _raw_spin_unlock_irq+0x1c/0x40
[<ffffffff813c18b1>] ? restore_args+0x0/0x30
[<ffffffff8106db90>] ? kthread+0x0/0xa0
[<ffffffff81003cd0>] ? kernel_thread_helper+0x0/0x10
Invoking truncate_range() with an end len that is not page-size aligned
triggers it. In other words, with a block size that is below
PAGE_CACHE_SIZE some UNMAP commands could trigger a kernel bug. I think
it's better to print an error message and to skip an UNMAP command
instead of triggering a kernel oops.
........
r3800 | vlnb | 2011-08-08 21:04:57 -0400 (Mon, 08 Aug 2011) | 3 lines
Update of SCST_Gentoo_HOWTO.txt to SCST 2.x. Thanks to Willem Boterenbrood <w.boterenbrood@gmail.com>!
........
r3818 | vlnb | 2011-08-17 20:17:06 -0400 (Wed, 17 Aug 2011) | 3 lines
Fix for forgotten devt initialization in preparing internal commands
........
r3819 | vlnb | 2011-08-17 20:27:12 -0400 (Wed, 17 Aug 2011) | 6 lines
Disable accepting initiator mode commands if initiator mode not enabled
for 23xx- chips as well as suggested by ido benda <idombd@gmail.com>.
This is extension of r3261 to qla2x00_queuecommand().
........
r3823 | vlnb | 2011-08-19 19:20:22 -0400 (Fri, 19 Aug 2011) | 3 lines
Update of SCST_Gentoo_HOWTO.txt from Willem Boterenbrood <w.boterenbrood@gmail.com>
........
r3824 | vlnb | 2011-08-19 19:55:31 -0400 (Fri, 19 Aug 2011) | 3 lines
Fix for one more forgotten initialization in preparing internal commands spotted by kordex@gmail.com
........
r3825 | bvassche | 2011-08-20 10:04:52 -0400 (Sat, 20 Aug 2011) | 1 line
documentation, spelling: Change phisical into physical
........
r3828 | bvassche | 2011-08-22 15:19:56 -0400 (Mon, 22 Aug 2011) | 11 lines
scst: Avoid triggering BUG() on uniprocessor systems
On uniprocessor systems with lock debugging disabled spin_is_locked()
returns false. Disable the spin_is_locked() checks if CONFIG_SMP has not
been defined.
Reported-by: Frank <frank@debian-nas.org>
Signed-off-by: Dave Carroll <dcarroll@astekcorp.com>
Cc: scst-devel <scst-devel@lists.sourceforge.net>
Cc: Frank <frank@debian-nas.org>
........
r3831 | vlnb | 2011-08-25 14:08:45 -0400 (Thu, 25 Aug 2011) | 3 lines
Fix possible crash on rel_tgt_id set on transports without is_target_enabled() defined.
........
r3833 | vlnb | 2011-09-01 14:22:27 -0400 (Thu, 01 Sep 2011) | 5 lines
- Fix possible deadlock between vdev_sysfs_process_get_filename() and vdisk_del_device()
- Cleanups
........
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/2.1.0.x@3836 d57e44dd-8a1f-0410-8b47-8ef2f437770f