Commit Graph

5633 Commits

Author SHA1 Message Date
Bart Van Assche
eeed9fc41e scst: Introduce the function scst_set_cmd_state()
This patch does not change any functionality.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7482 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-09-27 02:28:16 +00:00
Bart Van Assche
f1357f410e scst: Remove the existing latency measurement infrastructure
Remove the existing latency measurement infrastructure since it will be
replaced by a new and more powerful latency measurement infrastructure.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7481 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-09-27 02:25:43 +00:00
Bart Van Assche
2231b598c6 scst: Make command state numbers consecutive
This makes it easier for the compiler to optimize command state
switch statements.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7480 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-09-27 02:24:38 +00:00
Bart Van Assche
75b78880d0 scst: Fix block request allocation for kernel v4.18 and later
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7479 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-09-27 02:23:57 +00:00
Bart Van Assche
e2e076cb84 qla2x00t: Add #include <linux/vmalloc.h>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7478 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-09-27 02:22:57 +00:00
Bart Van Assche
b5c7df62aa qla2x00t: Fix build against kernel versions >= v4.2
Reported-by: Pascal de Bruijn <p.debruijn@unilogic.nl>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7476 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-09-26 03:48:12 +00:00
Bart Van Assche
b1df825bbe qla2x00t: Avoid using higher order page allocations
Avoid that qla2x00_get_node_name_list() fails as follows:

kworker/0:2: page allocation failure: order:4, mode:0x240c0c0(GFP_KERNEL|__GFP_COMP|__GFP_ZERO)
CPU: 0 PID: 101 Comm: kworker/0:2 Not tainted 4.9.124-scst #3
Hardware name: Supermicro SYS-1028U-E1CR4+/X10DRU-i+, BIOS 3.1 06/08/2018
Workqueue: events q2t_del_sess_work_fn [qla2x00tgt]
 ffffa0954357f9e8 ffffffff9c2c2fd8 ffffffff9c721178 0000000000000001
 ffffa0954357fa70 ffffffff9c13eb7a 0240c0c00240c0c0 ffffffff9c721178
 ffffa0954357fa10 ffff9e6700000010 ffffa0954357fa80 ffffa0954357fa30
Call Trace:
 dump_stack+0x4d/0x65
 warn_alloc+0x13a/0x170
 __alloc_pages_nodemask+0x486/0xd70
 alloc_pages_current+0x6f/0x100
 kmalloc_order+0x18/0x40
 kmalloc_order_trace+0x24/0xa0
 __kmalloc+0x163/0x190
 qla2x00_get_node_name_list+0x249/0x3e0 [qla2xxx]
 q2t_del_sess_work_fn+0xd8/0x4a0 [qla2x00tgt]
 process_one_work+0x14f/0x440
 worker_thread+0x48/0x4e0
 kthread+0xd9/0xf0
 ret_from_fork+0x22/0x30

This is a slightly modified version of a patch from Pascal de Bruijn
<p.debruijn@unilogic.nl>.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7475 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-09-23 03:03:38 +00:00
Bart Van Assche
6619a1a6ae scripts/specialize-patch: Follow-up for the kernel v4.19 port
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7474 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-28 01:36:38 +00:00
Bart Van Assche
51ab2e8ebd scst: Port to Linux kernel v4.19
In Linux kernel v4.19 the function scsi_execute() has been replaced by the
following macro:

    /* Make sure any sense buffer is the correct size. */
    #define scsi_execute(sdev, cmd, data_direction, buffer, bufflen, sense,        \
                        sshdr, timeout, retries, flags, rq_flags, resid)   \
    ({                                                                     \
           BUILD_BUG_ON((sense) != NULL &&                                 \
                        sizeof(sense) != SCSI_SENSE_BUFFERSIZE);           \
           __scsi_execute(sdev, cmd, data_direction, buffer, bufflen,      \
                          sense, sshdr, timeout, retries, flags, rq_flags, \
                          resid);                                          \
    })

This macro only accepts a sense buffer that has been declared as an array
but no sense buffers that have been passed as a pointer to a function. To
avoid build errors, convert scst_scsi_execute() from a function into a macro.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7473 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-27 03:26:38 +00:00
Bart Van Assche
7d13a9430e isert-scst: Port to Linux kernel v4.19
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7472 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-27 03:20:51 +00:00
Bart Van Assche
dab69e7d60 ib_srpt: Port to Linux kernel v4.19
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7471 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-27 03:19:47 +00:00
Bart Van Assche
73597a8983 nightly build: Update kernel versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7470 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-23 02:02:55 +00:00
Bart Van Assche
ee94569268 nightly build: Update kernel versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7469 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-09 14:05:04 +00:00
Vladislav Bolkhovitin
74b2ae36e2 qla2x00t: fix possible crash with DLM PR sync enabled
Reported-By: Aaron Knister <aaron.s.knister@nasa.gov>
Analyzed-by: Bart Van Assche <bvanassche@acm.org>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7468 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-08 22:25:43 +00:00
Bart Van Assche
546c6c6ebe qla2x00t: Various coding style fixes
This patch does not change any functionality.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7467 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-08 04:14:54 +00:00
Bart Van Assche
f1463d0606 scst: Leave a blank line after declarations
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7466 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-08 04:13:42 +00:00
Vladislav Bolkhovitin
166dac3bb9 Web updates
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7465 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-04 00:45:33 +00:00
Vladislav Bolkhovitin
16b4f4aba5 scst: cleanup follow up for r7449
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7464 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-03 04:23:36 +00:00
Bart Van Assche
acc205d174 qla2x00t: Use %zd instead of %Zd
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7463 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-03 03:38:23 +00:00
Bart Van Assche
1a4f34578d qla2x00t: Improve conformance with the coding standard further
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7462 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-03 03:37:32 +00:00
Bart Van Assche
8c2a32f3af qla2x00t: Insert a space where the coding standard requires one
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7461 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-03 03:30:20 +00:00
Bart Van Assche
10961c3dfd qla2x00t: Insert a space where the coding standard requires one
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7460 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-03 03:25:06 +00:00
Bart Van Assche
1ac05eb695 qla2x00t: Remove spaces where these are not allowed by the coding standard
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7459 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-03 03:19:17 +00:00
Bart Van Assche
d07888d5f9 qla2x00t: Change return (x) into return x
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7458 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-03 03:09:58 +00:00
Bart Van Assche
1b18174c12 qla2x00t: Fix if/else coding style
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7457 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-03 03:01:04 +00:00
Bart Van Assche
30cf7b4bda qla2x00t: Fix more checkpatch complaints about whitespace
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7456 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-02 04:47:08 +00:00
Bart Van Assche
1c4649556d qla2x00t: Do not initialise globals/statics to 0. Detected by checkpatch.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7455 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-02 04:44:00 +00:00
Bart Van Assche
30c84b1282 qla2x00t: Do not initialise globals/statics to 0. Detected by checkpatch.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7454 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-02 04:42:42 +00:00
Bart Van Assche
5f478050ae qla2x00t: Fix checkpatch complaints about using spaces for indentation
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7453 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-02 04:41:04 +00:00
Bart Van Assche
a6d7968bd9 qla2x00t: Avoid that checkpatch complains that (foo*) should be (foo *)
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7452 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-02 04:27:58 +00:00
Bart Van Assche
8c3a885e4d qla2x00t: Fix spelling errors
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7451 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-02 04:19:35 +00:00
Bart Van Assche
458cf2ee00 scst/include/scst.h: Port to Linux kernel v4.18
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7450 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-02 03:58:47 +00:00
Bart Van Assche
6dc06a3cde scst, isert-scst: Revert the temporary kernel v4.16 workarounds
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7449 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-01 04:44:20 +00:00
Bart Van Assche
2c4d50d067 scst/kernel/in-tree/Makefile.dev_handlers: Make sure that the CONFIG_SCST_* symbols are honored
This patch is based on a patch from Pascal de Bruijn.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7448 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-01 04:29:10 +00:00
Bart Van Assche
8f8f055dfa scst dev_handlers Makefile: Simplify this Makefile
None of the CONFIG_SCST_* symbols are defined in the regular SCST build.
Hence remove the rules that depend on these symbols.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7447 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-01 04:27:57 +00:00
Vladislav Bolkhovitin
4483ecf49a vdisk: Fix compilation for older compilers
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7446 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-08-01 02:36:52 +00:00
Bart Van Assche
e8c99bf813 scst: Simplify blk_make_request() and blk_map_kern_sg()
For kernel versions >= 4.11.0, pass REQ_OP_SCSI_* as second argument
to blk_get_request() instead of READ or WRITE and setting REQ_OP_SCSI_*
later. For kernels < 4.11.0, instead of calling blk_rq_set_block_pc()
directly, call it indirectly through scsi_req_init().


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7445 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-29 04:43:50 +00:00
Bart Van Assche
b1b5e8e497 isert-scst: Avoid that building against MOFED fails with "Unknown symbol backport_dependency_symbol"
Reported-by: Carsten Aulbert <carsten.aulbert@aei.mpg.de>
Signed-off-by: Sergey Gorenko <sergeygo@mellanox.com>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7444 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-24 03:17:05 +00:00
Bart Van Assche
d67f20abfb scst/include/backport.h: Unbreak the build for kernel version 2.6.30 and older
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7443 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-24 02:38:35 +00:00
Bart Van Assche
6864e0b759 scripts/run-regression-tests: Include the qla2xxx driver
Make sure that not only the qla2x00tgt but also the qla2xxx_scst driver
gets built when scripts/run-regression-tests is run.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7442 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-23 04:32:28 +00:00
Bart Van Assche
30d36bbfe6 scripts/generate-kernel-patch: Make the patch format more standard
Make sure that both paths in the diff header have the same number of
components. This patch does not change the result of applying a patch
generated by this script.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7441 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-23 04:31:00 +00:00
Bart Van Assche
953b86a9a2 scripts/specialize-patch: Add a comment
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7440 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-23 04:29:55 +00:00
Bart Van Assche
1c1693d06b qla2x00t: Port to Linux kernel v4.17
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7439 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-23 04:29:35 +00:00
Bart Van Assche
eb2b6f6ccf qla2xxx: Simplify the kernel v4.11 port
This patch does not change any functionality.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7438 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-23 04:25:48 +00:00
Bart Van Assche
cf4c873849 qla2x00t: Introduce set_bsg_result()
This patch does not change any functionality.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7437 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-23 04:25:20 +00:00
Bart Van Assche
b6949a24b1 qla2xxx: Fix two potential buffer overflows
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7436 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-23 04:24:16 +00:00
Bart Van Assche
4c01448dfa iscsi-scst: Simplify iscsi_get_initiator_port_transport_id()
From the snprintf() man page:
    
If n is zero, nothing shall be written and s may be a null pointer.

This patch does not change any functionality.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7435 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-23 04:23:26 +00:00
Bart Van Assche
cf843cecf3 scst, ib_srpt, ibmvstgt: Swap Module.symvers detection logic
Ensure that Module.symvers is used when building against an incompletely
built kernel tree.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7434 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-23 04:22:52 +00:00
Bart Van Assche
d0f4afe2ec scst/include/backport.h: Avoid that the timer_setup() backport triggers a warning
Avoid that gcc 8 reports the following warning for the timer_setup() backport:
    
warning: cast between incompatible function types from 'void (*)(struct timer_list *)' to 'void (*)(long unsigned int)' [-Wcast-function-type]
  (_timer)->function = (void (*)(unsigned long))(_fn); \


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7433 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-23 04:21:32 +00:00
Bart Van Assche
3ec56f3bde scst/include/backport.h: Sort #include directives alphabetically
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7432 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-07-23 04:20:56 +00:00