Commit Graph

1289 Commits

Author SHA1 Message Date
Bart Van Assche
ffb2fb1f11 Updated SRPT documentation.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1379 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-12-06 12:44:47 +00:00
Bart Van Assche
001d47266c Updated to do list.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1378 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-12-06 12:37:21 +00:00
Bart Van Assche
0486e8404c - Moved two constants from ib_srpt.c to ib_srpt.h.
- Changed default value of srp_max_message_size from 4096 to 2116. This
  size corresponds to the size of an SRP_CMD request message containing
  an indirect buffer list with 128 elements.
- A warning is now printed when an SRP_CMD request is received containing
  more than one CDB -- this kind of messages is not yet supported.
- Switched back from multiple ib_dma_sync_single_for_cpu() calls to a
  single call because the latter results in better performance.
- An error message is now printed if a corrupt SRP_CMD request has been
  received. Before these were ignored silently.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1377 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-12-05 10:10:53 +00:00
Mark Buechler
60d27d6e24 - Added new vdisk_blockio and vdisk_nullio introduced by the sysfs changes.
Change by witoldk1@open-e.com.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1376 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-12-04 19:08:32 +00:00
Vladislav Bolkhovitin
7572933afe Validator fix
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1375 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-12-03 18:57:58 +00:00
Vladislav Bolkhovitin
47e976b0d8 Web updates
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1374 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-12-03 18:43:13 +00:00
Vladislav Bolkhovitin
24482f5d41 Some locking cleanups
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1373 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-30 19:17:59 +00:00
Bart Van Assche
7a330f2e09 Should have been included in the previous commit (r1371).
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1372 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-30 10:59:40 +00:00
Bart Van Assche
b371630185 Avoid dangling pointer dereferences by resetting ioctx->scmnd in srpt_on_free_cmd().
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1371 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-30 09:51:17 +00:00
Bart Van Assche
7cdcbc8c69 Cleanup:
- Removed a spinlock that became superfluous.
- Fixed checkpatch and sparse complaints.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1370 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-28 18:40:15 +00:00
Bart Van Assche
418e7fb3d6 - Split srpt_find_channel into two functions: srpt_find_channel() and
srpt_release_channel_by_cmid().
- Removed tracing statements from srpt_unmap_sg_to_ib_sge() because this
  function is now invoked while performing I/O.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1369 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-28 17:20:22 +00:00
Bart Van Assche
ec2e199060 Bug fixes (some introduced in the previous revision, some long-standing):
- Fixed system lockup triggered by "rmmod ib_srpt" while the SRP was writing
  data. This lockup occurred because srpt_reset_ioctx() was not resetting
  the pointers to the memory it freed, which indirectly triggered a kernel
  oops in the IB interrupt handler.
- Fixed BUG() during "rmmod ib_srpt" triggered by calling scst_rx_cmd()
  after scst_unregister_session(). This has been fixed by making sure that
  the channel state is set to RDMA_CHANNEL_DISCONNECTING before calling
  scst_unregister_session().
Performance improvements:
- Simplified cmd_wait_list manipulation code.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1368 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-28 16:36:53 +00:00
Bart Van Assche
f50ce17866 Bug fixes:
- Fixed races on srpt_ioctx::state manipulation by declaring this variable
  atomic.
- Fixed races on srpt_rdma_ch::state manipulation by declaring this variable
  atomic.
- Fixed bug in srpt_abort_scst_cmd(): SRPT_STATE_DATA_IN was not yet handled.
- Fixed races on srpt_rdma_ch::cm_id destruction. Clearly documented which
  object owns the cm_id at which time.
Performance improvements:
- Eliminated the list of active commands (active_scmnd_list) because this
  list was a duplicated of a list already kept by the SCST core.
- Switched to double-checked locking in srpt_handle_new_iu(). This saves one
  spin_lock_irqsave() and one spin_unlock_irqrestore() call in the common
  case (that is, a live channel).
- Eliminated RDMA channel state tests in SCST command handling callback
  functions -- removed the function srpt_abort_if_disconnecting().


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1367 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-28 14:03:55 +00:00
Bart Van Assche
2ff67c27cc Removed trailing whitespace.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1366 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-28 08:24:10 +00:00
Vladislav Bolkhovitin
69d7b1eba7 Patch from Witold Kowolik <witoldk1@open-e.com> implementing manual setting of SCSI ID on vdisk devices (with some changes)
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1365 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-27 18:52:23 +00:00
Vladislav Bolkhovitin
1de649c263 Followup for r1361
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1364 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-27 18:22:45 +00:00
Bart Van Assche
e6f5aa8865 Changes:
- The message that sense data is truncated is now generated via the
  PRINT_WARNING() macro instead of TRACE_DBG().
- Cleaned up code for sense data truncation.
- Compiles again on RHEL and CentOS systems.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1363 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-27 17:52:47 +00:00
Bart Van Assche
1065e2d317 Log sense data truncation when debugging is enabled.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1362 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-27 12:10:59 +00:00
Vladislav Bolkhovitin
f381dbb74c Device sysfs locking reconsidered to remove recently introduced deadlock possibility.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1361 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-26 18:39:13 +00:00
Vladislav Bolkhovitin
a4f3af18bb Improve fairness between connections.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1360 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-24 19:50:11 +00:00
Vladislav Bolkhovitin
d3665768f0 Logos rearranged
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1359 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-24 11:52:54 +00:00
Vladislav Bolkhovitin
78ec60df89 Fix for warning: 'res' may be used uninitialized in this function
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1358 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-23 18:43:03 +00:00
Vladislav Bolkhovitin
f0a5a62fd4 - Patch from Daniel Fernandes <dfernandes1978@hotmail.com> adding validator logos
- QStar Technologies added



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1357 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-23 16:38:44 +00:00
Vladislav Bolkhovitin
2658982f05 - Patch from Daniel Fernandes <dfernandes1978@hotmail.com> fixing bug in URL reported by validator
- Soul company name fixed



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1356 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-23 12:06:23 +00:00
Vladislav Bolkhovitin
78f387fe1b Patch from Daniel Fernandes <dfernandes1978@hotmail.com>:
- Fixes Some code error in comparison.html
 - Add class tab to Orange.css
 - Add tab class in code inside Contributing.html

+ Beijing Soul Technology Co., Ltd. added on the users page



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1355 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-23 11:44:55 +00:00
Bart Van Assche
10530125a5 Whitespace-only change.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1354 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-23 08:40:51 +00:00
Bart Van Assche
495257b44e - Added counter that keeps track of the number of work requests posted on
the per-channel queue pair. This counter is used to prevent that
  ib_post_send() triggers a queue overflow.
- Fixed error handling in srpt_xfer_data(): srpt_unmap_sg_to_ib_sge() is now
  called before returning an error code.
- Simplified implementation of the sysfs attribute login_info.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1353 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-22 18:42:35 +00:00
Vladislav Bolkhovitin
c918eb371e gcc 4.4.1 (as included in openSUSE 11.2) complains about the user-space iSCSI code because it breaks strict-aliasing rules. The reported warnings should be addressed because not doing so can result in the compiler generating incorrect code. The patch below fixes these compiler warnings.
Signed-off-by: Bart Van Assche <bart.vanassche@gmail.com>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1352 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-20 19:53:12 +00:00
Vladislav Bolkhovitin
da022918e4 Patch from Daniel Fernandes <dfernandes1978@hotmail.com> fixing a bit incorrect layout on the users page
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1351 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-20 11:28:37 +00:00
Vladislav Bolkhovitin
8219791b72 Ordered reads groupped under single config symbol.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1350 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-19 11:57:57 +00:00
Vladislav Bolkhovitin
4e65d67680 Fix bug preventing pass-through dev handlers be loaded if SCSI_EXEC_REQ_FIFO_DEFINED not defined.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1349 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-19 10:22:25 +00:00
Vladislav Bolkhovitin
96e4adfb03 Minor web updates and fixes
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1348 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-18 13:57:58 +00:00
Bart Van Assche
e9e8884f41 Removed trailing whitespace.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1347 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-18 07:52:12 +00:00
Bart Van Assche
b9402438ff Updated to do list once more.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1346 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-18 07:22:30 +00:00
Bart Van Assche
b01b495735 Updated to do list.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1345 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-17 20:03:35 +00:00
Bart Van Assche
a57d10033f Added more comments.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1344 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-17 18:01:16 +00:00
Bart Van Assche
9d65e4fe05 Removed a BUILD_BUG_ON() statement that was too restrictive.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1343 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-17 18:00:23 +00:00
Vladislav Bolkhovitin
ef9469cefb Fix for recently introduced incorrectly set expected data direction
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1342 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-17 13:53:03 +00:00
Vladislav Bolkhovitin
c3ad1a5075 Minor compiler and checkpatch fixes
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1341 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-17 12:59:49 +00:00
Vladislav Bolkhovitin
42d9b02d49 Web fixes from Daniel Fernandes <dfernandes1978@hotmail.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1340 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-17 12:10:10 +00:00
Vladislav Bolkhovitin
ed22024642 Patch from Daniel Fernandes <dfernandes1978@hotmail.com>:
- Fixes wrong writing in using CompanySubTitles Class
 - Fixes lost link for SCST Local in Pages scst_admin.html and handler_fileio_tgt.html
 - Fixes Users.html page in Subtitles( I increase a little page space, and reduce a little font size)



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1339 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-16 18:19:46 +00:00
Vladislav Bolkhovitin
3261614731 - Fix for memory allocation for scst_user and locally handled commands
- Execution context cleanups and fixes



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1338 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-16 18:05:10 +00:00
Vladislav Bolkhovitin
760b190ba2 Users page made logs based
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1337 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-16 17:22:27 +00:00
Bart Van Assche
9955ef7627 Since the expression "sizeof(*sense) + sizeof(*sense) % 4" did not make
sense, replaced this expression by "sizeof(*sense)" and a BUILD_BUG_ON()
statement that verifies that sizeof(*sense) is a multiple of four. Should
the first expression have been "roundup(sizeof(*sense), 4)" ?


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1336 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-15 13:14:40 +00:00
Bart Van Assche
bcec50e065 - Small performance improvement: ib_dma_sync_for_device() and
ib_dma_sync_for_cpu() calls do now only synchronize the data areas used.
- Removed per-command mutex again because it's not a full solution with
  regard to avoiding races between module unloading / IB error handling and
  SCST's command handling.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1335 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-15 13:11:46 +00:00
Bart Van Assche
0a657760e0 Fixed a (false positive) compiler warning.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1334 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-14 19:30:27 +00:00
Bart Van Assche
4afbe006a5 Updated test instructions.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1333 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-11 18:56:05 +00:00
Bart Van Assche
5c208ca261 - Fixed races between command abortion code and regular command processing
code.
- Fixed the bug that new commands could be queued for a channel that was
  being closed.
- Bug fix: ib_dma_unmap_sg() is now called by srpt_xmit_response() when
  aborting commands.
- Changed default value of the kernel module parameter 'thread' from zero
  to one because using thread=0 can cause the Linux and the OFED SRP
  initiator to lock up -- see also
  http://bugzilla.kernel.org/show_bug.cgi?id=14235 and
  https://bugs.openfabrics.org/show_bug.cgi?id=1745.
- Made disconnect logging more detailed -- added cm_id in output.
- Changed argument type of second argument of srpt_release_channel() from
  int to bool.
- Eliminated srpt_abort_scst_cmd's 'tell_initiator' argument because this
  argument always has the same value (i.e. true).
- Simplified abortion of commands in state SRPT_STATE_NEW. Simplified
  implementation of srpt_on_free_cmd().


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1332 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-11 18:44:05 +00:00
Bart Van Assche
b2223e664b Updated kernel versions 2.6.27.38 and 2.6.31.5 to 2.6.28.39 and 2.6.31.6 respectively.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1331 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-10 11:59:00 +00:00
Vladislav Bolkhovitin
cf54a13171 Web fixes from Daniel Fernandes <dfernandes1978@hotmail.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@1330 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2009-11-09 20:05:52 +00:00