- Modified srpt_build_cmd_rsp() and srpt_build_tskmgmt_rsp() such that
these two functions now return the number of bytes of the response PDU
built.
- Converted a printk() statement to TRACE_DBG().
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1029 d57e44dd-8a1f-0410-8b47-8ef2f437770f
this list. Only the number of IB devices is relevant for the SRPT
implementation. Introduced a new counter that tracks the number of IB
devices.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1016 d57e44dd-8a1f-0410-8b47-8ef2f437770f
srpt_ch_qp_rtr() and srpt_ch_qp_rts().
- Replaced dynamic memory allocation (kmalloc()/kfree()) in the aforementioned
two functions by stack allocation.
- Compiles again on pre-2.6.22 kernels (RHEL / CentOS systems).
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1015 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Inlined srpt_disconnect_channel().
- Modified error handling coding style in srpt_cm_req_recv() to the usual
kernel coding style: upon error, jump to the error handling code.
- Added more comments.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1014 d57e44dd-8a1f-0410-8b47-8ef2f437770f
the SCST core fails (abort task, LUN reset, ...), an SRP_RSP PDU is
now sent back to the initiator.
- Added more debug tracing statements.
- Improved readability of some parts of the source code.
- Added more comments.
- Partially reverted one hunk of r1003: while casting an unsigned 64-bit
value to the type u64 and printing such values via %llx works fine on
x86 systems, the same code triggers a compiler warning on PowerPC
systems. So while r1003 changed some (unsigned long long) casts to (u64)
casts, this revision changes these back to (unsigned long long) casts.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1012 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Added a second argument to srpt_find_channel() that specified whether or not
the channel should be removed from the channel list if found.
- Moved list_del() statement from the body of the srpt_release_channel()
function to its callers.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1005 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Changed return type of srpt_release_channel() from int to void
because the return value did depend in a trivial way on the function
arguments. Changed the return type of srpt_find_and_release_channel()
and several of its callers also from int to void. Instead
srpt_cm_handler() now directly sets its own return value.
- Converted a list_for_each_entry_safe() into a list_for_each_entry() loop
because no elements are added or deleted in the loop body.
- Converted debug-printk() statements into TRACE_DBG().
- Changed indentation of one statement from 12 to 16 (was not reported by
checkpatch).
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1003 d57e44dd-8a1f-0410-8b47-8ef2f437770f
written into a buffer with a size of 32 bytes. Enlarged the buffer
to 36 bytes.
- Converted sprintf() calls to snprintf() calls.
- Added more TRACE_ENTRY() / TRACE_EXIT() statements.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@992 d57e44dd-8a1f-0410-8b47-8ef2f437770f
/proc/scsi_tgt/ib_srpt/trace_level such that the behavior of the
ib_srpt target is consistent with that of other SCST drivers.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@991 d57e44dd-8a1f-0410-8b47-8ef2f437770f
wait until srpt_refresh_port_work() finished. This race condition could be
triggered during module removal.
- Added a kernel module parameter called "trace_flag" that allows to set the
trace flags for the ib_srpt module before module initialization starts.
- Added sysfs variable /sys/class/infiniband_srpt/trace_level that allows to
display and to modify the enabled trace flags in a human-readable form.
- Added several TRACE_ENTRY() / TRACE_EXIT() statements.
- Added more comments.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@988 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- RHEL 5 + OFED: fixed kernel oops that was triggered by the reception of
an asynchronous InfiniBand event.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@880 d57e44dd-8a1f-0410-8b47-8ef2f437770f
call to scst_unregister() in srpt_remove_one(). Result:
- The kernel oops triggered by loading the ib_srpt kernel module before
the InfiniBand subnet manager became active is now fixed.
- It is now possible to log in via the SRP protocol through HCA's that
became active after the ib_srpt kernel module finished module
initialization.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@878 d57e44dd-8a1f-0410-8b47-8ef2f437770f
handler registration: sport->mad_agent is now reset to NULL when MAD
handler registration fails.
- Fixed bug in srpt_refresh_port(): this function now returns a negative
value instead of zero when MAD registration fails.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@877 d57e44dd-8a1f-0410-8b47-8ef2f437770f
when an SRP login request is rejected. This fixes a memory leak: the
InfiniBand core (drivers/infiniband/core/cm.c) only calls cm_free_work()
when the registered cm_handler function, i.e. srpt_cm_req_recv()
returns an error code. This patch has been submitted by by Frank Zago.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@800 d57e44dd-8a1f-0410-8b47-8ef2f437770f
ports. show_login_info() produces the information that can be retrieved
from /sys/class/infiniband_srpt/srpt-*/login_info. Note: as of today
there do not yet exist any InfiniBand HCA's with more than two ports.
Thanks to Frank Zago for reporting this issue.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@799 d57e44dd-8a1f-0410-8b47-8ef2f437770f
It, hopefully, fixes compilation problems on CentOS 5.2 as well as on vanilla kernels <2.6.28
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@638 d57e44dd-8a1f-0410-8b47-8ef2f437770f
WARNING! This commit changes external SCST interface, so it can break compilation of your out of SCST SVN tree target driver or dev handler. To fix it, simply supply the preferred exection context to scst_cmd_done() and/or scst_tgt_cmd_done().
Thanks to Bart Van Assche <bart.vanassche@gmail.com> for pointing on it.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@556 d57e44dd-8a1f-0410-8b47-8ef2f437770f