Vladislav Bolkhovitin
03c8f6fcd7
Fix compilations problems with gcc 4.6 reported by Bart Van Assche <bvanassche@acm.org>
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3367 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-04-08 17:50:39 +00:00
Vladislav Bolkhovitin
b4200acdaf
Possibility to specify human readable comments to targets (for instance, to specify which target maps to which port) added
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3357 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-04-05 19:56:01 +00:00
Vladislav Bolkhovitin
4539005d7c
Patch from Alexey Obitotskiy <alexeyo1@open-e.com> making get_initiator_port_transport_id() more flexible
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3322 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-03-29 14:30:01 +00:00
Bart Van Assche
a078a269f3
Complain if it is attempted to use the sysfs interface on a pre-2.6.26 kernel.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3285 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-03-20 09:26:34 +00:00
Vladislav Bolkhovitin
5cd8982545
Custom parse improvements
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3281 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-03-15 13:09:13 +00:00
Bart Van Assche
1a3b890e8f
Build fixes for kernel 2.6.38.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3239 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-01-29 11:23:25 +00:00
Vladislav Bolkhovitin
a31a60aebf
Minor versions handling improvements
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3227 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-01-17 12:44:34 +00:00
Vladislav Bolkhovitin
cbb7de538f
More performance and scalability improvements
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3222 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-01-14 21:05:25 +00:00
Vladislav Bolkhovitin
9a2c977e68
Per sessions commands stats implemented based on patch from Steven Umbehocker <steven.umbehocker@osnexus.com>
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3218 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-01-14 11:51:22 +00:00
Vladislav Bolkhovitin
dfa288aaa0
Cleanup
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3212 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-01-13 12:47:36 +00:00
Vladislav Bolkhovitin
e6d32fb639
Cleanup
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3211 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-01-13 12:41:02 +00:00
Vladislav Bolkhovitin
cf12f93cd3
Cleanup: CONFIG_SCST_ORDERED_READS removed
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3206 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-01-12 13:05:45 +00:00
Vladislav Bolkhovitin
f15f2cdd5f
- Making scst_local be safe with BLOCKIO and pass-through.
...
- Docs update
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3205 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-01-11 13:39:27 +00:00
Vladislav Bolkhovitin
411fb4f623
- Update for 2.6.37
...
- Docs updated
- Returning of DIRECT contexts by scst_estimate_context() disabled (see comment in the patch why)
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3203 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-01-10 18:34:29 +00:00
Vladislav Bolkhovitin
f3238333dd
Copyrights updated
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3200 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-01-06 20:02:04 +00:00
Vladislav Bolkhovitin
7bf6429246
Let's not crash if BUG triggered with IRQs or BHs disabled. At least, in the debug build.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3198 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2011-01-06 18:29:17 +00:00
Vladislav Bolkhovitin
a16d010935
Comment extended
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3162 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-12-21 11:51:10 +00:00
Vladislav Bolkhovitin
25dd5b2e2e
I/O context creation and cleanup in SCST command-processing threads is
...
protected by io_context_mutex. The patch below changes that mutex from a
single mutex for all command threads to one mutex per thread pool.
+
Two quickly succeeding command thread management actions, e.g. setting both
threads_num and threads_pool_type via scst.conf, can trigger the bug mentioned
below. That bug can be triggered because kthread_stop() can stop a thread
before it has started. So it can happen that an I/O context is created inside
scst_cmd_thread() but not cleaned up because the thread for which
p_cmd_threads->nr_threads == 1would evaluate to true is never started. The
patch below fixes this by guaranteeing that if an I/O context has been created
for a thread pool that it gets cleaned up too.
Signed-off-by: Bart Van Assche <bvanassche@acm.org >
with fixes/cleanups
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3152 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-12-20 19:03:49 +00:00
Bart Van Assche
6028abbb99
Added definition of macro scst_assert_activity_suspended().
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3103 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-12-16 13:10:09 +00:00
Bart Van Assche
49e8bb1aea
Fixed a <=2.6.29 compiler warning.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@3020 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-12-11 11:14:11 +00:00
Bart Van Assche
3fb6b9e6e7
scst_disk builds again on kernel 2.6.30 and before (was broken by r2836).
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2965 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-12-07 17:30:09 +00:00
Bart Van Assche
1633190a4a
scst: Only enable sysfs-specific variables in the sysfs build and not in the procfs build. This commit does not change any behavior of SCST.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2731 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-11-17 14:18:31 +00:00
Bart Van Assche
b28125eb9e
Fixed more spelling errors in source code comments and logging statements.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2708 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-11-14 16:02:55 +00:00
Vladislav Bolkhovitin
9ecf46038d
Small optimization: there's no point to keep full kobj completion.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2665 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-11-11 13:02:00 +00:00
Vladislav Bolkhovitin
0463afc282
Patch from Bart Van Assche <bvanassche@acm.org> with some changes implementing additional hooks to allow target drivers to override INQUIRY responses and support for LUNs addressing method.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2649 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-11-09 21:01:21 +00:00
Vladislav Bolkhovitin
0754629ea6
Partially remove implicit ordered commands as a nonsense. It will be replaced by a common waiting facility to wait on depending previous commands to complete.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2604 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-11-05 11:54:22 +00:00
Bart Van Assche
28f40bb2ff
Fixed those spelling errors in source code comments that were detected by ispell.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2518 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-10-31 09:28:14 +00:00
Vladislav Bolkhovitin
e9a57cd875
Enforce max LUNs limitation
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2490 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-10-29 18:34:48 +00:00
Vladislav Bolkhovitin
499da51437
Revert r2446 as wrong
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2461 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-10-25 13:00:20 +00:00
Vladislav Bolkhovitin
86814a9503
Changing SCST objects freeing to be done in their kobjects release() functions as requested by Greg KH in http://lkml.org/lkml/2010/10/14/299
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2446 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-10-22 17:21:47 +00:00
Vladislav Bolkhovitin
c966f14eae
scst_pre_parse() must be called before scst_cmd_set_sn() to correctly process implicit HQ and ORDERED commands, so move it to __scst_init_cmd(). As consequence, SCST_CMD_STATE_PRE_PARSE state isn't needed anymore, hence remove it.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2420 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-10-18 18:23:08 +00:00
Bart Van Assche
26f9165b48
Made sure that sparse can process scst.h. Apparently there is a bug in sparse which makes sparse interpret single quotes in preprocessor statements as character delimiters.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2378 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-10-08 19:40:18 +00:00
Vladislav Bolkhovitin
cef1b4cdff
The changes included in the patch below are:
...
- If someone tries to build SCST on an RHEL 5 system without having
run 'make enable_proc' first, complain.
- Do not define set_cpus_allowed_ptr() on RHEL 5 since RHEL 5 does
have a declaration for this function.
The function itself is not exported from the kernel however (this is probably a bug). Because of that, replace
the call to set_cpus_allowed_ptr() in scst_main.c by a call to set_cpus_allowed().
- Do not define the variable 'err' on kernels where that variable is
not used in order to avoid a compiler warning.
- Also in scst_vdisk.c, pass a 16-bit value as the first argument of
put_unaligned() when writing to a 16-bit variable in order to avoid a compiler warning.
Signed-off-by: Bart Van Assche <bvanassche@acm.org >
with fixes and additions:
- In scst_vdisk.c we need 32-bit values, not 16, fixed
- Optimal UNMAP granuality changed to 1.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2377 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-10-08 19:30:39 +00:00
Vladislav Bolkhovitin
f245543a36
Cleanup of support of kernels prior 2.6.18
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2368 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-10-08 13:01:15 +00:00
Vladislav Bolkhovitin
d7e087e3b2
Minor extended CDBs handling cleanups and fixes
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2351 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-10-05 20:06:54 +00:00
Vladislav Bolkhovitin
2370609897
Minor cleanups
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2349 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-10-05 18:45:20 +00:00
Vladislav Bolkhovitin
929b4db422
Slightly modified patch from Bart Van Assche <bvanassche@acm.org> fixing build breakage on not too recent kernels introduced by r2317
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2324 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-10-01 12:09:26 +00:00
Vladislav Bolkhovitin
ff2c24c1c3
Assigning CPU affinity to threads and connections
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2317 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-30 18:07:27 +00:00
Vladislav Bolkhovitin
8d23a63c3c
Cleanup
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2296 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-28 15:02:21 +00:00
Vladislav Bolkhovitin
121a30e9b2
Big CDBs handling improvements.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2295 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-28 13:56:46 +00:00
Vladislav Bolkhovitin
2546872ae5
Setting may_need_dma_sync in scst_get_sg_X_page_first() is not needed, because it doesn't map the page and CPU doesn't access the data directly
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2293 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-27 20:45:54 +00:00
Vladislav Bolkhovitin
864d4b38c7
Fix possible deadlock on waiting on blocking. As a side effect it leaded to a nice cleanup.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2272 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-25 18:25:32 +00:00
Bart Van Assche
0ed0b1f709
Reapplied r2249 (was lost by moving constants from scst.h to scst_const.h.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2257 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-24 20:21:28 +00:00
Bart Van Assche
6e35445b98
Moved the UNMAP and BLKDISCARD definitions from scst.h to scst_const.h.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2254 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-24 19:39:40 +00:00
Bart Van Assche
50f64cc7ca
Builds now on 2.6.27 too.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2249 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-24 19:15:14 +00:00
Bart Van Assche
487a846ef8
Follow-up for r2216: made sure that scst_vdisk.c compiles again on kernels before 2.6.33.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2245 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-24 17:59:42 +00:00
Vladislav Bolkhovitin
30b6564f81
Patch from Richard Sharpe <realrichardsharpe@gmail.com> with fixes and improvements implementing UNMAP command
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2216 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-23 18:10:57 +00:00
Vladislav Bolkhovitin
e85fa52760
Fix race for last_sysfs_mgmt_res between management commands and read-only monitoring actions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2201 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-23 13:31:54 +00:00
Vladislav Bolkhovitin
53d2c612b7
Small improvement: scst_get_sg_page_first()/scst_get_sg_page_next() added to avoid page_address()/virt_to_page() pair for cases, where only pages are needed.
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2131 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-15 19:18:47 +00:00
Vladislav Bolkhovitin
669c380211
The patch below makes it again possible to build SCST against the 2.6.23
...
or before kernel headers and also suppresses several compiler warnings
about possibly uninitialized variables.
Signed-off-by: Bart Van Assche <bvanassche@acm.org >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@2129 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2010-09-15 18:00:17 +00:00