Commit Graph

2695 Commits

Author SHA1 Message Date
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
Bart Van Assche 073a504cd3 ib_srpt: Another follow-up for r3515.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3520 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-02 19:12:29 +00:00
Bart Van Assche ea8e30581e Made ib_srpt build with OFED 1.5.3.1.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3519 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-02 18:21:39 +00:00
Bart Van Assche 1395c41108 ib_srpt: Builds again on RHEL 5.x
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3518 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-02 16:04:13 +00:00
Bart Van Assche 864b679c38 Only #include <linux/version.h> if necessary.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3517 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-02 14:55:54 +00:00