Vladislav Bolkhovitin
28fd3bef3c
RHEL6 fix
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3586 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-17 22:34:04 +00:00
Bart Van Assche
feab0a9fe9
ib_srpt README: Add a paragraph about adding and removing LUNs dynamically
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3585 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-17 17:53:06 +00:00
Bart Van Assche
cb5792f74d
qla2x00t: Fix a checkpatch complaint about whitespace
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3584 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-17 10:58:46 +00:00
Vladislav Bolkhovitin
ae269f6189
With NPIV initiators being destroyed and recreated, the loop_id and/or
...
the d_id of a virtual initiator may change. The current implementation not
always catches these changes, which leads to wrong virtual devices
being presented to the initiators. This can lead to i.e. corruption of LUN
content and multiple initiators writing to the same LUN, although the
LUN's access group only contains a single port.
Until a better solution is found, we schedule a session deletion for the
nexus when receiving an ELS port logout message. That way SCST
will re-initialize both loop_id and d_id when the initiator reconnects
before the actual deletion takes place. The performance impact is
minimal (few milliseconds) and currently necessary.
Signed-off-by: Jens-U. Mozdzen <jmozdzen@nde.ag >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3583 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-17 02:43:05 +00:00
Vladislav Bolkhovitin
4eadecd70d
Docs update from Bart Van Assche <bvanassche@acm.org>
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3582 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-17 02:34:21 +00:00
Vladislav Bolkhovitin
bc933d59c7
Unmap improvements
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3579 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-15 20:16:59 +00:00
Vladislav Bolkhovitin
e13e0e507a
Logging improvements and cleanups
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3578 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-15 20:15:56 +00:00
Vladislav Bolkhovitin
7c6431beb4
Merge on the mainline qla2xxx git revision 0f19bc681ed0849a2b95778460a0a8132e3700e2:
...
Fix MSIX lockdep complain.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3577 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-15 20:12:56 +00:00
Bart Van Assche
00efb5c667
ib_srpt: Internal change to the credit algorithm. No externally observable behavior is changed.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3575 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-13 12:38:18 +00:00
Bart Van Assche
93da6cc2b9
ib_srpt: Convert srpt_rdma_ch.sq_wr_avail from an atomic into a spinlock-protected integer
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3574 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-13 12:35:41 +00:00
Bart Van Assche
cee16c8117
ib_srpt: Disable IB completion notifcations after having received the LAST_WQE notification / show how many SCST commands are still in progress while waiting for session unregistration
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3573 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-13 12:32:10 +00:00
Bart Van Assche
46f0460602
ib_srpt: Export RDMA channel state to sysfs
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3572 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-13 12:26:51 +00:00
Bart Van Assche
0e3137524d
ib_srpt: Make srpt_rdy_to_xfer() handle IB send queue overflow correctly.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3571 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-13 12:22:33 +00:00
Bart Van Assche
82d03efb88
ib_srpt: Restore timeout handler (reverts r3537).
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3570 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-13 12:19:01 +00:00
Bart Van Assche
562809a2da
/etc/init.d/scst: Improved /etc/scst.conf parsing robustness for manually edited scst.conf files
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3569 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-11 15:55:49 +00:00
Bart Van Assche
aa199d8ef6
/etc/init.d/scst: Relax parsing of /etc/scst.conf. Accept sequences of blanks and tabs instead of only spaces when looking for device handler and target driver names.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3568 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-11 10:26:25 +00:00
Bart Van Assche
4ce84f3edb
More /etc/init.d/scst tuning:
...
- Works now if the SCST modules have been compiled into the kernel (=Y) instead of being compiled as modules (=M).
- Rename DAEMONS into SCST_DAEMONS.
- Use the same name for loading and removing the iSCSI kernel module (iscsi_scst).
- Set the path after having read /lib/lsb/init-functions instead of before.
- Remove the path from the killall command.
- When parsing /etc/default/scst, handle both parameters with and without embedded spaces correctly.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3567 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-10 18:03:11 +00:00
Bart Van Assche
2debac5ced
Slackware: Do not suggest the user to run a script to activate /etc/init.d/scst on boot because such a script does not exist on Slackware.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3566 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-10 18:03:06 +00:00
Bart Van Assche
f0336fced9
Follow-up for r3564: add sample /etc/default/scst file
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3565 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-10 17:56:56 +00:00
Vladislav Bolkhovitin
7bde8810f5
Currently there are three different init scripts inside the SCST project:
...
scst, iscsi-scst and qla2x00t. This makes it unnecessary hard for users to
run several target drivers simultaneously. Additionally, several variants of
these init scripts exist for different distributions. This patch unifies all
these init scripts into a single init script. Additionally, some new features
have been added:
- Kernel module parameters can now be specified per kernel module in
/etc/default/scst. An example:
ib_srpt_parameters="thread=1 srp_max_req_size=4200"
- When using the sysfs interface, compute the kernel module list from scst.conf.
Or, editing the SCST_MODULES variable is no longer necessary.
- When using the procfs interface, the SCST handler kernel module list is
computed from /etc/scst.conf. The list of target driver kernel modules must
now be configured in /etc/default/scst.
Other changes:
- scstadmin output is shown if scstadmin fails.
- Running make -C scstadmin install does no longer cause the scst script to
be started at the next reboot - it is better to leave this as an explicit step.
- Made the error message generated if the lsb-core package has not yet been
installed more clear.
- Use proper init script path on Slackware.
- make uninstall: run remove_initd under chroot if $(DESTDIR) is not empty.
- Fixed a bug in "make -C scstadmin uninstall": the path specified for removing
/etc/init.d/scst was wrong.
- The command /etc/init.d/scst restart will only try to start SCST if stopping
succeeded.
- Replaced "mkdir -m 755 -p $(DESTDIR)$(INITDIR)" by
"install -d $(DESTDIR)$(INITDIR)" because of uniformity.
These changes have been tested on Ubuntu 11.04, Fedora 15, CentOS 5.6,
Scientific Linux 6.0, openSUSE 11.4, SLES11 SP1 and Slackware 13.37.
Signed-off-by: Bart Van Assche <bvanassche@acm.org >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3564 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-10 02:38:04 +00:00
Vladislav Bolkhovitin
bcf74cdd7b
Web and docs updates
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3563 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-10 01:43:05 +00:00
Bart Van Assche
7943d6466e
ib_srpt: Use a spinlock to protect ch->req_lim and ch->req_lim_delta changes instead of using atomics. Reduces the time spent in the ib_srpt_compl thread with a little bit more than 10%.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3558 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-08 18:13:30 +00:00
Bart Van Assche
aa78149881
ib_srpt: Update test instructions.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3557 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-08 18:05:44 +00:00
Vladislav Bolkhovitin
8b90327419
Modified patch from Bart Van Assche <bvanassche@acm.org> fixing errors reporting
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3552 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-07 18:08:58 +00:00
Vladislav Bolkhovitin
ed07de2ffb
- Return no residual if expected values not set instead of BUG_ON(),
...
because this is valid situation for some preliminary comleted commands.
- Cleanup
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3549 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-06 21:32:16 +00:00
Vladislav Bolkhovitin
2f1745eec1
Set data_out_in_data_receiving for preliminary completed commands as
...
well to prevent releasing them too early in iscsi_check_tm_data_wait_timeouts()
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3546 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-06 21:04:04 +00:00
Bart Van Assche
ab69b20fe2
ib_srpt: Fix a recently introduced RHEL 5 / CentOS 5 deadlock triggered by initiator logout
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3545 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-05 10:00:57 +00:00
Bart Van Assche
ce81f59468
ib_srpt: Simplify IB CM code
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3544 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-05 09:59:17 +00:00
Bart Van Assche
2ed01977da
ib_srpt: Fix a spelling error
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3543 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-05 09:58:32 +00:00
Bart Van Assche
a43b1b63fc
ib_srpt: Add a BUG_ON() statement
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3542 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-05 09:58:03 +00:00
Bart Van Assche
1061f1cf43
ib_srpt: Fix a recently introduced leak in an error path
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3541 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-05 09:57:35 +00:00
Bart Van Assche
8aacdf09ef
ib_srpt: Remove an unused variable
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3540 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-05 09:56:58 +00:00
Bart Van Assche
3684b6394e
ib_srpt: Convert a PRINT_INFO() statement into a TRACE_DBG() statement
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3539 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 18:17:01 +00:00
Bart Van Assche
6fdc0baaaa
ib_srpt: Build fix for non-RHEL pre-2.6.25 kernels.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3538 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 18:10:45 +00:00
Bart Van Assche
0239f80a94
ib_srpt: Remove srpt_pending_cmd_timeout() because it is never invoked
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3537 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 17:51:46 +00:00
Bart Van Assche
7d3bd0ee6d
ib_srpt: Relax I/O context locking
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3536 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 17:50:54 +00:00
Bart Van Assche
c2bd2e8bf5
ib_srpt: Remove "thread" kernel module parameter and keep thread=1 behavior - the other two modes could cause soft lockup complaints
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3535 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 17:50:19 +00:00
Bart Van Assche
edf466ba9f
ib_srpt: Add more TRACE_ENTRY()/TRACE_EXIT() macros
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3534 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 17:48:14 +00:00
Bart Van Assche
bd8b360569
ib_srpt: Reduce number of context switches during I/O for mode thread=1.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3533 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 14:37:56 +00:00
Bart Van Assche
b9f4ee7bc8
ib_srpt: Fix a (hard to trigger) race with regard to SRP login.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3532 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 14:32:22 +00:00
Bart Van Assche
bc913e9258
ib_srpt: Rework channel closing
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3531 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 14:27:45 +00:00
Bart Van Assche
f1beb1d82d
ib_srpt: Eliminate a kmalloc(GFP_ATOMIC) call
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3530 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 14:06:12 +00:00
Bart Van Assche
b86ea97241
ib_srpt: Update test plan
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3529 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 13:45:16 +00:00
Bart Van Assche
316ba64801
ib_srpt: Revert r3522.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3528 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 12:37:09 +00:00
Bart Van Assche
32725f9048
ib_srpt: Introduce the function srpt_set_ch_state_to_draining()
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3527 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 12:36:03 +00:00
Bart Van Assche
554dad3475
ib_srpt: Remove a superfluous break statement
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3526 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 12:33:57 +00:00
Bart Van Assche
0e435ce468
Reverted r3521.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3525 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-04 12:24:41 +00:00
Vladislav Bolkhovitin
8cfb816e16
Cleanup
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3523 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-03 20:29:48 +00:00
Bart Van Assche
5736aadf0d
ib_srpt: Silence a compiler warning.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3522 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-03 07:03:31 +00:00
Bart Van Assche
bdc209d520
ib_srpt: Removed a superfluous if-statement. This is a micro-optimization.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3521 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-02 19:13:06 +00:00