SRPT_STATE_NEW are now aborted properly too. Until now aborting an
SCST command that had state SRPT_STATE_NEW triggered a sBUG_ON()
statement in scst_tgt_cmd_done().
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1153 d57e44dd-8a1f-0410-8b47-8ef2f437770f
allows to control by how much the srpt_completion() function (which runs
in interrupt context) will be delayed.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1128 d57e44dd-8a1f-0410-8b47-8ef2f437770f
a command that has already been aborted, changed the message that
reports this from an error message to an informational message.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1123 d57e44dd-8a1f-0410-8b47-8ef2f437770f
replaced dma_*map* calls by ib_dma_*map* calls. Added the conversion
of dma_sync_single_for_device() to ib_dma_sync_single_for_device().
This only changes the behavior of SRPT for those IB interfaces whose
driver implements the ib_dma_mapping_ops operations.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1118 d57e44dd-8a1f-0410-8b47-8ef2f437770f
The OFED commit made a.o. ib_srpt.c compile on 2.6.30 and later kernels.
Although the SCST ib_srpt.c code already compiles on a 2.6.30 kernel, this
commit has been ported to SCST because the source code of the OFED
implementation is cleaner. This commit does not change any functionality
of SCST's SRPT.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1117 d57e44dd-8a1f-0410-8b47-8ef2f437770f
PRINT_INFO() and related macro's.
- Replaced printk(KERN_INFO PFX and printk(KERN_ERROR PFX by
PRINT_INFO( and PRINT_ERROR( respectively.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1089 d57e44dd-8a1f-0410-8b47-8ef2f437770f
"Mellanox OFED SRP target" to "SCST SRP target" to reflect that this
version of the SRP target is distributed through the SCST project.
- Added kernel parameter use_port_guid_in_session_name that allows to
use the original session naming scheme of the SRP target. This should
make it again possible to connect to a multiport SRP target by masking
out redundant paths on the target.
- Made sure that whenever a login is rejected that a kernel message is
generated (printk()) such that this information ends up in
/var/log/messages.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1055 d57e44dd-8a1f-0410-8b47-8ef2f437770f
solve the connectivity problem between WinOF and an SRP target
equipped with multiple IB ports.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1039 d57e44dd-8a1f-0410-8b47-8ef2f437770f
parameter to true should make it possible to connect from a WinOF
initiator to an SRP target when there is more than one IB path
between initiator and target.
- Renamed mellanox_ioc_guid into global_ioc_guid.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1034 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- 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