Vladislav Bolkhovitin
42f648fcbc
Web copyrights updated
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/iser@5239 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 04:56:36 +00:00
Vladislav Bolkhovitin
d567113d12
iSER target page added
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/iser@5238 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 04:52:39 +00:00
Vladislav Bolkhovitin
d3d69d4c89
[PATCH 9/9] scst: Add iSER module to RPM build
...
Signed-off-by: Yan Burman <yanb@mellanox.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/iser@5237 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 04:20:52 +00:00
Vladislav Bolkhovitin
623cbff5a3
[PATCH 8/9] scstadmin: Load isert-scst if iscsi is present
...
Signed-off-by: Yan Burman <yanb@mellanox.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/iser@5236 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 04:20:03 +00:00
Vladislav Bolkhovitin
c03bd27bca
[PATCH 7/9] iscsid: Implement iser support
...
Add iser character device handling for accepting and handling connections
received through RDMA transport.
Add isert_listener device to the poll() loop and handle incoming
connection requests.
Differentiate between iser and non iser connections
Validate RDMAExtension field and reject it if found in iscsi login request.
Also, disable immediate data and first burst for iSER since it is not supported yet
Signed-off-by: Yan Burman <yanb@mellanox.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/iser@5235 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 04:19:27 +00:00
Vladislav Bolkhovitin
bded9b5943
[PATCH 6/9] iscsid: Refactor code for iser reuse
...
Refactor character device handling code as well as
connection allocation code in order to be able to reuse that in iser later on.
Signed-off-by: Yan Burman <yanb@mellanox.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/iser@5234 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 04:18:35 +00:00
Vladislav Bolkhovitin
39d0b2983a
[PATCH 5/9] iscsid: Add start/stop transmit abstraction
...
In order to be able to abstract from socket and iser connection fd's
we need to have generic code that can handle both.
Signed-off-by: Yan Burman <yanb@mellanox.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/iser@5233 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 04:17:32 +00:00
Vladislav Bolkhovitin
5357b4c37d
[PATCH 4/9] isert: Add initial isert code
...
Initial iSER code which also supports MLNX_OFED on RedHat and Ubuntu
as well as regular OFED
Signed-off-by: Yan Burman <yanb@mellanox.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/iser@5232 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 04:16:47 +00:00
Vladislav Bolkhovitin
de70fa73d9
[PATCH 3/9] iscsi: Export some functions needed by isert and refactor code for reuse
...
Refactor code to reuse iscsi command init in isert
Refactor conn allocation code to be able to reuse it in isert
Signed-off-by: Yan Burman <yanb@mellanox.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/iser@5231 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 04:15:16 +00:00
Vladislav Bolkhovitin
52e0426703
[PATCH 2/9] iscsi: Move TCP code over to transport API
...
Replace iscsi-tcp specific calls with transport API calls
in order to be able to override them with iser implementation specifics.
Make iscsi-tcp specific debug print into a general print
Refactor conn close code to work with isert
Only allocate RX data in NOP for iscsi-tcp
In case of iser, the data is already received
Signed-off-by: Yan Burman <yanb@mellanox.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/iser@5230 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 04:13:12 +00:00
Vladislav Bolkhovitin
e885ce50f3
[PATCH 1/9] iscsi: Add iSCSI transport API
...
Need to have transport abstraction in order to be able to add
different transport types. In particular TCP and RDMA
Signed-off-by: Yan Burman <yanb@mellanox.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/iser@5229 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 04:11:50 +00:00
Vladislav Bolkhovitin
a669ff2e1a
Creating branch for staging iSER target
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/branches/iser@5228 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 04:03:28 +00:00
Vladislav Bolkhovitin
f635cfd011
vdisk_exec_format_unit(): Fix a sparse warning
...
Avoid that sparse reports the following warning:
warning: 'prot_usage' may be used uninitialized in this function
Signed-off-by: Bart Van Assche <bvanassche@acm.org >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5227 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 03:57:19 +00:00
Vladislav Bolkhovitin
fba7f097b7
In WT mode blockio flush is not needed, so skip this check
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5226 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-28 03:54:48 +00:00
Bart Van Assche
08623d3115
ib_srpt: Clarify a log message
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5225 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-27 19:01:24 +00:00
Bart Van Assche
fc0dc41452
nightly build: Update kernel versions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5224 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-26 13:52:52 +00:00
Bart Van Assche
adb3c46798
fcst: Increase ft_scst_template.sg_tablesize
...
The libfc implementation can handle long SG lists, hence increase
ft_scst_template.sg_tablesize from 128 to 65535.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5223 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-24 10:32:43 +00:00
Vladislav Bolkhovitin
0611548744
Fix broken link from scst/README to XFS FAQ reported by Sebastian Herbszt <herbszt@gmx.de>
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5222 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-22 03:03:04 +00:00
Vladislav Bolkhovitin
85ea152e0c
[PATCH] scst: Remove casts from INIT_DELAYED_WORK() statements
...
This is a source code cleanup patch that does not change any functionality.
Signed-off-by: Bart Van Assche <bvanassche@acm.org >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5221 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-22 02:57:49 +00:00
Bart Van Assche
2ee6484c6d
scst: RHEL 5 build fix
...
Kernel versions before 2.6.26 do not have a definition for the
ACCESS_ONCE() macro, hence provide one.
Signed-off-by: Sebastian Herbszt <herbszt@gmx.de >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5220 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-21 14:35:22 +00:00
Bart Van Assche
72c1662421
__scst_check_deferred_commands_locked(): Add sparse locking annotation
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5219 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-21 12:03:23 +00:00
Bart Van Assche
d602302863
scst: Rework RESERVE / RELEASE handling
...
Reduce the number of reservation state variables from (one per
device + one per session) to one per device. Introduce helper
functions for manipulating the SPC-2 reservation state.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5218 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-21 08:09:01 +00:00
Bart Van Assche
e2fb6f4080
mpt: Use PDE_DATA if available
...
Signed-off-by: Sebastian Herbszt <herbszt@gmx.de >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5217 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 19:26:29 +00:00
Bart Van Assche
8db5286a87
mvsas_tgt: Fix various checkpatch complaints, mainly about whitespace usage
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5216 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 19:07:18 +00:00
Bart Van Assche
ed9ed528c8
mvsas_tgt: Fix sparse warnings
...
Also, remove unused variables, data structures and functions.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5215 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 18:47:02 +00:00
Bart Van Assche
ee1f37d2a5
mvsas_tgt: Port to kernel 3.12
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5214 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 18:46:06 +00:00
Bart Van Assche
5fb1240532
mvsas_tgt: Build fix for kernel versions <= 2.6.32
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5213 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 18:45:09 +00:00
Bart Van Assche
88a7e1764b
mpt: Fix a use-after-free detected by smatch
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5212 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 09:48:41 +00:00
Bart Van Assche
80c6aa0e36
mpt: Fix warnings reported by sparse
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5211 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 09:46:50 +00:00
Bart Van Assche
7fd1822b4d
mpt: Fix more checkpatch warnings
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5210 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 09:45:32 +00:00
Bart Van Assche
6a08ef3fd9
mpt: Checkpatch - remove parentheses from return statements
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5209 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 09:20:01 +00:00
Bart Van Assche
609fe60a8f
mpt: Fix more checkpatch warnings
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5208 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 09:17:45 +00:00
Bart Van Assche
c89a883339
mpt: Fix another whitespace error reported by checkpatch
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5207 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 09:07:26 +00:00
Bart Van Assche
69ee3d89a0
mpt: Do not explicitly initialize statics to zero
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5206 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 09:06:13 +00:00
Bart Van Assche
b065605333
mpt: Avoid that checkpatch complains about stm_[gs]et_dma_addr()
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5205 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 09:04:16 +00:00
Bart Van Assche
87c68579ca
mpt: Fix whitespace errors reported by checkpatch
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5204 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 08:59:20 +00:00
Bart Van Assche
91419daa26
mpt: Fix two checkpatch complaints about asm include files
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5203 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 08:56:28 +00:00
Bart Van Assche
2796006f3c
mpt: Fix whitespace errors reported by checkpatch
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5202 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 08:54:08 +00:00
Bart Van Assche
974b9fb862
mpt: sysfs mode build fix
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5201 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-19 08:17:30 +00:00
Bart Van Assche
34d18e943e
mpt: Port to kernel 3.12 and fix compiler warnings
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5200 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-18 17:48:45 +00:00
Bart Van Assche
f6d1105ed8
mpt: Clean up compiler include path
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5199 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-18 17:47:37 +00:00
Bart Van Assche
7edf970426
scst, procfs: Avoid that adding a device to a group triggers a kernel oops
...
This patch fixes the following kernel oops:
BUG: unable to handle kernel NULL pointer dereference at 0000000000000178
IP: [<ffffffffa031bbc8>] scst_acg_add_lun+0x178/0x300 [scst]
Oops: 0000 [#1 ] PREEMPT SMP
CPU: 3 PID: 7451 Comm: scstadmin Tainted: G O 3.13.0-rc3-debug+ #1
Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
RIP: 0010:[<ffffffffa031bbc8>] [<ffffffffa031bbc8>] scst_acg_add_lun+0x178/0x300 [scst]
Call Trace:
[<ffffffffa03222cf>] scst_proc_groups_devices_write+0x78f/0x890 [scst]
[<ffffffff8119dad8>] proc_reg_write+0x38/0x70
[<ffffffff81141562>] vfs_write+0xb2/0x1f0
[<ffffffff81141c57>] SyS_write+0x47/0xa0
[<ffffffff814efdb9>] system_call_fastpath+0x16/0x1b
Code: 00 00 48 8b 4d b8 49 c7 c1 80 5a 34 a0 41 b8 ce 0d 00 00 48 8b 3d c1 15 03 00 48 c7 c2 42 ba 33 a0 48 c7 c6 31 ba 33 a0 48 8b 01 <48> 8b 80 78 01 00 00 48 89 44 24 20 8b 45 a4 89 44 24 18 48 8b
RIP [<ffffffffa031bbc8>] scst_acg_add_lun+0x178/0x300 [scst]
RSP <ffff88001f4a9de8>
CR2: 0000000000000178
This regression was introduced in commit "Small logging improvement"
(trunk r4838; 2013-04-12).
Signed-off-by: Sebastian Herbszt <herbszt@gmx.de >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5198 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-17 08:01:17 +00:00
Bart Van Assche
6bf914d599
nightly build: Update kernel versions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5197 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-16 16:11:23 +00:00
Bart Van Assche
a57c9d0cee
fcst: Fix a potential deadlock
...
This patch fixes the following lockdep warning:
======================================================
[ INFO: possible circular locking dependency detected ]
3.13.0-rc6-debug+ #5 Tainted: G W O
-------------------------------------------------------
rmmod/8653 is trying to acquire lock:
(scst_tgt_kref){+.+.+.}, at: [<ffffffffa033de6f>] scst_tgt_sysfs_put+0x10f/0x190 [scst]
but task is already holding lock:
(ft_lport_lock){+.+.+.}, at: [<ffffffffa029d3db>] ft_lport_del+0x1b/0x40 [fcst]
which lock already depends on the new lock.
the existing dependency chain (in reverse order) is:
-> #1 (ft_lport_lock){+.+.+.}:
[<ffffffff8109b4b4>] lock_acquire+0xa4/0x1e0
[<ffffffff81559837>] mutex_lock_nested+0x77/0x430
[<ffffffffa029d5a0>] ft_tgt_enable+0x20/0xd0 [fcst]
[<ffffffffa0335c99>] scst_process_tgt_enable_store+0xe9/0x230 [scst]
[<ffffffffa0335dfc>] scst_tgt_enable_store_work_fn+0x1c/0x20 [scst]
[<ffffffffa0338ebc>] scst_process_sysfs_works+0xfc/0x1f0 [scst]
[<ffffffffa033d180>] sysfs_work_thread_fn+0x120/0x2b0 [scst]
[<ffffffff81074850>] kthread+0xf0/0x110
[<ffffffff815663fc>] ret_from_fork+0x7c/0xb0
-> #0 (scst_tgt_kref){+.+.+.}:
[<ffffffff8109a95b>] __lock_acquire+0x17ab/0x1b10
[<ffffffff8109b4b4>] lock_acquire+0xa4/0x1e0
[<ffffffffa03375b9>] scst_kobject_put_and_wait+0x99/0x260 [scst]
[<ffffffffa033de6f>] scst_tgt_sysfs_put+0x10f/0x190 [scst]
[<ffffffffa03053dc>] scst_unregister_target+0x15c/0x3c0 [scst]
[<ffffffffa029c69c>] ft_tport_delete+0x2c/0xa0 [fcst]
[<ffffffffa029d3ec>] ft_lport_del+0x2c/0x40 [fcst]
[<ffffffffa023e249>] fc_lport_iterate+0x49/0x80 [libfc]
[<ffffffffa029d804>] ft_module_exit+0x36/0x832 [fcst]
[<ffffffff810cd3f2>] SyS_delete_module+0x152/0x1f0
[<ffffffff815664a9>] system_call_fastpath+0x16/0x1b
other info that might help us debug this:
Possible unsafe locking scenario:
CPU0 CPU1
---- ----
lock(ft_lport_lock);
lock(scst_tgt_kref);
lock(ft_lport_lock);
lock(scst_tgt_kref);
*** DEADLOCK ***
2 locks held by rmmod/8653:
#0 : (fc_prov_mutex){+.+.+.}, at: [<ffffffffa023e222>] fc_lport_iterate+0x22/0x80 [libfc]
#1 : (ft_lport_lock){+.+.+.}, at: [<ffffffffa029d3db>] ft_lport_del+0x1b/0x40 [fcst]
stack backtrace:
CPU: 0 PID: 8653 Comm: rmmod Tainted: G W O 3.13.0-rc6-debug+ #5
Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
ffffffff8222ce70 ffff88002efdbb70 ffffffff8155551c ffffffff8222ce70
ffff88002efdbbb0 ffffffff81552248 ffff88002efdbc00 ffff88002ed0ed88
ffff88002ed0e6d0 0000000000000002 0000000000000002 ffff88002ed0ed88
Call Trace:
[<ffffffff8155551c>] dump_stack+0x4e/0x7a
[<ffffffff81552248>] print_circular_bug+0x200/0x20f
[<ffffffff8109a95b>] __lock_acquire+0x17ab/0x1b10
[<ffffffff8109b4b4>] lock_acquire+0xa4/0x1e0
[<ffffffffa03375b9>] scst_kobject_put_and_wait+0x99/0x260 [scst]
[<ffffffffa033de6f>] scst_tgt_sysfs_put+0x10f/0x190 [scst]
[<ffffffffa03053dc>] scst_unregister_target+0x15c/0x3c0 [scst]
[<ffffffffa029c69c>] ft_tport_delete+0x2c/0xa0 [fcst]
[<ffffffffa029d3ec>] ft_lport_del+0x2c/0x40 [fcst]
[<ffffffffa023e249>] fc_lport_iterate+0x49/0x80 [libfc]
[<ffffffffa029d804>] ft_module_exit+0x36/0x832 [fcst]
[<ffffffff810cd3f2>] SyS_delete_module+0x152/0x1f0
[<ffffffff815664a9>] system_call_fastpath+0x16/0x1b
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5196 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-16 15:23:45 +00:00
Bart Van Assche
6d7fb6343d
fcst: Avoid that "rmmod fcst" hangs
...
Make sure that SCST sessions get unregistered when scst_unregister_target()
is invoked. This change is necessary because of r5083 ("Disable automatic
sessions unregistration").
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5195 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-16 15:22:00 +00:00
Bart Van Assche
0e99ba02b5
qla2x00t: SLES 11 SP3 build fix
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5190 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-10 07:54:10 +00:00
Bart Van Assche
f0b1893e71
nightly build: Update kernel versions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5189 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-10 07:52:24 +00:00
Bart Van Assche
9690e0f1c3
fcst: SLES 11 SP3 build fix
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5188 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-10 07:50:10 +00:00
Bart Van Assche
54cbef15e8
nightly build: Update kernel versions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5187 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-08 19:38:41 +00:00
Bart Van Assche
a0bc415649
ib_srpt, ib_srpt.h: Fix kernel-doc warnings
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5186 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2014-01-07 14:26:25 +00:00