Commit Graph
53 Commits
Author SHA1 Message Date
Gleb Chesnokov 13839f3f6a scripts: Group runtime diagnostics and exercisers under runtime/
Place interrupt and memory monitors beside the block-device benchmark and
persistent-reservation exerciser. Update the SRPT maintainer instructions
and copyright paths with the move.

The four helpers are byte-for-byte unchanged, including their existing
privilege requirements and device or host side effects.
2026-10-19 10:31:32 +03:00
Gleb Chesnokov 43e717c7f1 scripts: Group kernel maintenance helpers under kernel/
Move patch generation, specialization, regression, kernel selection and
module signing helpers together, with their shared shell libraries. Update
component Makefiles, CI, nightly jobs, packaging metadata, documentation
and KUnit tooling references alongside the move.

Adjust repository-root and source-inventory lookups for the deeper path.
Resolve rhel-rpm-functions relative to kernel-functions through
BASH_SOURCE, since it is also sourced by the QLogic extraction helpers.

Keep the regression runner behavior and the nightly kernel matrix intact,
including the existing checkpatch, sparse and smatch switches and policy.
2026-10-19 10:31:32 +03:00
Gleb Chesnokov 88b5653b06 scripts: Group source maintenance helpers under source/
Keep source inventory, cleanup and shell lint helpers together. Update the
Makefile, Debian packaging, scstadmin and the kernel, release and existing
checkpatch callers in the same commit so each consumer uses a valid path.

Keep run-shellcheck rooted at scripts/ after the move, preserving its
coverage of all tracked Bash helpers. Source selection and the existing
checkpatch exclusions are unchanged.
2026-10-19 10:31:32 +03:00
Gleb Chesnokov 45d3123fe4 build: Prepare device handlers for separate test objects
Make scst_vdisk and scst_user composite modules so KUnit can link
additional objects without including test sources. Rename the
implementation files while preserving the module names and update
source-path consumers.

Move existing private command and device layouts into local headers
without changing their fields, constants or logic. No installed
interface is expanded.
2026-10-14 15:08:03 +03:00
Gleb Chesnokov b8e386a6bc build: Add warnings-as-errors mode
Add a WERROR=y|n build setting that keeps the local default unchanged
and exports -Werror for user-space and kernel compilation. Honor the same
setting in direct regression kernel builds.
2026-08-25 12:10:06 +03:00
Gleb Chesnokov 055865e734 docs: Remove obsolete Subversion references
The tracked SVN tag ledger and checkout instructions predate the move to
Git and no longer describe a supported workflow.

Remove the obsolete material, point Debian metadata at GitHub and keep
the retired Gentoo guide generic about its old source location.
2026-08-21 19:58:59 +03:00
Gleb Chesnokov f30bf2b208 Makefiles: Propagate recursive command failures
Return the failing submake status from the top-level and Debian build
loops instead of turning an early failure into success. Collect and
check the statuses of the parallel iSCSI and SRP cleanup jobs as well.
2026-08-21 19:58:59 +03:00
Gleb Chesnokov 962d6f1dc1 docs: Remove obsolete procfs instructions
The generated SRPT documentation still contained commands for the removed
/proc/scsi_tgt interface. The comparison page advertised procfs as an SCST
option and Debian metadata named deleted procfs sources. Remove these stale
references while retaining scstadmin migration support.
2026-08-21 19:58:59 +03:00
Gleb Chesnokov 9129391ac3 docs: Refresh build and installation guides
The top-level guides still describe retired source, QLogic, service and
kernel-support workflows. Following them can select the wrong driver,
cross-compile only part of the tree, or misstate module-signing policy.

Commit 7aade0a109 ("Makefile: Make the qla2x00t-32gbit driver
the default QLogic FC driver") made the newer tree the default.
Commit 0d3c9018af ("debian, scstadmin: Add systemd scst.service")
added the installed systemd unit.

Point source users at GitHub and kernel support at
nightly/conf/nightly.conf. Separate kernel and user-space cross builds,
follow the current service recipes, and make module acceptance depend
on the target kernel and platform policy.
2026-08-21 10:05:36 +03:00
Brian MandGleb Chesnokov 7ba376819c debian, dev_handlers: Allow conditional compilation of modules
Add the ability to turn off compilation of scst_local, srpt and
several dev_handler. Default to compiling (i.e. no change).
2026-02-18 10:17:23 +03:00
MajorP93andGleb Chesnokov 9590762792 debian, scst-dkms: Move the .install file creation to the correct location in install target
* This fixes an issue where the resulting scst-dkms deb package was empty and could not be installed.
* By moving the .install file creation to the install target we ensure:
  - The .install file is generated after the version is set
  - Paths match the actual DKMS source location
  - File contents aren't overwritten by later operations
2025-11-19 10:05:19 +03:00
Brian MandGleb Chesnokov 0d3c9018af debian, scstadmin: Add systemd scst.service
Add systemd service file when packaging for Debian.  Current
systemd will automatically generate one, but this functionality
will be removed in a future version of systemd.
2025-10-28 18:15:04 +03:00
Gleb Chesnokov cf94272cea scst: Remove scst_module.c file
I haven't been able to find any sign of this file being used since the
initial commit, so remove this dead code.
2023-04-28 15:22:58 +03:00
Gleb Chesnokov baa8a58833 Makefile, debian: Rename the DEBUG_MODE_LEVEL variable into PKG_BUILD_MODE
The latter name reflects better the role of this variable.
2023-01-10 13:52:51 +03:00
S.KatyshevandGleb Chesnokov 95c9bdc0f7 pass through DEBUG_MODE_LEVEL to dpkg make target
It's quite strange but we can't run `make dpkg` with other
debug mode level.
2023-01-09 13:05:45 +03:00
caleb 34a1a2e90e fix debian/rules syntax error 2021-08-17 09:40:21 -04:00
Bart Van Assche e98bc30e42 debian/scst.dkms: Switch to the qla2x00t-32gbit driver
Fixes: 1cfa1e7f87 ("Makefile: switch to qla-32gbit by default")


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9448 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-06-22 22:53:55 +00:00
Bart Van Assche caf127e37e debian/scst.dkms: Switch to the qla2x00t-32gbit driver
Fixes: 1cfa1e7f87 ("Makefile: switch to qla-32gbit by default")



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9442 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-06-21 03:05:47 +00:00
Bart Van Assche ba27441096 debian/rules: Fail the build if $(QLA_INI_DIR) has not been set
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9441 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-06-21 03:04:27 +00:00
Bart Van Assche b3aabb0b8e debian/rules: Use $(KVER) instead of $(uname -r)
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9439 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-31 03:01:15 +00:00
Bart Van Assche 7aade0a109 Makefile: Make the qla2x00t-32gbit driver the default QLogic FC driver
Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9438 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-31 02:59:52 +00:00
Bart Van Assche 27a6c65bf3 Temporarily revert r9436
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9437 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-31 02:58:28 +00:00
Bart Van Assche 8f792b0abd debian/rules: Use $(KVER) instead of $(uname -r)
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9436 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-31 02:53:12 +00:00
Bart Van Assche b7ed3f8e77 Makefile: switch to qla-32gbit by default
Bart Van Assche noted that currently there are more people using the
32gbit driver than there are people using the older one. So it might
make sense to finally make switch and default to the 32gbit driver.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9435 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-31 02:52:04 +00:00
Bart Van Assche 6787c12e95 Makefile: add ability to enable qla-32gbit target
Although qla-32gbit is mentioned in the README, but there wasn't really a
way to enable it sans editing the code.
    
This commit adds an ability to enable the driver by passing
`QLA_32GBIT=y` variable at build time.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9434 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-31 02:51:45 +00:00
Bart Van Assche 3d957ec708 Temporarily revert r9432
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9433 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-31 02:50:01 +00:00
Bart Van Assche 50f78c67ea debian/rules: Use $(KVER) instead of $(uname -r)
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9432 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-31 02:45:26 +00:00
Bart Van Assche 237910043b debian/rules: Only build fcst if libfc has been enabled in the kernel
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9429 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-29 01:15:57 +00:00
Bart Van Assche bbbeb7ebf4 debian: Follow-up for the previous 5 commits
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9427 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-20 04:04:12 +00:00
Bart Van Assche bbc5c25445 debian: make sure CC variable is passed through to the build
See also https://github.com/bvanassche/scst/pull/37.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9426 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-20 04:02:37 +00:00
Bart Van Assche 2de5765c9c debian: make sure depmod uses the correct version
By default it uses the currently running kernel, which is not necessary
the kernel the package was built for. Fix this by generating the path on
package creation stage.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9425 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-20 04:02:06 +00:00
Bart Van Assche fc2135c345 debian: fix wrong kernel version used in preinst
This script is used in the non-dkms scst package. The purpose of package
is to determine kernel location at compile-time, as opposed to the
package installation time. However, calling `uname -r` in package
installation time violates that idea because it would get some random
kernel that was running on the machine. This problem is particularly
seen in containers, because in those `uname` shows the kernel running on
the host, rather than the one running inside container.

Fix this by determining the kernel location in `preinst` script at
compile time as well.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9424 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-20 04:01:46 +00:00
Bart Van Assche 143ea7b546 debian: make sure KVER and KDIR are visible to dpkg build
The debuild clears up the environment, thus the essential SCST variables
KVER and KDIR are cleared out. This patch fixes it.

Note: technically, `debild` supports `--preserve-env` option. But in
reality making use of it makes no difference, variables still do not
appear. Work around it by using DEB_foo_SET from `man dpkg-buildflags`


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9423 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-05-20 04:01:24 +00:00
Bart Van Assche 48e2034307 Debian: Follow-up for r9333
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9334 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-01-10 01:22:26 +00:00
Bart Van Assche 613e7583c2 Debian: Various package building improvements
Use a two digit revision number instead of a single digit revision number to
fix a lintian warning. Exclude .gitignore files from the source archive.
Copy the debhelper major version number into debian/compat instead of
hardcoding the compatibility level because the highest compatibility level
supported by Ubuntu 16.04 is 9 and because compatibility level 9 is considered
deprecated by Ubuntu 20.04.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9333 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-01-10 01:21:44 +00:00
Bart Van Assche 5d630c2514 Revert "debian/rules: Also clean the scstadmin/scstadmin soft link"
Since the soft link scstadmin/scstadmin is under source control, do not
remove it while removing build artefacts. See also commit b3435fbdda
("debian/rules: Also clean the scstadmin/scstadmin soft link").



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9330 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2021-01-10 01:16:26 +00:00
Bart Van Assche 70fd08dde6 scst: Also install the build_mode.h header file
Reported-by: Steven Siwinski <steve-atto@users.sourceforge.net>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9173 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-10-21 03:37:50 +00:00
Bart Van Assche be6191fb92 debian: make scst-dkms provide scst
Signed-off-by: Konstantin Kharlamov <Hi-Angel@yandex.ru>


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@9123 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-08-29 03:17:06 +00:00
Bart Van Assche 647f056f6b Remove more references to the removed scst_proc.c source file
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8846 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-04-03 02:06:24 +00:00
Bart Van Assche 40b4dfd289 scst: Split the scst_targ.c source file
Since the scst_targ.c source file is large, move the functions for processing
SCSI commands into a new source file, scst_local_cmd.c.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8768 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2020-02-23 17:16:12 +00:00
Bart Van Assche 2f37a91d77 Remove more references to the ibmvstgt, mpt and mvsas_tgt drivers
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8652 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2019-11-03 21:29:36 +00:00
Bart Van Assche 71c637eec1 debian/control: Add psmisc to the list of dependencies
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7850 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-12-31 18:57:30 +00:00
Bart Van Assche e79fcbd8f3 iscsi-scst: Remove zero-copy TCP/IP support
Zero-copy TCP/IP support is deprecated since a while and is no longer
supported for recent kernels. Hence remove it and also all references
to zero-copy TCP/IP support.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7809 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-11-10 17:50:59 +00:00
Bart Van Assche 9ccc096b50 Debian: Make it possible to purge the scstadmin package
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7804 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-11-10 17:46:40 +00:00
Bart Van Assche 9c0a2c89a9 scst: Remove references to scripts to rebuild the Linux kernel
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7492 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-10-03 01:49:06 +00:00
Bart Van Assche 4bbb8704b1 rpm, dpkg: Make sure that all necessary directories are created after installation
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7398 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-04-23 17:35:44 +00:00
Bart Van Assche d7dd927a07 Make Debian packaging also work for older Debian versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7368 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-02-08 00:21:20 +00:00
Bart Van Assche 1aa2453add dpkg: Build in release mode
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7366 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-02-06 03:26:33 +00:00
Bart Van Assche 47b9268d4f dpkg: Enable stripping of binary and compression of manual pages
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7365 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-02-06 03:26:03 +00:00
Bart Van Assche 80b20ded1b dpkg: Remove SCST init script links after package uninstallation instead of before
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7364 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-02-06 03:22:14 +00:00