Bart Van Assche
c9bd29a8b9
ib_srpt: Clean up tracing statements
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3821 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-08-18 09:08:22 +00:00
Bart Van Assche
832968b65e
ib_srpt: Builds again on 32-bit systems
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3815 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-08-17 08:21:08 +00:00
Bart Van Assche
0e26a6c7a5
ib_srpt: Change __constant_cpu_... into cpu_... since the latter are also evaluated at compile time
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3803 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-08-14 08:48:42 +00:00
Bart Van Assche
47170d1578
ib_srpt: Function tracing output format fix
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3798 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-08-03 12:46:13 +00:00
Bart Van Assche
15d2609293
ib_srpt: Avoid that removing ib_srpt while I/O is ongoing sometimes triggers a hang
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3796 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-08-03 12:34:31 +00:00
Bart Van Assche
84f56dfa67
srpt: Change default build mode from release to debug. Add support for "make 2debug" / "make 2release" / "make 2perf".
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3759 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-07-26 09:26:17 +00:00
Bart Van Assche
0e3325b705
ib_srpt: Fix an RHEL-specific compiler warning.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3750 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-07-24 10:56:57 +00:00
Bart Van Assche
40d862c972
ib_srpt: Update author information
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3719 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-07-22 11:50:11 +00:00
Bart Van Assche
6a353597eb
ib_srpt: Remove a trailing tab
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3650 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-07-02 11:54:14 +00:00
Bart Van Assche
42c151b01c
ib_srpt: Increase RDMA completion time from 60s to 80s such that it is above the maximum time it can take for the HCA to deliver a completion (which is 60.129s with local ack timeout = 18 and retry_cnt = 7)
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3649 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-07-02 11:36:44 +00:00
Bart Van Assche
fa232d0c22
ib_srpt: Log QP timeout if debugging is enabled
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3648 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-07-01 19:26:11 +00:00
Bart Van Assche
32f5924e18
ib_srpt: Zero-initialize QP attributes before invoking ib_modify_qp()
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3647 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-07-01 19:19:20 +00:00
Bart Van Assche
8681a0124a
ib_srpt: Avoid that failed multipart RDMA transfers cause havoc.
...
Multipart RDMA transfers can fail after one or more but not all RDMA transfers
have been initiated because either an IB cable has been pulled or the ib_srpt
kernel module has been unloaded while an RDMA transfer is being set up.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3632 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-26 14:46:23 +00:00
Bart Van Assche
97ee608748
ib_srpt: Embed HCA name in srpt thread name
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3631 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-26 14:32:00 +00:00
Bart Van Assche
eff4f33b70
ib_srpt: Relax a BUG_ON() statement into WARN_ON()
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3630 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-26 14:30:38 +00:00
Bart Van Assche
d08012d8cd
ib_srpt: Inline srpt_release_channel()
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3629 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-26 13:33:09 +00:00
Bart Van Assche
3e6f7ba432
ib_srpt: Document known max_sge limitations
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3628 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-26 07:20:49 +00:00
Bart Van Assche
85ac2c728b
ib_srpt: Works again on mthca (not tested yet). A quote from the OFED 1.2.5
...
release notes (docs/mthca_release_notes.txt), section "3. Known Issues":
3. In mem-free devices, RC QPs can be created with a maximum of (max_sge - 3)
entries only.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3627 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-25 19:32:32 +00:00
Bart Van Assche
5484d6dfc4
ib_srpt: Eliminate the magic constant SRPT_DEF_SG_PER_WQE
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3626 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-25 19:13:50 +00:00
Bart Van Assche
fd5df29c9c
ib_srpt: Remove two superfluous blank lines
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3607 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-06-22 19:28:15 +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
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
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
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
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