Bart Van Assche
bed2b0db76
Merge branch 'svn-trunk'
2020-07-18 19:55:41 -07:00
Bart Van Assche
0a0a1bebe1
Ignore */conftest/*/build-output*.txt files
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9057 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-19 02:55:33 +00:00
Bart Van Assche
28a83c549c
Merge branch 'svn-trunk'
2020-07-18 19:29:01 -07:00
Bart Van Assche
65d05a86d5
ib_srpt: Fix ARM compilation
...
The first argument of do_div() must have type uint64_t on the ARM architecture.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9056 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-19 01:26:37 +00:00
Bart Van Assche
0f3c919200
Merge branch 'svn-trunk'
2020-07-18 18:20:08 -07:00
Bart Van Assche
a7446766c5
isert-scst Makefile: Add the SCST Module.symvers file
...
This patch fixes a linker error when cross-compiling for ARM on x86_64.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9055 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-19 01:19:49 +00:00
Bart Van Assche
7569ddaf2e
Makefiles: Remove -Wextra
...
Since not all kernel header files are compatible with -Wextra, remove -Wextra.
To enable -Wextra, build SCST with W=1.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9054 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-19 01:18:24 +00:00
Bart Van Assche
f3cbdcea03
scst.spec.in: Set ${KDIR} and ${KVER} correctly
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9053 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-19 01:16:24 +00:00
Bart Van Assche
f3b97349a0
Merge branch 'svn-trunk'
2020-07-18 18:13:47 -07:00
Bart Van Assche
cf909e3e16
Makefiles: If both KDIR and KVER have been set, preserve KDIR
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9052 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-19 00:00:49 +00:00
Bart Van Assche
52ee6089f5
Document how to cross-compile SCST
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9051 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-18 23:59:34 +00:00
Bart Van Assche
62a884cef0
Merge branch 'svn-trunk'
2020-07-12 16:36:30 -07:00
Bart Van Assche
c5ff6adeae
Fix unloading of scst_vdisk while I/O is ongoing
...
Call scst_free_device() directly instead of when the final dev->refcnt
put happens. Call scst_assign_dev_handler(dev, &scst_null_devtype) after
processing of I/O commands for 'dev' has finished. Hold the RCU read lock
while invoking percpu_ref_get(&dev->refcnt) in the LUN translation code.
This patch fixes the following crash when scst_vdisk is unloaded while I/O
is ongoing:
BUG: unable to handle kernel NULL pointer dereference at 0000000000000368
IP: [<ffffffffc09a80b3>] blockio_exec+0x43/0x250 [scst_vdisk]
[<ffffffffc14fea1b>] scst_do_real_exec+0x5b/0x240 [scst]
[<ffffffffc150172f>] scst_exec_check_blocking+0x12f/0x250 [scst]
[<ffffffffc1503791>] scst_process_active_cmd+0x91/0x1640 [scst]
Fixes: 3f2d50b589 ("scst: Do not suspend command processing when deleting a device")
Reported-by: Rongqing Tu <rongqing.tu@hpe.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9048 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-12 23:35:03 +00:00
Bart Van Assche
34de8cd104
scst: Introduce a local variable
...
This patch does not change any functionality.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9047 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-12 23:32:00 +00:00
Bart Van Assche
c7788ee7ac
/etc/init.d/scst: Unload target modules first
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9046 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-12 23:31:34 +00:00
Bart Van Assche
fd059b135f
Fix handling of MODE SENSE commands in scst_pre_dev_done()
...
Report the "write protect" flag correctly for read-only devices.
Reported-by: Krzysztof Rusek <rusek@9livesdata.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9043 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-08 14:15:20 +00:00
Bart Van Assche
cfa5a072e4
Merge branch 'svn-trunk'
2020-07-04 19:27:05 -07:00
Bart Van Assche
4b5d66239e
scst/include/backport.h: Improve the percpu-refcount backport further
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9042 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-05 02:26:59 +00:00
Bart Van Assche
b329bb56ee
Merge branch 'svn-trunk'
2020-07-04 19:23:56 -07:00
Bart Van Assche
30b8e13581
fcst/Makefile_in-tree: Remove this file since it has been renamed into fcst/Kbuild
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9041 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-05 02:23:45 +00:00
Bart Van Assche
f898f8bd54
Merge branch 'svn-trunk'
2020-07-04 19:16:35 -07:00
Bart Van Assche
6f49179491
Makefiles: Use -Wextra instead of -W
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9040 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-05 02:14:28 +00:00
Bart Van Assche
d6fd03107f
Split Makefiles: move kernel build rules into Kbuild files
...
This patch makes the Makefiles easier to read.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9039 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-05 02:13:40 +00:00
Bart Van Assche
47403656ee
Make 'make clean' remove all build files
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9038 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-05 02:08:55 +00:00
Bart Van Assche
212fd12cba
iscsi-scst, srpt: Improve run_conftest
...
Add -Wno-deprecated-declarations to the compiler flags for RHEL and CentOS.
Save the output of the build process such that it can be inspected easily.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9037 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-05 02:06:21 +00:00
Bart Van Assche
2650ab25f9
scst/include/backport.h: Fix the network namespace backport
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9036 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-07-05 02:02:38 +00:00
Bart Van Assche
4e6d682552
Merge branch 'svn-trunk'
2020-06-30 12:39:37 -07:00
Bart Van Assche
8383e47f25
nightly build: Update kernel versions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9035 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-29 15:25:07 +00:00
Bart Van Assche
77a3a184fb
Merge branch 'svn-trunk'
2020-06-29 08:16:08 -07:00
Bart Van Assche
ffabb52e9b
scripts/specialize-patch: Strip trailing whitespace
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9034 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-29 15:15:55 +00:00
Bart Van Assche
ea2dcf9980
Merge branch 'svn-trunk'
2020-06-21 09:32:05 -07:00
Bart Van Assche
bb43fbc468
scst/src/Makefile: Run /usr/sbin/weak-modules --remove-kernel before install
...
Apparently RHEL 8 / CentOS 8 create soft links in the weak-modules to SCST
directory but do not update these links correctly after having upgraded to
a newer kernel version and after having reinstalled SCST. Hence remove all
weak module links before installing SCST.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9033 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-21 16:31:59 +00:00
Bart Van Assche
c0804fe6a8
Merge branch 'svn-trunk'
2020-06-21 09:28:11 -07:00
Bart Van Assche
a79655c1eb
scst/include/backport.h: Improve kobj_ns_grab_current() backport
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9032 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-21 16:28:01 +00:00
Bart Van Assche
f8ea030ee1
scst/include/backport.h: Backport more percpu_ref functionality
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9031 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-21 16:27:28 +00:00
Bart Van Assche
7ecad01e71
scst, percpu_ref backport: For older kernels, use atomic instead of atomic_long
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9030 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-21 16:27:05 +00:00
Bart Van Assche
a15b910b02
Merge branch 'svn-trunk'
2020-06-21 09:08:55 -07:00
Bart Van Assche
bfbc3ac6e7
scripts/specialize-patch: Improve RHEL / CentOS support
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9029 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-21 16:08:48 +00:00
Bart Van Assche
09d4e1e443
scripts/kernel-functions: Improve gcc 10 support
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9028 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-21 16:08:22 +00:00
Bart Van Assche
8174bad3da
scripts/kernel-functions: Make it possible to build older kernels with gcc 10
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9027 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-21 16:07:16 +00:00
Bart Van Assche
ff9406cbd8
Merge branch 'svn-trunk'
2020-06-16 18:36:04 -07:00
Bart Van Assche
f7b704ee99
scst, iscsi-scst: Port to RHEL / CentOS 8.2
...
Apparently the Linux kernel v4.20 iov_iter_kvec() function has been
backported to RHEL / CentOS 8.2. This patch fixes the following kernel
warning:
WARNING: CPU: 26 PID: 21141 at lib/iov_iter.c:1083 iov_iter_kvec+0x25/0x30
Call Trace:
fileio_exec_async+0x216/0x3a0 [scst_vdisk]
fileio_exec_write+0x3b9/0x450 [scst_vdisk]
vdev_do_job+0x34/0xc0 [scst_vdisk]
scst_do_real_exec+0x54/0x100 [scst]
scst_exec_check_blocking+0xbb/0x210 [scst]
scst_process_active_cmd+0x64d/0x1550 [scst]
scst_cmd_thread+0x170/0x5a0 [scst]
kthread+0x112/0x130
ret_from_fork+0x35/0x40
See also https://github.com/bvanassche/scst/issues/26 .
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9026 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-17 01:35:53 +00:00
Bart Van Assche
39735956c7
nightly build: Add RHEL / CentOS 8.2 kernel
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9025 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-17 01:33:18 +00:00
Bart Van Assche
4682647ae5
Merge branch 'svn-trunk'
2020-06-16 10:39:45 -07:00
Bart Van Assche
de023fe1fe
scst/include/backport.h: Fix the build against CentOS 8.2
...
See also https://github.com/bvanassche/scst/issues/25 .
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9024 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-16 17:39:35 +00:00
Bart Van Assche
6327055e26
INSTALL.md: Remove trailing whitespace
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9023 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-16 17:39:09 +00:00
Bart Van Assche
145e878b1f
Merge branch 'svn-trunk'
2020-06-13 10:45:43 -07:00
Bart Van Assche
3a957d352a
qla2xxx: Do not log message when reading port speed via sysfs
...
Calling ql_log() inside qla2x00_port_speed_show() is causing messages to be
output to the console for no particularly good reason. The sysfs read
routine should just return the information to userspace. The only reason
to log a message is when the port speed actually changes, and this already
occurs elsewhere.
Link: https://lore.kernel.org/r/20200504175416.15417-1-emilne@redhat.com
Fixes: 4910b524ac9e ("scsi: qla2xxx: Add support for setting port speed")
Cc: <stable@vger.kernel.org > # v5.1+
Reviewed-by: Lee Duncan <lduncan@suse.com >
Reviewed-by: Laurence Oberman <loberman@redhat.com >
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Ewan D. Milne <emilne@redhat.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit fb9024b0646939e59d8a0b6799b317070619795a upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9022 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-13 17:42:10 +00:00
Bart Van Assche
703b35fcbe
qla2xxx: Delete all sessions before unregister local nvme port
...
Delete all sessions before unregistering local nvme port. This allows nvme
layer to decrement all active rport count down to zero. Once the count is
down to zero, nvme would call qla to continue with the npiv port deletion.
PID: 27448 TASK: ffff9e34b777c1c0 CPU: 0 COMMAND: "qaucli"
0 [ffff9e25e84abbd8] __schedule at ffffffff977858ca
1 [ffff9e25e84abc68] schedule at ffffffff97785d79
2 [ffff9e25e84abc78] schedule_timeout at ffffffff97783881
3 [ffff9e25e84abd28] wait_for_completion at ffffffff9778612d
4 [ffff9e25e84abd88] qla_nvme_delete at ffffffffc0e3024e [qla2xxx]
5 [ffff9e25e84abda8] qla24xx_vport_delete at ffffffffc0e024b9 [qla2xxx]
6 [ffff9e25e84abdf0] fc_vport_terminate at ffffffffc011c247 [scsi_transport_fc]
7 [ffff9e25e84abe28] store_fc_host_vport_delete at ffffffffc011cd94 [scsi_transport_fc]
8 [ffff9e25e84abe70] dev_attr_store at ffffffff974b376b
9 [ffff9e25e84abe80] sysfs_kf_write at ffffffff972d9a92
10 [ffff9e25e84abe90] kernfs_fop_write at ffffffff972d907b
11 [ffff9e25e84abec8] vfs_write at ffffffff9724c790
12 [ffff9e25e84abf08] sys_write at ffffffff9724d55f
13 [ffff9e25e84abf50] system_call_fastpath at ffffffff97792ed2
RIP: 00007fc0bd81a6fd RSP: 00007ffff78d9648 RFLAGS: 00010202
RAX: 0000000000000001 RBX: 0000000000000022 RCX: 00007ffff78d96e0
RDX: 0000000000000022 RSI: 00007ffff78d94e0 RDI: 0000000000000008
RBP: 00007ffff78d9440 R8: 0000000000000000 R9: 00007fc0bd48b2cd
R10: 0000000000000017 R11: 0000000000000293 R12: 0000000000000000
R13: 00005624e4dac840 R14: 00005624e4da9a10 R15: 0000000000000000
ORIG_RAX: 0000000000000001 CS: 0033 SS: 002b
Link: https://lore.kernel.org/r/20200331104015.24868-4-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Quinn Tran <qutran@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit c48f849d3f7a4ec1025105f446e29d395c4dcc2f upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9021 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-13 17:41:34 +00:00
Bart Van Assche
6bbee1b222
qla2xxx: Fix hang when issuing nvme disconnect-all in NPIV
...
In NPIV environment, a NPIV host may use a queue pair created by base host
or other NPIVs, so the check for a queue pair created by this NPIV is not
correct, and can cause an abort to fail, which in turn means the NVME
command not returned. This leads to hang in nvme_fc layer in
nvme_fc_delete_association() which waits for all I/Os to be returned, which
is seen as hang in the application.
Link: https://lore.kernel.org/r/20200331104015.24868-3-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com >
Signed-off-by: Arun Easi <aeasi@marvell.com >
Signed-off-by: Nilesh Javali <njavali@marvell.com >
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com >
[ commit 45a76264c26fd8cfd0c9746196892d9b7e2657ee upstream ]
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9020 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-06-13 17:40:49 +00:00