Bart Van Assche
58eb630bd0
Fixed the issue that 'rmmod ib_srpt' with ongoing SRP I/O could trigger
...
a deadlock.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@998 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-07-31 11:40:10 +00:00
Bart Van Assche
f5097d6263
Whitespace-only changes: fixed checkpatch complaints introduced in the previous commit.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@997 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-07-31 11:33:26 +00:00
Bart Van Assche
221ce1846b
Added more comments.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@996 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-07-31 11:27:54 +00:00
Bart Van Assche
745a852fbe
- Fixed a buffer overrun: a service entry name occupying 35 bytes was
...
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
2009-07-30 12:48:06 +00:00
Bart Van Assche
57f4019ed5
Moved /sys/class/infiniband_srpt/trace_level to
...
/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
2009-07-30 08:32:23 +00:00
Bart Van Assche
3bf7d6dca1
Compiles again with tracing disabled.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@990 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-07-30 06:38:15 +00:00
Bart Van Assche
3e18defd73
Should have been included in the previous commit (r988).
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@989 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-07-29 18:14:41 +00:00
Bart Van Assche
5d67fefe37
- Fixed a race condition found via source reading: srpt_remove_one() did not
...
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
2009-07-29 16:57:00 +00:00
Bart Van Assche
2de35d6ad4
Fixed the following issue reported by lockdep:
...
------------[ cut here ]------------
WARNING: at kernel/lockdep.c:2197 trace_hardirqs_on_caller+0x14c/0x1b0()
Call Trace:
<IRQ>
[<ffffffff8024636f>] warn_slowpath+0xaf/0x110
[<ffffffff8026e1be>] ? check_usage_forwards+0x5e/0xc0
[<ffffffff8026e818>] ? mark_lock+0x538/0xcc0
[<ffffffff802ccfc1>] ? cache_alloc_refill+0x191/0x2b0
[<ffffffff804ee62b>] ? _spin_unlock_irq+0x2b/0x40
[<ffffffff8026f23c>] trace_hardirqs_on_caller+0x14c/0x1b0
[<ffffffff8026f2ad>] trace_hardirqs_on+0xd/0x10
[<ffffffff804ee62b>] _spin_unlock_irq+0x2b/0x40
[<ffffffffa0657711>] srpt_handle_new_iu+0x2f1/0x630 [ib_srpt]
[<ffffffffa0657bab>] srpt_completion+0x15b/0x300 [ib_srpt]
[<ffffffffa04321f2>] mlx4_ib_cq_comp+0x12/0x20 [mlx4_ib]
[<ffffffffa01f42aa>] mlx4_cq_completion+0x3a/0x80 [mlx4_core]
[<ffffffffa01f5585>] mlx4_eq_int+0x295/0x2a0 [mlx4_core]
[<ffffffffa01f561f>] mlx4_msi_x_interrupt+0xf/0x20 [mlx4_core]
[<ffffffff80288565>] handle_IRQ_event+0x35/0x70
[<ffffffff8028a144>] handle_edge_irq+0xb4/0x150
[<ffffffff8020eb71>] do_IRQ+0x81/0x110
[<ffffffff8020ced3>] ret_from_intr+0x0/0xf
<EOI>
[<ffffffff803b1a88>] ? cfb_imageblit+0x578/0x5a0
[<ffffffff803aaf09>] ? bit_putcs+0x3d9/0x6a0
[<ffffffff8026f252>] ? trace_hardirqs_on_caller+0x162/0x1b0
[<ffffffff8026f2ad>] ? trace_hardirqs_on+0xd/0x10
[<ffffffff804eb425>] ? thread_return+0x3d/0x928
[<ffffffff803ab49b>] ? soft_cursor+0x1ab/0x220
[<ffffffff803aaac7>] ? bit_cursor+0x647/0x6b0
[<ffffffff803a4a9b>] ? fbcon_putcs+0x1cb/0x320
[<ffffffff803aab30>] ? bit_putcs+0x0/0x6a0
[<ffffffff803a7506>] ? fbcon_redraw+0x166/0x1d0
[<ffffffff803a7770>] ? fbcon_scroll+0x200/0xd50
[<ffffffff803f7af0>] ? scrup+0x100/0x110
[<ffffffff803f7c7d>] ? lf+0x6d/0x70
[<ffffffff803fbb1d>] ? do_con_write+0x9dd/0x2300
[<ffffffff8026eff6>] ? mark_held_locks+0x56/0xa0
[<ffffffff8026f252>] ? trace_hardirqs_on_caller+0x162/0x1b0
[<ffffffff803fd499>] ? con_write+0x19/0x30
[<ffffffff803ea683>] ? n_tty_write+0x383/0x480
[<ffffffff8026f2ad>] ? trace_hardirqs_on+0xd/0x10
[<ffffffff8023d7d0>] ? default_wake_function+0x0/0x10
[<ffffffff803e76f4>] ? tty_write+0x1b4/0x280
[<ffffffff803ea300>] ? n_tty_write+0x0/0x480
[<ffffffff802d312b>] ? vfs_write+0xcb/0x170
[<ffffffff802d32c0>] ? sys_write+0x50/0x90
[<ffffffff8020c51b>] ? system_call_fastpath+0x16/0x1b
---[ end trace 954f4d9b9b9cdecc ]---
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@931 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-07-03 19:15:15 +00:00
Bart Van Assche
23e57ce05d
Compiles now against vanilla 2.6.18 kernel headers.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@926 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-06-29 19:00:10 +00:00
Bart Van Assche
7084cac82e
Display which kernel headers are used during compilation of the SRP target driver.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@913 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-06-18 18:35:05 +00:00
Bart Van Assche
010750bf7c
Ported to 2.6.30 kernel.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@898 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-06-14 07:45:12 +00:00
Bart Van Assche
fd89f0427b
Updated SRPT documentation.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@881 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-22 10:59:16 +00:00
Bart Van Assche
262a538807
- Compiles again on RHEL 5.
...
- 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
2009-05-22 06:39:42 +00:00
Bart Van Assche
4f8bd9a517
Removed the scst_released synchronization object because the previous
...
commit made it superfluous.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@879 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-21 12:41:53 +00:00
Bart Van Assche
7519550fcb
Moved scst_register() call from srpt_detect() to srpt_add_one(). Added
...
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
2009-05-21 12:34:11 +00:00
Bart Van Assche
106acdb7d6
- Switched to a more traditional error handling style with regard to MAD
...
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
2009-05-21 11:28:09 +00:00
Bart Van Assche
00dcebdb41
Fixed bug that was introduced through the previous commit (r875): a warning message was printed by srpt_remove_one() when sdev != NULL instead of when sdev == NULL.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@876 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-21 10:57:20 +00:00
Bart Van Assche
b2d0960b57
Moved the code for freeing the ring of I/O context structures to a separate function.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@875 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-21 06:54:42 +00:00
Bart Van Assche
2959a19435
Moved the code for unregistering the MAD agent into a separate function.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@874 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-21 06:33:38 +00:00
Bart Van Assche
7617a71367
Added more comments.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@863 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-19 17:58:06 +00:00
Bart Van Assche
5347e3f509
Reverted r857 because the coding style of r856 is believed to be what is expected upstream instead of the coding style of r857.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@860 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-19 16:41:09 +00:00
Bart Van Assche
f3d5d989ca
Cleaned up changes introduced in r855.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@857 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-16 11:24:45 +00:00
Bart Van Assche
812d04fa03
Added more comments.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@856 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-16 11:20:52 +00:00
Bart Van Assche
76bdb860f0
Split srpt_handle_new_iu() in smaller functions.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@855 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-16 07:34:41 +00:00
Bart Van Assche
0a76a2b21a
Updated to do list.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@848 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-11 17:55:59 +00:00
Bart Van Assche
72f5b47141
Another documentation update.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@838 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-10 19:20:58 +00:00
Bart Van Assche
0f132124b9
Added more details.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@837 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-10 18:28:09 +00:00
Bart Van Assche
7340819a3f
Clarified an error message.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@836 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-10 18:25:08 +00:00
Bart Van Assche
63bc07871d
Added a variant of the patch for scripts/Makefile.lib.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@835 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-10 18:04:57 +00:00
Bart Van Assche
603d81dde4
Documented how to build SCST-SRPT against OFED.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@834 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-10 17:31:22 +00:00
Bart Van Assche
9b25c9c44c
Updated to do file.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@833 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-10 17:29:41 +00:00
Bart Van Assche
52d50a5ea7
Removed one OFED installation test because on some distro's it triggers false complaints.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@822 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-04 20:02:30 +00:00
Bart Van Assche
c521377609
ib_srpt.c compiles now on RHEL 5.x systems where OFED has been installed.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@820 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-04 18:57:04 +00:00
Bart Van Assche
2f1acab33e
Prepend the OFED kernel header paths before the regular kernel header path when compiling on a system where OFED has been installed.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@819 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-04 18:55:50 +00:00
Bart Van Assche
90e914fd25
- Removed comments that referred to the 2.4 module build system.
...
- Simplified this Makefile: the target all now directly refers to
src/Module.symvers. Removed the phony target Module.symvers.
- An error message is now printed if OFED has been built with srpt=y.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@817 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-02 12:38:33 +00:00
Bart Van Assche
19ab352393
Made building against OFED more robust.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@815 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-01 19:12:14 +00:00
Bart Van Assche
8f7f3d64cc
Added support for compiling scst-srpt on a system where the OFED InfiniBand
...
kernel modules have been installed.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@814 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-05-01 09:24:47 +00:00
Vladislav Bolkhovitin
f572d4ff79
- Copyrights updated.
...
- Other minor updates
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@803 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-04-27 19:01:28 +00:00
Bart Van Assche
c712d12f40
The function srpt_cm_req_recv() now returns an error code instead of 0
...
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
2009-04-26 09:10:52 +00:00
Bart Van Assche
c3d3378bc2
Made show_login_info() work for InfiniBand HCA's with more than two
...
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
2009-04-26 08:39:06 +00:00
Vladislav Bolkhovitin
eb14f7ca12
ChangeLog and ToDo files updated
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@725 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-27 19:50:23 +00:00
Vladislav Bolkhovitin
643c7ab2d1
Patch from Ruben Laban <r.laban@ism.nl>:
...
I replaced all occurences of DISTDIR with DESTDIR and also introduced SBINDIR (and friends) to some other Makefiles.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@719 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-25 19:33:10 +00:00
Vladislav Bolkhovitin
d3d5666f5d
Cleanups
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@682 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-03-03 17:00:53 +00:00
Vladislav Bolkhovitin
e8b67bb755
- Docs updates
...
- Minor cleanups
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@675 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-02-18 18:52:35 +00:00
Vladislav Bolkhovitin
48addc3482
Modified patch from Bart Van Assche <bart.vanassche@gmail.com>
...
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
2009-01-23 19:51:54 +00:00
Vladislav Bolkhovitin
968475e2dc
Obsolete TODO removed
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@625 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-12-26 17:42:21 +00:00
Vladislav Bolkhovitin
de25580abb
Checkpatch fix
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@616 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-12-10 15:55:16 +00:00
Vladislav Bolkhovitin
41c3515516
- Memory barriers cleanup. Comments for them improved
...
- Small docs update
- srpt/README_in-tree added
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@614 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-12-10 10:55:01 +00:00
Bart Van Assche
f1b811e8dc
Fixed typo.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@607 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2008-12-06 14:04:29 +00:00