Commit Graph
562 Commits
Author SHA1 Message Date
Bart Van Assche 6fde88d57b scst, qla2x00t: Use pr_warn() instead of pr_warning()
pr_warning() has been removed from kernel v5.5. Hence use pr_warn() instead
of pr_warning().


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8697 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-12-23 18:54:35 +00:00
Bart Van Assche 60bf4671a4 scst: Change static const char * into static const char* const
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8696 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-12-23 18:53:43 +00:00
Bart Van Assche a169500590 Makefiles: Use KBUILD_EXTRA_SYMBOLS instead of copying Module.symvers
Copying Module.symvers is the oldest supported method for building external
kernel modules that depend on another external kernel module. Since support
for that method will be removed from Linux kernel v5.5, use
KBUILD_EXTRA_SYMBOLS instead to specify the external symbols SCST kernel
modules depend on. Support for KBUILD_EXTRA_SYMBOLS was introduced in
upstream kernel v2.6.26 so this patch drops support for kernels before
v2.6.26.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8686 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-12-16 23:29:42 +00:00
Bart Van Assche d0183001e4 Makefiles: Remove the $(BUILD_INI) variable
Since the BUILD_INI variable is set but not used, remove it.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8685 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-12-16 21:31:30 +00:00
Bart Van Assche ecaab978f0 scst, scstadmin, ...: Bump the version number to 3.5.0-pre
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8683 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-12-06 05:28:56 +00:00
Bart Van Assche fa156aa40d scripts/update-version: Fix the code for updating the scstadmin version number
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8681 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-12-04 05:00:49 +00:00
Bart Van Assche ce557f2f1c scst, fcst, iscsi-scst, srpt, ...: Bump version number to 3.4.0
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8674 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-12-03 04:22:16 +00:00
Bart Van Assche f22d4bb63b scst, fcst, iscsi-scst, qla2x00t, srpt: Add module namespace support
This patch adds support for kernel module namespaces. This patch is essential
when using SCST in combination with kernel version v5.4 or later.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8673 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-11-30 00:54:20 +00:00
Bart Van Assche 9add460430 Suppress module signing error messages
Suppress the following error messages:

- SSL error:02001002:system library:fopen:No such file or directory: crypto/bio/bss_file.c:72
- SSL error:2006D080:BIO routines:BIO_new_file:no such file: crypto/bio/bss_file.c:79
sign-file: certs/signing_key.pem: No such file or directory

 


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8596 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-09-29 22:33:03 +00:00
Bart Van Assche 84725029ce scst: Add support for signing SCST kernel modules
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8593 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-09-29 04:42:40 +00:00
Bart Van Assche be309a2e31 scst: Port to SLES 15
Fixes: https://sourceforge.net/p/scst/tickets/29/.

Untested.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8588 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-09-25 03:33:46 +00:00
Bart Van Assche f6371c5d5e Makefiles: Run depmod also on Ubuntu systems after module installation
Fixes: e902f79ecf ("kernel module installation: Skip "depmod" when building an RPM"; r5612)



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8582 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-09-15 00:29:55 +00:00
Bart Van Assche 7ef1a7ea89 qla2x00t*: Declare PCI bus mode speed name arrays const
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8416 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-06-05 20:49:33 +00:00
Bart Van Assche 5c2147135c qla2x00t: Use strlcpy() and snprintf() instead of strncpy()
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8387 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-05-27 22:17:08 +00:00
Bart Van Assche 3eedf81cdb qla2x00t: Always check the return value of qla2x00_eh_wait_for_pending_commands()
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8385 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-05-27 22:13:35 +00:00
Bart Van Assche bd051656d0 qla2x00t: Declare fourth qla2x00_set_model_info() argument const
This patch does not change any functionality.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8382 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-05-27 22:09:07 +00:00
Bart Van Assche e851438472 qla2x00t: Improve coding style conformance
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8358 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-05-09 16:29:24 +00:00
Bart Van Assche 22f1132073 Makefiles: Rework build mode switching
Move the build_mode file from the top level into the scst directory. Write
build mode defines into scst/include/build_mode.h and include that file
directly or indirectly in all source files that depend on these #defines.
This approach has the advantage that "make clean" does no longer has to
be run when switching between build modes because the kernel build system
recognizes build_mode.h as a dependency and triggers a rebuild of all
source files that directly or indirectly include the build_mode.h header
file.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8347 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-05-05 18:19:38 +00:00
Bart Van Assche 33f2f4a064 Makefiles: Only read the build_mode file if building inside the SCST tree
This patch avoids that the build_mode file is read when applying the
generate-kernel-patch output to the kernel tree and when building the
kernel tree.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8272 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-04-23 17:11:26 +00:00
Bart Van Assche 2f0fbe66ff qla2x00t*: Simplify Makefiles
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8254 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-04-18 01:52:39 +00:00
Bart Van Assche 1c65ca5dc1 qla2x00t-32gbit: Complain loudly about reference count underflow
Reference undercount underflow is a serious issue so complain loudly
about it.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8187 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-04-13 22:50:45 +00:00
Bart Van Assche de28843d9f Makefiles: Simplify Module.symvers handling
This patch does not change any functionality.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8122 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-31 21:13:13 +00:00
Bart Van Assche 0dceefe878 qla2x00t, scripts: Introduce download_and_extract_kernel_tree()
This patch does not change any functionality.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8117 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-31 16:28:44 +00:00
Bart Van Assche 0bc77ddfd2 qla2x00t, regression tests: Move QLogic target code
Move the QLogic target code from drivers/scst/qla2x00-target/ to
drivers/scsi/qla2xxx/.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8084 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-26 02:03:17 +00:00
Bart Van Assche 0221741457 qla2x00t: Remove instructions to rebuild the kernel
Since the zero-copy patch is no longer supported it is no longer necessary
to rebuild the kernel in order to use SCST.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8081 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-25 22:51:39 +00:00
Bart Van Assche 32261be1d8 qla2x00t/qla2x00-target/Makefile: Fix the path from where the SCST Modules.symvers file is read
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8080 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-25 22:36:03 +00:00
Bart Van Assche dc7e039124 Makefiles: Remove most instances of $(SCST_INC_DIR)
Move the $(SCST_INC_DIR) definitions from the out-of-tree sections into
the in-kernel sections. Since SCST is now distributed as a single tar
archive, only support in-tree builds with $(SCST_INC_DIR) and $(SCST_DIR).


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8079 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-25 22:10:21 +00:00
Bart Van Assche 70d3c72779 Makefiles: Use ccflags-y instead of EXTRA_CFLAGS
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8076 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-25 19:56:17 +00:00
Bart Van Assche 74e5b31b95 Makefiles: Use cc-option instead of enable-Wextra
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8075 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-25 19:55:15 +00:00
Bart Van Assche 623d4e6d0a Makefiles: Use build_mode instead of modifying the Makefile when switching the build mode
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8074 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-25 19:53:39 +00:00
Bart Van Assche 87d82bfa8f Remove documentation references to procfs
Now that procfs has been removed, remove the references to procfs from
the documentation.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8000 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-02 20:06:25 +00:00
Bart Van Assche 08e532715d Remove procfs support
Since all RHEL/CentOS 5 users have upgraded to a newer version, procfs
support is no longer necessary. Hence remove procfs support. This patch
has been generated as follows:

git grep -lw CONFIG_SCST_PROC iscsi-scst qla2x00t scst scst_local srpt |\
  while read f; do
    echo ${f}
    unifdef -U CONFIG_SCST_PROC ${f} >${f}.out
    mv ${f}.out ${f}
  done

followed by two small manual edits in scst/include/scst.h and also in
qla2x00t/qla2x00-target/qla2x00t.c.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7999 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-03-02 20:04:25 +00:00
Bart Van Assche 4945ef6b3d qla2x00t: Fix multiple checkpatch errors
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7970 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-02-21 16:25:17 +00:00
Bart Van Assche 1f2e6e0113 qla2x00t: Fix an out of bounds access
Avoid that KASAN reports the following:

BUG: KASAN: stack-out-of-bounds in q2t_async_event+0x27c/0x3a0 [qla2x00tgt]
Read of size 2 at addr ffff8880db407db0 by task swapper/0/0

CPU: 0 PID: 0 Comm: swapper/0 Tainted: G           O      4.19.19-dbg+ #1
Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
Call Trace:
 <IRQ>
 dump_stack+0xa4/0xfa
 print_address_description+0x71/0x239
 kasan_report.cold.6+0x242/0x301
 __asan_load2+0x51/0x80
 q2t_async_event+0x27c/0x3a0 [qla2x00tgt]
 qla2x00_async_event+0x34f/0x2390 [qla2xxx_scst]
 qla24xx_msix_default+0x2b8/0x300 [qla2xxx_scst]
 __handle_irq_event_percpu+0x77/0x3c0
 handle_irq_event_percpu+0x68/0xe0
 handle_irq_event+0x5a/0x8b
 handle_edge_irq+0x114/0x2f0
 handle_irq+0x18d/0x205
 do_IRQ+0x73/0x150
 common_interrupt+0xf/0xf



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7917 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-02-11 00:11:01 +00:00
Bart Van Assche d3e2f5ab99 Makefiles: Stop using $(SUBDIRS)
This patch avoids that the following warning is reported when building
against kernel v4.21:

================= WARNING ================
'SUBDIRS' will be removed after Linux 5.3
Please use 'M=' or 'KBUILD_EXTMOD' instead
==========================================


A quote from an upstream kernel patch:

commit 07e5823127155b3a29003aca926f87c9843f6810
Author: Andrew Morton <akpm@osdl.org>
Date:   Mon Apr 12 01:05:40 2004 -0700

    [PATCH] kbuild: external module support
    
    From: Sam Ravnborg <sam@ravnborg.org>
    
    Based on initial patch from Andreas Gruenbacher there is now better support
    for building external modules with kbuild.
    
    The preferred syntax is now:
    make -C $KERNELSRC M=$PWD
    
    but the old syntax:
    make -C $KERNELSRC SUBDIRS=$PWD modules
    will remain supported.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7851 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-12-31 19:03:14 +00:00
Bart Van Assche 43c6e39d3a scst: Port to Linux kernel v4.21
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7849 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-12-31 18:56:29 +00:00
Bart Van Assche 3dcace8794 Remove trailing whitespace from multiple files
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7844 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-12-31 18:26:51 +00:00
Bart Van Assche ab5ea2283f qla2x00t: Read MBX_2 after MBC_PORT_NODE_NAME_LIST
MBX_2 contains the number of bytes required for the buffer, but
qla2x00_mailbox_command() doesn't request MBX_2 from the firmware.
    
Signed-off-by: Anton Nefedov <anton.nefedov@virtuozzo.com>
[ bvanassche: edited commit message ]


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7839 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-12-11 02:46:38 +00:00
Bart Van Assche 1587638134 Remove support for "make enable_proc" and "make disable_proc"
Since RHEL 5 and kernel versions before 2.6.26 rely on procfs support,
this patch removes support for RHEL 5.x and also for kernel versions
before 2.6.26.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7829 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-11-22 22:13:40 +00:00
Bart Van Assche 69fde133e9 Revert r7524
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7525 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-10-31 14:25:52 +00:00
Bart Van Assche 91b99af914 scst, srpt, iscsi-scst, qla2x00t, fcst: Bump version number to 3.4.0
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7524 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-10-31 14:24:20 +00:00
Bart Van Assche e2a17c6a24 Change 'long long int' int 'long long'
This patch does not change any functionality.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7505 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-10-14 03:57:53 +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
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 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