Commit Graph
8519 Commits
Author SHA1 Message Date
Bart Van Assche 9f3d3f4cad qla2xxx-32gbit: Warn if done() or free() are called on an already freed srb
Emit a warning when ->done or ->free are called on an already freed
srb. There is a hidden use-after-free bug in the driver which corrupts
the srb memory pool which originates from the cleanup callbacks.

An extensive search didn't bring any lights on the real problem. The
initial fix was to set both pointers to NULL and try to catch invalid
accesses. But instead the memory corruption was gone and the driver
didn't crash. Since not all calling places check for NULL pointer, add
explicitly default handlers. With this we workaround the memory
corruption and add a debug help.
    
Link: https://lore.kernel.org/r/20200908081516.8561-2-dwagner@suse.de
Reviewed-by: Martin Wilck <mwilck@suse.com>
Reviewed-by: Arun Easi <aeasi@marvell.com>
Signed-off-by: Daniel Wagner <dwagner@suse.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

See also upstream commit c0014f94218ea3a312f6235febea0d626c5f2154.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9249 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-28 19:08:48 +00:00
Bart Van Assche 93474d5f29 qla2x00t-32gbit: Fix the return value
A negative error code should be returned.

Link: https://lore.kernel.org/r/20200829075746.19166-1-tian.xianting@h3c.com
Acked-by: Nilesh Javali <njavali@marvell.com>
Signed-off-by: Xianting Tian <tian.xianting@h3c.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>

See also upstream commit e5f48ac42cc9 ("scsi: qla2xxx: Fix the return value").



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9248 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-28 17:59:51 +00:00
Bart Van Assche 7e12fdac01 qla2x00t-32gbit: Minimize diffs with the upstream code
See also upstream commit 62e9dd177732 ("scsi: qla2xxx: Change in PUREX to
handle FPIN ELS requests").



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9247 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-28 17:54:03 +00:00
Bart Van Assche 05fe750404 Merge branch 'svn-trunk' 2020-12-22 19:54:25 -08:00
Bart Van Assche f55541409c www: Fix HTML syntax
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9246 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-23 03:29:58 +00:00
Bart Van Assche ba5d3e94b9 www: Add more information about the SRP target driver
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9245 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-23 03:22:21 +00:00
Bart Van Assche 53cbbb2c94 www: Update the information about the SRP target driver
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9244 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-23 03:01:52 +00:00
Bart Van Assche 3b5f4e54da www: Remove information about target drivers that have been removed
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9243 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-23 02:55:47 +00:00
Bart Van Assche ad3c9e0071 www/downloads.html: Update latest release information
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9242 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-23 02:48:12 +00:00
Bart Van Assche 20e1827d54 Makefile: Add a target for building a single release archive
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9241 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-23 02:36:20 +00:00
Bart Van Assche ead177f479 SVN_TAGS: Add information about the 3.5.0 release
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9240 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-22 23:57:45 +00:00
Bart Van Assche 0071330e69 Merge branch 'svn-trunk' v3.5 2020-12-22 15:53:49 -08:00
Bart Van Assche 7c294b7648 scst/ChangeLog: Mention the qla2x00t-32gbit driver
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9238 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-22 23:53:40 +00:00
Bart Van Assche e4ae5ce20e Merge branch 'svn-trunk' 2020-12-22 15:50:59 -08:00
Bart Van Assche 21ea12d0de scstadmin: Fix the release-archive Makefile target
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9237 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-22 23:50:48 +00:00
Bart Van Assche 6ee007cb6e qla2x00t-32gbit: Fix the release-archive Makefile target
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9236 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-22 23:50:27 +00:00
Bart Van Assche 3885ef5ef7 qla2x00t-32gbit: Add a version number
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9235 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-22 23:48:48 +00:00
Bart Van Assche 71e25520ee scst/Makefile: Remove a superfluous backslash
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9234 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-22 23:46:25 +00:00
Bart Van Assche 0b3aad05f5 scripts/update-version: Also update the qla2x00t-32gbit version number
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9233 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-22 23:45:42 +00:00
Bart Van Assche c3e2637d09 Merge branch 'svn-trunk' 2020-12-22 14:59:17 -08:00
Bart Van Assche ed38dccfb4 scst/ChangeLog: Document that RHEL / CentOS 8.3 is supported
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9232 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-22 22:47:05 +00:00
Bart Van Assche 53e718a6a5 Merge branch 'svn-trunk' 2020-12-21 20:18:18 -08:00
Bart Van Assche d3c92ea7aa Bump the version number to 3.5.0
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9231 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-22 03:38:21 +00:00
Bart Van Assche 112e40b9ab Merge branch 'svn-trunk' 2020-12-21 15:59:43 -08:00
Bart Van Assche e3c8aedb2c scst_event: Fix the code that copies the CDB of the command to be aborted
I came across this accidentally while looking up the users of the
cmd_to_abort pointer.

Fixes: 297d268a7a ("SCST events infrastructure"; r6574)



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9230 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-21 23:58:29 +00:00
Bart Van Assche 3d3c6447df Merge branch 'svn-trunk' 2020-12-21 14:08:58 -08:00
Bart Van Assche 5826f2c8de scst: Fix two bugs in error paths
Wait for percpu_ref_kill() to finish before calling percpu_ref_exit().
This patch fixes the following complaint:

WARNING: CPU: 7 PID: 56710 at lib/percpu-refcount.c:110 percpu_ref_exit+0x28/0x30
RIP: 0010:percpu_ref_exit+0x28/0x30
Call Trace:
 scst_free_device+0x89/0x120 [scst]
 scst_register_virtual_device_node+0x27a/0x4f0 [scst]
 vdisk_add_blockio_device+0x1fa/0x3d0 [scst_vdisk]
 scst_devt_mgmt_store_work_fn+0x21b/0x2d0 [scst]
 sysfs_work_thread_fn+0xef/0x400 [scst]
 kthread+0x112/0x130

Fixes: c5ff6adeae ("Fix unloading of scst_vdisk while I/O is ongoing"; r9048)



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9229 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-21 22:06:06 +00:00
Bart Van Assche e3d187f6af scripts/kernel-functions: Apply kernel patches more selectively
Only try to apply kernel patches that should apply such that 'patch' does
not report any error messages that some patches fail to apply.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9228 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-21 20:56:58 +00:00
Bart Van Assche d6722263ef Merge branch 'svn-trunk' 2020-12-21 11:54:16 -08:00
Bart Van Assche cf4a11725a scst: Unbreak the non-RHEL build
This patch is a fix for r9221.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9227 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-21 19:54:08 +00:00
Bart Van Assche f409f3c0f4 Merge branch 'svn-trunk' 2020-12-21 11:39:43 -08:00
Bart Van Assche ff294b83e7 qla2x00t: Build fix for RHEL / CentOS 8.3
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9226 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-21 19:21:28 +00:00
Bart Van Assche 6cbadbf293 Merge branch 'svn-trunk' 2020-12-20 14:35:05 -08:00
Bart Van Assche 8ddd93ee2a scripts/kernel-functions: Remove an UEK R4 patch
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9225 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-20 22:16:51 +00:00
Bart Van Assche 22952ce0a2 nightly build: Remove UEK R4
SCST does not build against UEK R4.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9224 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-20 21:51:19 +00:00
Bart Van Assche 47f50e0948 Merge branch 'svn-trunk' 2020-12-20 13:41:43 -08:00
Bart Van Assche 21c519918d regression tests: Disable branch profiling in the kernel configuration
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9223 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-20 21:41:19 +00:00
Bart Van Assche b5917d9432 Merge branch 'svn-trunk' 2020-12-19 20:27:31 -08:00
Bart Van Assche 245920e759 nightly build: Add the CentOS 8.3 kernel
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9222 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-20 04:26:58 +00:00
Bart Van Assche 5f2e23c23b scst, scst_local: Port to RHEL / CentOS 8.3
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9221 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-20 04:26:40 +00:00
Bart Van Assche ff728e2055 Merge branch 'svn-trunk' 2020-12-19 18:40:41 -08:00
Bart Van Assche ab65209f50 scripts/run-regression-tests: Improve support for UEK kernels
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9220 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-20 02:40:29 +00:00
Bart Van Assche e625100012 Merge branch 'svn-trunk' 2020-12-19 18:39:20 -08:00
Bart Van Assche 81ecb3bd6a scripts: Remove all references to the mpt driver
Additionally, make scripts/run-regression-tests build the qla2x00t-32gbit
driver.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9219 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-20 02:39:11 +00:00
Bart Van Assche 3a39db9932 Merge branch 'svn-trunk' 2020-12-19 18:23:09 -08:00
Bart Van Assche 5e2e7bca82 scripts/run-regression-tests: More Linux kernel v5.10 fixes
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9218 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-20 02:22:47 +00:00
Bart Van Assche 6c37ea9023 scripts/run-regression-tests: Fix the build against Linux kernel v5.10
From the Linux kernel help text:

  modules_prepare - Set up for building external modules


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9217 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-20 02:16:20 +00:00
Bart Van Assche e1f9a517c8 Port Kconfig files to kernel v5.9
Change '---help---' into 'help'. See also Linux kernel commit f70f74d15ca8
("kconfig: remove '---help---' support") # v5.9.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9216 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-20 02:07:40 +00:00
Bart Van Assche 7657f17bf5 scripts/kernel-functions: Source code cleanup
Fix a few shellcheck warnings, swap two if-statements and add a few comments.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9215 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-12-20 00:59:42 +00:00
Bart Van Assche ff861a35f8 Merge branch 'svn-trunk' 2020-12-19 09:51:13 -08:00