Commit Graph

4568 Commits

Author SHA1 Message Date
Bart Van Assche
9d3a3caaa9 scst: Log block size changes
A block size change is a very important change so log such
changes.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-16 09:36:17 +02:00
Bart Van Assche
8a23c532be scst: Rename SERVICE_ACTION_IN into SERVICE_ACTION_IN_16
Rename this constant because it has been renamed in the Linux
kernel.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-16 09:36:17 +02:00
Bart Van Assche
8c6d767193 scst_lib: Fix SCSI pass-through error handling
Some but not all SCSI LLD drivers set req->errors. Some SCSI
LLD drivers set req->errors to a negative Unix error code and
others assign the result of make_status_bytes() to req->errors.
The SCSI core finishes failed pass-through requests by calling
blk_finish_request(). That function calls req->end_io() without
setting req->errors. Hence check both the error argument and
req->errors before calling sioc->done().

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-16 09:36:09 +02:00
Bart Van Assche
5b57a0bcea ib_srpt: RHEL 5 build fix
Make the ib_srpt driver build again on RHEL 5 systems. See also
r6138 / commit ID 940faa9ad4.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-15 17:54:56 +02:00
Bart Van Assche
36ffdf330b scst_local: RHEL 5 build fix
Add a definition of scsi_bidi_cmnd() for older kernel versions.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-15 17:54:56 +02:00
Bart Van Assche
6e0fdac887 scst: RHEL 5 build fix for file_inode()
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-15 17:54:56 +02:00
Bart Van Assche
d7f4189bae nightly build: Add kernel versions 3.19 and 4.0
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-15 14:30:34 +02:00
Bart Van Assche
14b014edf2 nightly build: Add kernel 4.0 build infrastructure
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-15 14:30:34 +02:00
Bart Van Assche
36c09aafb1 scripts/kernel-functions: Port to kernel v4.x
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-15 14:30:34 +02:00
Bart Van Assche
cfe7b53ad3 qla2x00t: Port to RHEL 6
Although RHEL 6 is based on the 2.6.32 kernel, for RHEL 6.1 the
argument list for sysfs callback functions follows the style of
kernel 2.6.35.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-15 14:30:34 +02:00
Bart Van Assche
a613f706c3 ib_srpt: RHEL 7.1 build fix
With the RHEL 7.0 kernel ib_register_mad_agent() takes eight
arguments. With the RHEL 7.1 kernel the same function takes nine
arguments. Detect at build time how many arguments this function
takes.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-15 14:30:34 +02:00
Bart Van Assche
2d467580d1 scst: Remove unreachable code
Code after BUG() is unreachable both with CONFIG_BUG=y and with
CONFIG_BUG=n. Hence remove such code. Detected by smatch.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-15 14:30:34 +02:00
Bart Van Assche
bf9d2668a5 scst: Fix WRITE SAME parsing
* scst_lib: refuse WRITE SAME commands with UNMAP=0 and ANCHOR=1 or
  with UNMAP=0 and no data buffer. SBC-4 requires to respond with
  "ILLEGAL REQUEST / INVALID FIELD IN CDB" to such WRITE SAME commands.
* scst_lib: use the WRITE SAME(16) NODB bit to determine the data
  buffer length.
* scst_vdisk: test for the ANCHOR bit via mask 0x10 instead of mask 0x01.
* scst_vdisk: print an error message if a WRITE SAME command has been
  refused because of an unusual value of NUMBER OF LOGICAL BLOCKS.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-15 14:30:34 +02:00
Bart Van Assche
6c46b1a5a0 scst: Remove the dev_unregistering member variable
This variable is no longer needed because devices are
removed from the devices list via list_del_init() before
being unregistered. See also trunk r5510 / commit f3820d5bc4.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-15 14:30:34 +02:00
Bart Van Assche
32cadc07df scst: Rework the code for waiting until an I/O context is ready
Introduce a wait event and eliminate the msleep() call that is
used for waiting until an I/O context is ready.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-15 14:30:31 +02:00
Bart Van Assche
6317a4a5ee qla2x00t: Kernel 3.19 build fix
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-13 18:44:00 +02:00
Bart Van Assche
a8a2725815 iscsi-scst: Add put_page_callback patch for kernel 3.19
Tested against the virtio_net network driver.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-13 18:44:00 +02:00
Bart Van Assche
904b3c1eb3 iscsi-scst: Kernel 3.19 build fix
Change the data type of iscsi_conn.read_iov into struct kvec * and
switch from iscsi_conn.read_size to iscsi_conn.read_msg.count for
kernel version 3.19 and later. Cast the return type of
get_zeroed_page() to void * since with this patch the read_iov
data type depends on the kernel version. Remove the (void __force
__user *) casts when assigning to iov_base since for a kvec iov_base
is a kernel pointer instead of a user space pointer. Switch to
iov_iter_kvec() to initialize conn->read_msg.msg_iter.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-13 18:44:00 +02:00
Bart Van Assche
02c014bf90 iscsi-scst: Prepare for kernel 3.19
Rework the iSCSI target driver code such that it becomes easier
to port this code to kernel 3.19.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-13 18:44:00 +02:00
Bart Van Assche
e860c56bcd iscsi-scst: Suppress put_page_callback patch warnings
The put_page_callback patch only improves performance on single-socket
systems but not on systems with multiple CPU sockets. Hence do not
print a warning if the put_page_callback patch has not been applied.

Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-13 18:44:00 +02:00
Bart Van Assche
2d97fce7de vdisk_blockio: Make the WRITE VERIFY warning less verbose
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-13 18:44:00 +02:00
Bart Van Assche
c380042f9f Remove SourceForge www directory 2015-04-13 16:22:43 +02:00
Bart Van Assche
b470b861c9 Add .gitignore
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
2015-04-13 16:22:43 +02:00
Bart Van Assche
33a4bccc38 ib_srpt: Avoid that aborting a command triggers a race condition
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6181 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-04-10 05:39:44 +00:00
Vladislav Bolkhovitin
268c7ce246 Docs update
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6180 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-04-10 00:33:05 +00:00
Bart Van Assche
98fb52432c ib_srpt: Specify a valid completion vector during completion queue creation
Avoid that SRP login can fail as follows:

kernel: ib_srpt: failed to create CQ: cqe 320; c.v. 17; ret -22


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6179 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-04-09 15:06:36 +00:00
Bart Van Assche
8cb332836f scripts/specialize-patch: Fix a bug in evaluate()
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6176 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-04-01 07:17:17 +00:00
Bart Van Assche
b0167433fb qla2x00t: Fix spelling in a source code comment
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6175 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-04-01 06:39:16 +00:00
Bart Van Assche
356c46e018 qla2x00t: Avoid that checkpatch complains about indentation
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6174 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-04-01 06:37:50 +00:00
Bart Van Assche
c32f79f6c1 Revert T10-PI support
The T10-PI patch (r6162) increases the time needed to run mkfs.ext4
over iSCSI from less than a second to several minutes. This is a
regression so revert the T10-PI patch until there is sufficient time
to find the root cause of this regression and to fix this regression.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6171 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-31 09:51:24 +00:00
Bart Van Assche
01524f59ce qla2x00t: Fix a checkpatch complaint about whitespace
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6170 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-31 07:58:48 +00:00
Bart Van Assche
2dc5f994cf scst.h: Address recently introduced checkpatch complaints about whitespace
Address the following checkpatch complaints:

ERROR:POINTER_LOCATION: "foo * bar" should be "foo *bar"
ERROR:SPACING: space required before the open parenthesis '('


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6169 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-30 14:56:42 +00:00
Bart Van Assche
4751a5bf5d scst_vdisk: Fix indentation
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6168 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-30 14:46:00 +00:00
Bart Van Assche
40c138ac23 scst: Kernel 3.19 build fix
Signed-off-by: Sebastian Herbszt <herbszt@gmx.de>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6167 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-30 09:34:16 +00:00
Bart Van Assche
d6db54ebdc ib_srpt: Enable building against OFED headers without patching the build system (follow-up for r6138)
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6166 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-29 19:19:36 +00:00
Bart Van Assche
b79e0f7272 scst_main: Insert a blank line after a mutex_unlock() statement
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6165 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-29 17:34:10 +00:00
Bart Van Assche
a3f4f28711 Build fixes - follow-up for r6162
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6164 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-29 17:32:59 +00:00
Bart Van Assche
6349372255 iscsi-scst: Switch to the new and preferred approach for printing kernel messages
This patch does not change any functionality.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6163 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-29 17:28:38 +00:00
Vladislav Bolkhovitin
a3ad8d1832 T10-PI support
Thanks to SanDisk and Emulex for supporting this work!

Tested with Emulex SDK Release 5.2.1



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6162 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-28 05:22:47 +00:00
Bart Van Assche
dbdec5079d nightly build: Update kernel versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6161 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-28 02:45:23 +00:00
Vladislav Bolkhovitin
57ae9291b9 iscsi-scst: Concatenate two string literals
This patch fixes the following kernel 3.19 checkpatch complaint:

Consecutive strings are generally better as a single string.

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



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6160 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-27 03:52:37 +00:00
Vladislav Bolkhovitin
b6ea3324e6 scst_vdisk: Fix indentation
Detected by smatch.

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



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6159 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-27 03:50:57 +00:00
Bart Van Assche
536cf0c473 qla2xxx_scst: Remove trailing whitespace
Detected by checkpatch.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6158 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-26 15:20:44 +00:00
Vladislav Bolkhovitin
cac086b68b scst: Kernel 4.0 build fix
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6157 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-26 04:11:21 +00:00
Vladislav Bolkhovitin
5cc7555cd9 iscsi-scst: Rework sparse annotations
Do not declare kernel pointers as __user but instead cast these to
__user just before assigning these to iov_base.

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



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6156 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-26 00:33:45 +00:00
Vladislav Bolkhovitin
572869d64a scst_local: Kernel 3.19 build fix
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6155 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-26 00:06:51 +00:00
Vladislav Bolkhovitin
65f1c58e28 scst: Kernel 3.19 build fix
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6154 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-26 00:04:24 +00:00
Vladislav Bolkhovitin
ea60935622 qla2x00t: fix proc build
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6153 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-26 00:02:19 +00:00
Bart Van Assche
90da428ec2 scst_vdisk: Insert blank line after declarations
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6152 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-25 20:30:55 +00:00
Bart Van Assche
77cc4fb7e0 Add kernel 3.19 nightly build support infrastructure
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6151 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-03-25 20:29:50 +00:00