Bart Van Assche
16f2371704
ib_srpt: Inline functions with a body of one line (merge r7276 from trunk)
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7532 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-11-01 03:52:40 +00:00
Bart Van Assche
28f75256c9
ib_srpt: Make the code for converting GIDs into ASCII more brief (merge r7275 from trunk)
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7531 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-11-01 03:52:07 +00:00
Bart Van Assche
c2d96d905d
ib_srpt: Move rdma_cm_id definition (merge r7274 from trunk)
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7530 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-11-01 03:51:24 +00:00
Bart Van Assche
65a8479a95
scripts/specialize-patch: Add support for SOCK_RECVMSG_HAS_FOUR_ARGS (merge r7273 from trunk)
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7529 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-11-01 03:50:45 +00:00
Bart Van Assche
3e03ad2c66
web: Fix broken link (merge r7267 from trunk)
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7528 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-11-01 03:48:47 +00:00
Bart Van Assche
7a98a4d096
fcst: Merge r7247 from trunk
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7527 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-11-01 03:44:26 +00:00
Bart Van Assche
3cdb7f4516
fcst: Merge r7243 from trunk
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7526 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-11-01 02:01:16 +00:00
Bart Van Assche
500a239b60
qla2x00t: Merge r7478 from trunk
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7486 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-10-01 13:50:07 +00:00
Bart Van Assche
c707d09349
qla2x00t: Merge r7475 and r7476 from trunk
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7477 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2018-09-26 03:54:46 +00:00
Vladislav Bolkhovitin
ae2b9dc782
Merged revisions 7272 via svnmerge from
...
svn+ssh://svn.code.sf.net/p/scst/svn/trunk
........
r7272 | bvassche | 2017-12-19 16:35:40 +0000 (Tue, 19 Dec 2017) | 1 line
iscsi-scst: UEK 4.1.12-103.9.7.el7uek.x86_64 build fix
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7289 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-12-23 04:41:26 +00:00
Vladislav Bolkhovitin
129cac067c
Merged revisions 7253-7266,7268-7271 via svnmerge from
...
svn+ssh://svn.code.sf.net/p/scst/svn/trunk
........
r7253 | vlnb | 2017-10-11 20:22:02 -0700 (Wed, 11 Oct 2017) | 3 lines
scst: add example of active non-optimized setup
........
r7254 | bvassche | 2017-10-12 07:56:44 -0700 (Thu, 12 Oct 2017) | 1 line
qla2x00t: Fix scst_debug.h include path for the in-tree build
........
r7255 | bvassche | 2017-10-12 08:03:13 -0700 (Thu, 12 Oct 2017) | 1 line
scripts/specialize-patch: Fix #elif handling
........
r7256 | vlnb | 2017-10-13 19:18:56 -0700 (Fri, 13 Oct 2017) | 3 lines
Unpdate for kernels 4.12+
........
r7257 | bvassche | 2017-11-11 21:01:16 -0800 (Sat, 11 Nov 2017) | 1 line
iscsi-scst/usr/Makefile: Pass -Wno-format-truncation if supported
........
r7258 | bvassche | 2017-11-12 21:48:16 -0800 (Sun, 12 Nov 2017) | 4 lines
ib_srpt: Kernel 4.14 build fix
Signed-off-by: Peter Vyazovik <fuzzhead0@gmail.com >
........
r7259 | bvassche | 2017-11-12 21:49:08 -0800 (Sun, 12 Nov 2017) | 1 line
scst: Introduce the kernel v4.14 bio_set_dev() macro
........
r7260 | bvassche | 2017-11-12 21:50:44 -0800 (Sun, 12 Nov 2017) | 5 lines
scst, iscsi-scst: Introduce scst_read(), scst_write(), scst_readv() and scst_writev()
This makes it easier to add support for new kernel versions, e.g. kernel
version v4.14.
........
r7261 | bvassche | 2017-11-13 08:00:09 -0800 (Mon, 13 Nov 2017) | 1 line
scst/src/scst_lib.c: Fix recently introduced checkpatch complaints
........
r7262 | bvassche | 2017-11-13 08:18:00 -0800 (Mon, 13 Nov 2017) | 4 lines
scst: Fix build for kernels 3.15 and older
blk_rq_set_block_pc() was introduced in kernel 3.16.
........
r7263 | bvassche | 2017-11-13 08:24:16 -0800 (Mon, 13 Nov 2017) | 1 line
nightly build: Update kernel versions
........
r7264 | bvassche | 2017-11-13 08:47:10 -0800 (Mon, 13 Nov 2017) | 1 line
scst: Address two checkpatch warnings
........
r7265 | bvassche | 2017-11-13 08:47:43 -0800 (Mon, 13 Nov 2017) | 1 line
scst/src/scst_targ: Use READ_ONCE() instead of ACCESS_ONCE()
........
r7266 | bvassche | 2017-11-13 08:49:39 -0800 (Mon, 13 Nov 2017) | 1 line
fcst/fcst.h: Add identifier names
........
r7268 | bvassche | 2017-11-14 08:37:24 -0800 (Tue, 14 Nov 2017) | 1 line
scst: Fix kernel <= 2.6.30 build
........
r7269 | bvassche | 2017-11-14 18:45:57 -0800 (Tue, 14 Nov 2017) | 1 line
nightly/bin/nightly: Clone the source code tree quietly
........
r7270 | bvassche | 2017-11-14 18:47:06 -0800 (Tue, 14 Nov 2017) | 1 line
nightly build: Update kernel versions
........
r7271 | bvassche | 2017-11-14 18:48:03 -0800 (Tue, 14 Nov 2017) | 1 line
nightly/conf/nightly.sendmail: Use mail if mutt is not available
........
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7288 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-12-23 04:30:51 +00:00
Vladislav Bolkhovitin
491ca9cd95
Merged revisions 7247-7251 via svnmerge from
...
svn+ssh://svn.code.sf.net/p/scst/svn/trunk
........
r7247 | bvassche | 2017-10-06 08:08:00 -0700 (Fri, 06 Oct 2017) | 4 lines
fcst: Fix in-tree build
See also r7243.
........
r7248 | bvassche | 2017-10-09 11:10:48 -0700 (Mon, 09 Oct 2017) | 4 lines
scst_vdisk: Fix a bug in the Linux kernel v4.13 port
See also trunk r7240.
........
r7249 | bvassche | 2017-10-09 11:15:00 -0700 (Mon, 09 Oct 2017) | 4 lines
scst: Fix SCSI pass-through for kernel version v4.11 and later
See also trunk r7153.
........
r7250 | bvassche | 2017-10-09 12:58:15 -0700 (Mon, 09 Oct 2017) | 1 line
scst/include/backport.h: Follow-up for r7248
........
r7251 | vlnb | 2017-10-09 19:06:13 -0700 (Mon, 09 Oct 2017) | 5 lines
qla2x00t: update FW version information as suggested by Jens-U. Mozdzen <jmozdzen@nde.ag >
See https://sourceforge.net/p/scst/mailman/message/36068827/
........
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7252 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-10-10 02:18:39 +00:00
Vladislav Bolkhovitin
e5d322d4ab
Merged revisions 7233-7244 via svnmerge from
...
svn+ssh://svn.code.sf.net/p/scst/svn/trunk
........
r7233 | bvassche | 2017-09-20 08:09:38 -0700 (Wed, 20 Sep 2017) | 4 lines
ib_srpt: Support systems with more than 255 CPU cores
Signed-off-by: Kirill Malkin <kirillmalkin.km@gmail.com >
........
r7234 | bvassche | 2017-09-24 18:52:53 -0700 (Sun, 24 Sep 2017) | 2 lines
iscsi-scst/Makefile: Change MOFED path into /usr/src/ofa_kernel/default
........
r7235 | bvassche | 2017-09-25 16:35:49 -0700 (Mon, 25 Sep 2017) | 1 line
iscsi-scst/Makefile, Ubuntu: Simplify code for version querying
........
r7236 | bvassche | 2017-10-02 16:56:47 -0700 (Mon, 02 Oct 2017) | 1 line
scripts/specialize-patch: Process ENABLE_NPIV and FC_VPORT_CREATE_DEFINED correctly
........
r7237 | bvassche | 2017-10-02 17:04:53 -0700 (Mon, 02 Oct 2017) | 2 lines
scripts/generate-kernel-patch: Fix a regression introduced in r7164
........
r7238 | bvassche | 2017-10-02 17:05:42 -0700 (Mon, 02 Oct 2017) | 1 line
scripts/specialize-patch: Process CONFIG_SCST_STRICT_SERIALIZING correctly
........
r7239 | bvassche | 2017-10-03 15:49:35 -0700 (Tue, 03 Oct 2017) | 1 line
isert-scst: Make an error message more informative
........
r7240 | bvassche | 2017-10-03 16:08:29 -0700 (Tue, 03 Oct 2017) | 1 line
scst: Port to kernel v4.13
........
r7241 | bvassche | 2017-10-03 16:10:03 -0700 (Tue, 03 Oct 2017) | 1 line
nightly build: Update kernel versions
........
r7242 | bvassche | 2017-10-05 09:57:27 -0700 (Thu, 05 Oct 2017) | 1 line
scst: Port to openSUSE Leap 42.x
........
r7243 | bvassche | 2017-10-05 16:48:25 -0700 (Thu, 05 Oct 2017) | 1 line
fcst: Port to openSUSE Leap
........
r7244 | bvassche | 2017-10-05 16:48:51 -0700 (Thu, 05 Oct 2017) | 1 line
qla2x00t: Port to openSUSE Leap
........
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7246 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-10-06 04:51:04 +00:00
Vladislav Bolkhovitin
122ee734ac
svnmerge-integrated corrected
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7245 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-10-06 04:45:57 +00:00
Vladislav Bolkhovitin
97f744cdbe
Initialized merge tracking via "svnmerge" with revisions "7230" from
...
svn://svn.code.sf.net/p/scst/svn/trunk
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7231 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-09-01 04:07:25 +00:00
Vladislav Bolkhovitin
d7bda7ff18
SCST_VERSION_CODE changed to 3.3
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7228 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-09-01 04:00:31 +00:00
Vladislav Bolkhovitin
3bd81edc6e
Version changed to 3.3.0-rc
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7227 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-09-01 03:57:09 +00:00
Vladislav Bolkhovitin
8b69092b9e
3.3.x stable branch created
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/3.3.x@7225 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-09-01 03:53:04 +00:00
Bart Van Assche
bb021c1a84
Update svn:ignore property for multiple directories
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7224 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-28 01:58:15 +00:00
Bart Van Assche
1b4ba27d76
scripts/specialize-patch: Add support for HAVE_RDMA_DESTROY_AH
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7223 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-28 01:38:30 +00:00
Bart Van Assche
0518777b2d
iscsi-scst: Suppress a recently introduced compiler warning
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7222 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-27 22:20:01 +00:00
Bart Van Assche
673dc1d90c
nightly/conf/nightly.conf: Add more kernel versions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7221 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-27 21:43:12 +00:00
Bart Van Assche
bbaf688a0e
ib_srpt: Build fix for kernels before v4.12
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7220 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-27 21:40:23 +00:00
Bart Van Assche
cc2b24478c
iscsi-scst/kernel/event.c: Port to kernel v4.12
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7219 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-27 15:53:16 +00:00
Bart Van Assche
1e457529eb
ib_srpt: Port to Linux kernel v4.12
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7218 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-27 15:40:59 +00:00
Bart Van Assche
617c48e138
scst: More fall-through annotations for gcc 7
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7217 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-27 15:40:42 +00:00
Bart Van Assche
9e35afe1e0
Annotate fall-through in switch statements in a form recognized by gcc 7
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7216 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-27 15:28:57 +00:00
Bart Van Assche
f3d11b715b
iscsi-scst/Makefile: Add include/uapi directory to the include path
...
Reported-by: Sergey Gorenko <sergeygo@mellanox.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7215 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-10 19:39:27 +00:00
Bart Van Assche
64d40aeeb2
iscsi-scst/Makefile: Simplify MLNX_OFED support code
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7214 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-10 18:26:29 +00:00
Bart Van Assche
4edaf3e4bf
iscsi-scst/Makefile: Simplify MLNX_OFED detection for Red Hat
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7213 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-08-10 18:25:47 +00:00
Vladislav Bolkhovitin
4c269fa728
In the current implementation of SCST/trunk the recently introduced
...
"active" attribute for vdisk_blockio devices is managed by an ALUA
state change (start/finish), for specific ALUA states (eg,
active/standby). Relying on ALUA state changes to open/close the
back-end block device does indeed work for some SCST configurations,
however, some users desire advanced control over this setting, and
prefer to handle opening/closing a back-end block device from the
cluster resource agent (RA) script. Certain ambiguous situations can
also arise if more than one target group exists per SCST device
group... in this case, a back-end device may flip/flop (opened/closed)
and may end up in an inconsistent state if care is not taken in the
implementation of the cluster RA.
The patch below makes the "active" sysfs attribute for vdisk_blockio
readable/writable by a user, thereby giving full control over a
device's opened/closed state. The default behavior for SCST
vdisk_blockio devices is to allow ALUA state changes to control the
opened/closed ("active") state of a back-end device
(bind_alua_state=1). If the user wishes to handle setting the "active"
attribute themselves via a script or cluster RA, they would set
bind_alua_state=0 for the vdisk_blockio device, and the "active"
attribute would not be modified on ALUA state changes, it is then left
up to the user to handle this.
The patch below also fixes a bug where the attribute value is not
changed when the appropriate ALUA state is set, unless a target
session exists for the target group target; see here for more
information: https://sourceforge.net/p/scst/mailman/message/35898014/
Signed-off-by: Marc A. Smith <marc.smith@parodyne.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7212 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-07-26 03:18:30 +00:00
Vladislav Bolkhovitin
792a896abb
With the new 'active' attribute, a bug exists where the attribute
...
value is not changed when the appropriate ALUA state is set, unless a
target session exists for the target group target; this patch fixes
that bug, see here for more information:
https://sourceforge.net/p/scst/mailman/message/35898014/
Signed-off-by: Marc A. Smith <marc.smith@parodyne.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7211 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-07-15 03:26:11 +00:00
Vladislav Bolkhovitin
c967700cd7
scst: Linux kernel v4.12 warning fix.
...
Signed-off-by: Sebastian Herbszt <herbszt@gmx.de >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7208 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-06-13 03:58:26 +00:00
Vladislav Bolkhovitin
213a11e07b
scst: minor cleanup for previous commit
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7207 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-06-07 01:23:59 +00:00
Vladislav Bolkhovitin
e174d00f08
scst: update ALUA documentation (Active/Non-Optimized)
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7206 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-06-07 01:13:58 +00:00
Vladislav Bolkhovitin
64d07d25cf
scst_vdisk: 'numa_node_id' signed attribute value fix
...
The "numa_node_id" attribute reside in the scst_vdisk_dev struct as
signed integer and may well be negative values (eg, -1), so move fetching
it above the unsigned attributes and use kstrtoll() to retrieve the
values.
Signed-off-by: Marc A. Smith <marc.smith@parodyne.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7205 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-06-06 04:20:09 +00:00
Vladislav Bolkhovitin
0ae66a082e
Fix dereference beyond last sg element
...
Reported-By: David Butterfield <dab21774@gmail.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7204 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-06-03 04:02:22 +00:00
Vladislav Bolkhovitin
93bea9e0e8
Update to 4.11 kernels
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7203 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-06-03 02:38:51 +00:00
Vladislav Bolkhovitin
a614104023
usr: fix -Wmissing-prototypes warnings
...
Fix all twelve [-Wmissing-prototypes] warnings by adding "static" to their
declarations.
Signed-off-by: David Butterfield <dab21774@gmail.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7202 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-06-01 04:08:02 +00:00
Vladislav Bolkhovitin
5358fb06f8
scst: remove a few unnecessary shadow declarations
...
Remove a few "shadow" declarations that appear unnecessary and probably
unintended. (These are cases where a declaration in an inner scope hides
another declaration of the same name in an outer scope.)
Not all shadow declarations are superfluous -- so this particular compiler
warning is one that cannot be simply heeded while half asleep. But these
particular ones I removed appear to be superfluous.
Signed-off-by: David Butterfield <dab21774@gmail.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7201 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-06-01 04:04:45 +00:00
Vladislav Bolkhovitin
41a287734f
iscsi-scst: fix a couple of bad-function-cast warnings
...
This is a "marginal" warning, but there are only six of them in the SCST code
and this fixes two of those.
session.c:105:4: warning: cast from function call of type void * to non-matching type _Bool [-Wbad-function-cast]
target.c:668:14: warning: cast from function call of type void * to non-matching type _Bool [-Wbad-function-cast]
Signed-off-by: David Butterfield <dab21774@gmail.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7200 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-06-01 03:53:08 +00:00
Vladislav Bolkhovitin
c4e9bab97c
scst: scst_free_acg() not dereference NULL acg->tgt for proc interface
...
Signed-off-by: David Butterfield <dab21774@gmail.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7199 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-06-01 03:49:26 +00:00
Vladislav Bolkhovitin
c1d798a788
scst: cleanup of dead code
...
Reported-By: David Butterfield <dab21774@gmail.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7198 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-06-01 03:46:06 +00:00
Vladislav Bolkhovitin
bd67b31c9e
scst: a better version of possible memory reclaim deadlock fix r7194
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7197 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-05-31 04:01:00 +00:00
Vladislav Bolkhovitin
4a8a18cc34
scst_vdisk: add "active" attridute to the list of BLOCKIO add device attributes
...
This is forgotten piece to r7187
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7196 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-05-26 02:45:47 +00:00
Vladislav Bolkhovitin
e5e4531049
iscsi-scst: cleanup
...
There's no need to end-align the padding. Plus, it's not optimal to
access front misaligned memory
Reported-by: David Butterfield <dab21774@gmail.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7195 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-05-25 02:11:06 +00:00
Vladislav Bolkhovitin
7caed6e7c4
scst: prevent possible memory reclaim deadlock
...
Reported by lockdep:
[ 415.813281] =================================
[ 415.817626] [ INFO: inconsistent lock state ]
[ 415.821974] 4.10.12-scst-dbg #4 Tainted: G O
[ 415.827360] ---------------------------------
[ 415.831705] inconsistent {RECLAIM_FS-ON-W} -> {IN-RECLAIM_FS-W} usage.
[ 415.838217] kswapd0/558 [HC0[0]:SC0[0]:HE1:SE1] takes:
[ 415.843342] (sgv_pools_mutex){+.+.?.}, at: [<ffffffffa036d300>] __sgv_shrink+0x90/0x1d0 [scst]
[ 415.852075] {RECLAIM_FS-ON-W} state was registered at:
[ 415.857208] mark_held_locks+0x6c/0x90
[ 415.861034] lockdep_trace_alloc+0x8a/0xd0
[ 415.865210] kmem_cache_alloc_node+0x32/0x2f0
[ 415.869670] sgv_pool_create_node+0x186/0x2e0 [scst]
[ 415.874735] sgv_pool_create+0x12/0x20 [scst]
[ 415.879194] scst_sgv_pools_init+0xb9/0x3c0 [scst]
[ 415.884065] __dev_user_set_opt+0x152/0x5f0 [scst_user]
[ 415.889367] do_one_initcall+0x59/0x190
[ 415.893280] do_init_module+0x6a/0x230
[ 415.897106] load_module+0x591/0x830
[ 415.900758] SYSC_init_module+0xd3/0x120
[ 415.904758] SyS_init_module+0xe/0x10
[ 415.908501] entry_SYSCALL_64_fastpath+0x18/0xad
[ 415.913193] irq event stamp: 3831137
[ 415.916763] hardirqs last enabled at (3831137): [<ffffffff8106ff37>] __local_bh_enable_ip+0x67/0xd0
[ 415.925878] hardirqs last disabled at (3831135): [<ffffffff8106fefe>] __local_bh_enable_ip+0x2e/0xd0
[ 415.935018] softirqs last enabled at (3831136): [<ffffffffa036c72d>] __sgv_can_be_shrunk+0x9d/0x180 [scst]
[ 415.944764] softirqs last disabled at (3831134): [<ffffffffa036c6e3>] __sgv_can_be_shrunk+0x53/0x180 [scst]
[ 415.954481]
[ 415.954481] other info that might help us debug this:
[ 415.960994] Possible unsafe locking scenario:
[ 415.960994]
[ 415.966899] CPU0
[ 415.969336] ----
[ 415.971774] lock(sgv_pools_mutex);
[ 415.975339] <Interrupt>
[ 415.977950] lock(sgv_pools_mutex);
[ 415.981691]
[ 415.981691] *** DEADLOCK ***
[ 415.981691]
[ 415.987599] 1 lock held by kswapd0/558:
[ 415.991424] #0 : (shrinker_rwsem){++++..}, at: [<ffffffff811ace5c>] T.1898+0x4c/0x100
[ 415.999329]
[ 415.999329] stack backtrace:
[ 416.003677] CPU: 2 PID: 558 Comm: kswapd0 Tainted: G O 4.10.12-scst-dbg #4
[ 416.011663] Hardware name: Dell Inc. PowerEdge R710/00NH4P, BIOS 2.2.10 11/09/2010
[ 416.019216] Call Trace:
[ 416.021661] dump_stack+0x6b/0xa0
[ 416.024968] print_usage_bug+0x182/0x190
[ 416.028881] ? print_circular_bug+0x110/0x110
[ 416.033226] mark_lock_irq+0xee/0x290
[ 416.036879] mark_lock+0x113/0x1a0
[ 416.040271] mark_irqflags+0xb0/0x180
[ 416.043924] __lock_acquire+0x245/0x610
[ 416.047750] ? __lock_release+0x408/0x470
[ 416.051750] lock_acquire+0xce/0x2b0
[ 416.055343] ? __sgv_shrink+0x90/0x1d0 [scst]
[ 416.059689] ? mutex_lock_nested+0x47/0x750
[ 416.063863] mutex_lock_nested+0x82/0x750
[ 416.067888] ? __sgv_shrink+0x90/0x1d0 [scst]
[ 416.072236] ? put_lock_stats+0xe/0x30
[ 416.075975] ? __lock_release+0x408/0x470
[ 416.080001] ? __sgv_shrink+0x90/0x1d0 [scst]
[ 416.084349] ? debug_smp_processor_id+0x17/0x20
[ 416.088868] ? put_lock_stats+0xe/0x30
[ 416.092633] ? __sgv_can_be_shrunk+0x9d/0x180 [scst]
[ 416.097588] ? mark_held_locks+0x6c/0x90
[ 416.101500] ? __local_bh_enable_ip+0x67/0xd0
[ 416.105873] __sgv_shrink+0x90/0x1d0 [scst]
[ 416.110047] ? __local_bh_enable_ip+0x67/0xd0
[ 416.114420] sgv_scan_shrink+0x5d/0x120 [scst]
[ 416.118853] do_shrink_slab+0x19b/0x5f0
[ 416.122678] ? T.1898+0x4c/0x100
[ 416.125899] ? down_read_trylock+0x60/0x80
[ 416.129985] T.1898+0xb4/0x100
[ 416.133031] shrink_node+0x62/0xa0
[ 416.136424] balance_pgdat+0x1c8/0x2c0
[ 416.140164] kswapd+0xa0/0x2b0
[ 416.143211] ? preempt_count_sub+0x9f/0xe0
[ 416.147409] ? schedule+0x4e/0xc0
[ 416.150715] ? balance_pgdat+0x2c0/0x2c0
[ 416.154627] kthread+0x111/0x150
[ 416.157849] ? call_usermodehelper_exec_work+0xa0/0xa0
[ 416.162974] ? __kthread_init_worker+0x80/0x80
[ 416.167407] ? call_usermodehelper_exec_work+0xa0/0xa0
[ 416.172534] ? call_usermodehelper_exec_work+0xa0/0xa0
[ 416.177660] ret_from_fork+0x2e/0x40
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7194 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-05-23 03:50:43 +00:00
Vladislav Bolkhovitin
27db06eb7c
qla2x00t: fix broken 4.9 kernels build
...
Reported-By: Marc Smith <marc.smith@parodyne.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7193 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-05-23 02:23:38 +00:00
Vladislav Bolkhovitin
c729d1934a
scst: minor cleanup
...
Let's keep it simple without unused functionality
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7192 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-05-20 03:29:41 +00:00
Vladislav Bolkhovitin
e452378d1e
scst: restore locking documentation comments
...
Better to follow the common rule and always have locking expectations
documented in addition to runtime checks. Partial revert of r7095.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@7191 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2017-05-20 03:19:54 +00:00