mirror of
https://github.com/SCST-project/scst.git
synced 2026-05-17 10:41:26 +00:00
Merge branch 'svn-trunk'
This commit is contained in:
@@ -12,8 +12,6 @@ ccflags-y += -I$(src)/../scst/include
|
||||
ccflags-y += $(call cc-option,-Wextra) -Wno-unused-parameter\
|
||||
-Wno-missing-field-initializers
|
||||
|
||||
#ccflags-y += -DCONFIG_SCST_LOCAL_DIRECT_PROCESSING
|
||||
|
||||
obj-m := scst_local.o
|
||||
else
|
||||
######### BEGIN OUT-OF-TREE RULES #########
|
||||
|
||||
@@ -228,24 +228,6 @@ user space:
|
||||
For other connected initiators steps 3-6 should be repeated.
|
||||
|
||||
|
||||
Compilation options
|
||||
===================
|
||||
|
||||
There are the following compilation options, that could be commented
|
||||
in/out in Makefile:
|
||||
|
||||
- CONFIG_SCST_LOCAL_DIRECT_PROCESSING - by default, when this option
|
||||
is not defined, scst_local reschedules all commands for processing in
|
||||
one of the SCST threads. If this option is defined, scst_local tries
|
||||
to not do it, if possible (sometimes queuecommand() called under
|
||||
various locks held), but instead process them in the submitter's
|
||||
context. This is to increase performance, but as on 2.6.37 and below
|
||||
Linux block layer doesn't work with such kind of reentrance, hence
|
||||
this option disabled by default. Note! At the moment in
|
||||
scst_estimate_context*() returning DIRECT contexts disabled, so this
|
||||
option doesn't have any real effect.
|
||||
|
||||
|
||||
Change log
|
||||
==========
|
||||
|
||||
|
||||
@@ -1045,29 +1045,7 @@ static int scst_local_queuecommand_lck(struct scsi_cmnd *scmd,
|
||||
scst_cmd_set_tgt_priv(scst_cmd, scmd);
|
||||
#endif
|
||||
|
||||
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
|
||||
#ifdef CONFIG_SCST_LOCAL_DIRECT_PROCESSING
|
||||
/*
|
||||
* NOTE! At the moment in scst_estimate_context*() returning
|
||||
* DIRECT contexts disabled, so this option doesn't have any
|
||||
* real effect.
|
||||
*/
|
||||
#ifdef CONFIG_SMP
|
||||
if (spin_is_locked(scmd->device->host->host_lock))
|
||||
scst_cmd_init_done(scst_cmd, SCST_CONTEXT_THREAD);
|
||||
else
|
||||
#endif
|
||||
scst_cmd_init_done(scst_cmd, scst_estimate_context());
|
||||
#else
|
||||
scst_cmd_init_done(scst_cmd, SCST_CONTEXT_THREAD);
|
||||
#endif
|
||||
#else
|
||||
/*
|
||||
* We called with IRQs disabled, so have no choice,
|
||||
* except to pass to the thread context.
|
||||
*/
|
||||
scst_cmd_init_done(scst_cmd, SCST_CONTEXT_THREAD);
|
||||
#endif
|
||||
|
||||
TRACE_EXIT();
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user