Commit Graph
555 Commits
Author SHA1 Message Date
Bart Van Assche af555c5645 Merge branch 'svn-trunk' 2015-08-31 19:32:21 -07:00
Bart Van Assche 175463ca84 isert-scst: Fix race condition between login request and scst teardown flow
On scst teardown we call rdma_disconnect() on all connections.
this moves the qps to error state and flushes all the wc, including
the drain wc which will results in kref_put of the connection.

In a race condition with the connection request, we might be only in
the init stage of the ref, and calling kref_put will result in refcount
0 and freeing the connection while establishing it.

Call the first kref_get before rdma_accept() to prevent this race.

Signed-off-by: Ariel Nahum <arieln@mellanox.com>
Signed-off-by: Yan Burman <yanb@mellanox.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6486 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-08-27 17:53:32 +00:00
Bart Van Assche 90a87ac5ab Merge branch 'svn-trunk' 2015-08-25 17:47:14 -07:00
Bart Van Assche dba2b1ac6b isert: Only set WR next pointer when needed
Signed-off-by: Yan Burman <yanb@mellanox.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6482 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-08-25 21:40:41 +00:00
Bart Van Assche 4fcec5f359 isert: Only set signalled flag when needed
Do not set signalled flag and then zero it for unneeded cases.
Instead only set it when necessary
    
Signed-off-by: Yan Burman <yanb@mellanox.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6481 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-08-25 21:40:11 +00:00
Bart Van Assche 58cfc4f8b8 iscsi: Only use thread pool for TCP but not for iSER
Signed-off-by: Yan Burman <yanb@mellanox.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6480 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-08-25 21:39:39 +00:00
Vladislav Bolkhovitin 45d7f40ec1 Improve release logging
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6478 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-08-25 02:57:51 +00:00
Vladislav Bolkhovitin 20f523a1b3 Cleanup
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6477 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-08-25 02:56:08 +00:00
Bart Van Assche 6c3bcc7214 Merge branch 'svn-trunk' 2015-08-04 22:13:35 -07:00
Bart Van Assche 7a9e1f1889 isert: Limit isert_nr_devs parameter to maximum we support
Signed-off-by: Yan Burman <yanb@mellanox.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6461 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-08-03 18:48:24 +00:00
Bart Van Assche 9105e9cf5d isert: Don't overwrite userspace if insufficient buffer is provided
Signed-off-by: Yan Burman <yanb@mellanox.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6460 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-08-03 18:46:16 +00:00
Bart Van Assche 38f43250c5 Merge branch 'svn-trunk' 2015-07-31 06:41:41 -07:00
Vladislav Bolkhovitin e5e54f312b iscsi-scst: Move old TM response dropping to preparing new response stage
The second TM request can come while the old one, response for which is
going to be delayed, is still being processed, hence no response
prepared yet, so the delayed response should be dropped on the stage of
the new response preparing. Otherwise in this place the old delayed
response will trigger BUG_ON().



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6456 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-07-31 01:09:58 +00:00
Bart Van Assche 9d77511dfe Merge branch 'svn-trunk' 2015-07-27 21:04:53 -07:00
Bart Van Assche 7a2d9043f6 isert: Fix use-after-free when work requests were submitted after drain_wr
We were submitting work requests sometimes after the drain_wr,
so we would try to process flushes on something that is already
destroyed. This can be seen with very high login/logout load.

Signed-off-by: Yan Burman <yanb@mellanox.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6428 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-07-27 15:26:09 +00:00
Bart Van Assche 4e92274317 Merge branch 'svn-trunk' 2015-07-14 18:30:41 -07:00
Bart Van Assche 6c0a869007 isert-scst: Linux kernel v4.2 ib_create_cq() build fix
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6427 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-07-14 23:57:42 +00:00
Bart Van Assche d05518f5bc isert-scst: Kernel v4.2 build fix
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6425 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-07-14 23:47:50 +00:00
Bart Van Assche 8eb3f31eea iscsi-scst: Fix parameter order in a debug statement
Signed-off-by: Alexey Obitotskiy <mobbitster@gmail.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6421 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-07-14 21:50:51 +00:00
Bart Van Assche afab78762d Merge branch 'svn-trunk' 2015-07-10 20:47:04 -07:00
Bart Van Assche ebcfc73439 isert: Allocate sge and wr structures dynamically
In order to be able to support large block sizes (larger than 512K),
we allocate required structured in a lazy fashion. This way we both support
large block sizes (over 512K and even over 1M). We also lower memory footprint
when smaller block sizes are used.

Signed-off-by: Yan Burman <yanb@mellanox.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6418 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-07-11 03:41:15 +00:00
Bart Van Assche 993f290908 isert-scst: Port this driver to RHEL 5
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6416 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-07-10 22:27:37 +00:00
Bart Van Assche b2cc848c36 Merge branch 'svn-trunk' 2015-07-03 06:51:11 -07:00
Vladislav Bolkhovitin 1656efe689 iscsi-scst: small post-r6315 cleanup
Avoid that rd_task declared when it is not used



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6408 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-07-03 04:21:52 +00:00
Bart Van Assche d4a360a903 Merge branch 'svn-trunk'
Conflicts:
	nightly/conf/nightly.conf
2015-06-27 22:21:52 -07:00
Bart Van Assche 75369451a5 isert-scst/Kconfig: Add InfiniBand dependency
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6402 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-25 14:12:54 +00:00
Bart Van Assche 6b7b48fa62 Merge branch 'svn-trunk' 2015-06-23 08:20:48 -07:00
Bart Van Assche 79c8bf1f7c iscsi-scst, isert-scst: One trace flags variable per kernel module
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6397 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-23 15:01:17 +00:00
Bart Van Assche c87e4e2c5e Merge branch 'svn-trunk' 2015-06-19 21:31:46 -07:00
Bart Van Assche f0e98ee4b2 isert-scst: Build fix for older kernel versions (< 2.6.29)
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6395 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-19 14:06:05 +00:00
Bart Van Assche 97d28a6fc8 Merge branch 'svn-trunk' 2015-06-17 05:51:43 -07:00
Bart Van Assche 46915ef3e5 iscsi-scst: Fix a syntax error
Preprocessor directives are not allowed in argument lists of a macro.
This patch reverts r6317.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6393 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-17 05:00:20 +00:00
Bart Van Assche 40a90a705d isert-scst: Add address length check in isert_listen_ioctl()
Detected by Coverity.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6365 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-17 00:19:27 +00:00
Bart Van Assche 26cda0eb38 iscsi-scst: Annotate fall-through cases for Coverity
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6364 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-17 00:18:23 +00:00
Bart Van Assche 63cb4a9d40 iscsi-scst: Fix indentation
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6363 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-17 00:09:23 +00:00
Bart Van Assche 612fac9874 isert: Declare a local function static
Detected by checkpatch.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6354 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-16 23:55:52 +00:00
Bart Van Assche eb10fe3f7d iscsi-scst: Surround complex values with parentheses
Detected by checkpatch.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6353 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-16 23:55:22 +00:00
Bart Van Assche f272064c12 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.
Since this message is confusing to SCST users, do not print a
warning if the put_page_callback patch has not been applied.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6340 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-16 23:10:28 +00:00
Bart Van Assche 6b3f45696a RHEL 7.1: Add put_page_callback patch
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6336 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-16 20:17:52 +00:00
Bart Van Assche 807c4eacf0 isert: Use break in default case
Detected by checkpatch.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6328 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-16 18:51:47 +00:00
Bart Van Assche 7c3b2c4ca6 iscsi-scst: Fix spelling in a source code comment
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6321 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-16 15:53:31 +00:00
Bart Van Assche 6ab09ab073 Merge branch 'svn-trunk'
Conflicts:
	www/handler_fileio_tgt.html
	www/scst_admin.html
	www/target_emulex.html
	www/target_fcoe.html
	www/target_ibmvscsi.html
	www/target_iscsi.html
	www/target_local.html
	www/target_lsi.html
	www/target_mvsas.html
	www/target_old.html
	www/target_qla2x00t.html
	www/target_srp.html
	www/targets.html
2015-06-16 06:43:56 -07:00
Vladislav Bolkhovitin 3e9eaf6b29 iscsi-scst: small post-r6315 cleanup
Avoid that rd_task when it is not used



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6317 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-16 01:43:26 +00:00
Bart Van Assche 50efe30317 Merge branch 'svn-trunk' 2015-06-15 18:22:57 -07:00
Bart Van Assche 7566e2ed71 Avoid that compiler warnings depend on the build mode
It is annoying that some warnings are only reported in release mode.
Modify scst_debug.h such that the compiler does not report variables
that are only used in debug builds as unused.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6315 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-15 22:15:07 +00:00
Bart Van Assche 15535bf648 iscsi-scst: Suppress a compiler warning
Avoid that the compiler complains that the variable 'pad_bytes'
is not used with CONFIG_LIBCRC32C=n.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6314 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-15 22:06:29 +00:00
Bart Van Assche 481b641e64 Merge branch 'svn-trunk' 2015-06-13 06:32:15 -07:00
Bart Van Assche 0d9d6a6f57 isert-scst: Fix in-tree build
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6312 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-12 16:15:45 +00:00
Bart Van Assche a2a22c0b95 isert-scst: Shorten the compiler include path
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6311 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-12 15:31:05 +00:00
Bart Van Assche e62155683e iscsi-scst: Fix a compiler warning for kernel versions >= 3.19
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@6310 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2015-06-12 15:29:56 +00:00