Minor changes based on comments from Tomasz Chmielewski <mangoo@wpkg.org>, Benjamin...
authorvlnb <vlnb@d57e44dd-8a1f-0410-8b47-8ef2f437770f>
Wed, 29 Aug 2007 09:52:07 +0000 (09:52 +0000)
committervlnb <vlnb@d57e44dd-8a1f-0410-8b47-8ef2f437770f>
Wed, 29 Aug 2007 09:52:07 +0000 (09:52 +0000)
git-svn-id: https://scst.svn.sourceforge.net/svnroot/scst/trunk@174 d57e44dd-8a1f-0410-8b47-8ef2f437770f

Makefile
iscsi-scst/etc/scst.conf
iscsi-scst/kernel/iscsi.c
scst/src/scst_main.c
scst/src/scst_mem.c
scst/src/scst_mem.h
scst/src/scst_targ.c

index ef113ea..0cc3d7c 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -27,6 +27,46 @@ USR_DIR=usr/fileio
 ISCSI_DIR=iscsi-scst
 #ISCSI_DISTDIR=../../../../iscsi_scst_inst
 
+help:
+       @echo "         all               : make all"
+       @echo "         clean             : clean files"
+       @echo "         extraclean        : clean + clean dependencies"
+       @echo "         install           : install"
+       @echo "         uninstall         : uninstall"
+       @echo ""
+       @echo "         scst              : make scst only"
+       @echo "         scst_clean        : scst: clean "
+       @echo "         scst_extraclean   : scst: clean + clean dependencies"
+       @echo "         scst_install      : scst: install"
+       @echo "         scst_uninstall    : scst: uninstall"
+       @echo ""
+       @echo "         qla               : make QLA target driver"
+       @echo "         qla_clean         : 2.6 qla target: clean "
+       @echo "         qla_extraclean    : 2.6 qla target: clean + clean dependencies"
+       @echo "         qla_install       : 2.6 qla target: install"
+       @echo "         qla_uninstall     : 2.6 qla target: uninstall"
+       @echo ""
+       @echo "         iscsi             : make iSCSI target"
+       @echo "         iscsi_clean       : ISCSI target: clean "
+       @echo "         iscsi_extraclean  : ISCSI target: clean + clean dependencies"
+       @echo "         iscsi_install     : ISCSI target: install"
+       @echo "         iscsi_uninstall   : ISCSI target: uninstall"
+       @echo ""
+       @echo "         lsi               : make LSI MPT target"
+       @echo "         lsi_clean         : lsi target: clean "
+       @echo "         lsi_extraclean    : lsi target: clean + clean dependencies"
+       @echo "         lsi_install       : lsi target: install"
+       @echo "         lsi_uninstall     : lsi target: uninstall"
+       @echo ""
+       @echo "         usr               : make user space fileio_tgt target"
+       @echo "         usr_clean         : usr target: clean "
+       @echo "         usr_extraclean    : usr target: clean + clean dependencies"
+       @echo "         usr_install       : usr target: install"
+       @echo "         usr_uninstall     : usr target: uninstall"
+
+       @echo " Note:"
+       @echo "         - install and uninstall may need root privileges"
+
 all:
        cd $(SCST_DIR) && $(MAKE) $@
        @if [ -d $(QLA_DIR) ]; then cd $(QLA_DIR) && $(MAKE) $@; fi
@@ -141,45 +181,6 @@ usr_clean:
 usr_extraclean:
        cd $(USR_DIR) && $(MAKE) extraclean
 
-help:
-       @echo "         all (the default) : make all"
-       @echo "         clean             : clean files"
-       @echo "         extraclean        : clean + clean dependencies"
-       @echo "         install           : install"
-       @echo "         uninstall         : uninstall"
-       @echo ""
-       @echo "         scst              : make scst only"
-       @echo "         scst_clean        : scst: clean "
-       @echo "         scst_extraclean   : scst: clean + clean dependencies"
-       @echo "         scst_install      : scst: install"
-       @echo "         scst_uninstall    : scst: uninstall"
-       @echo ""
-       @echo "         qla             : make new qla target using 2.6.x kernel qla2xxx"
-       @echo "         qla_clean       : 2.6 qla target: clean "
-       @echo "         qla_extraclean  : 2.6 qla target: clean + clean dependencies"
-       @echo "         qla_install     : 2.6 qla target: install"
-       @echo "         qla_uninstall   : 2.6 qla target: uninstall"
-       @echo ""
-       @echo "         iscsi             : make new ISCSI target"
-       @echo "         iscsi_clean       : ISCSI target: clean "
-       @echo "         iscsi_extraclean  : ISCSI target: clean + clean dependencies"
-       @echo "         iscsi_install     : ISCSI target: install"
-       @echo "         iscsi_uninstall   : ISCSI target: uninstall"
-       @echo ""
-       @echo "         lsi             : make lsi target"
-       @echo "         lsi_clean       : lsi target: clean "
-       @echo "         lsi_extraclean  : lsi target: clean + clean dependencies"
-       @echo "         lsi_install     : lsi target: install"
-       @echo "         lsi_uninstall   : lsi target: uninstall"
-       @echo ""
-       @echo "         usr             : make usr target"
-       @echo "         usr_clean       : usr target: clean "
-       @echo "         usr_extraclean  : usr target: clean + clean dependencies"
-       @echo "         usr_install     : usr target: install"
-       @echo "         usr_uninstall   : usr target: uninstall"
-       @echo " Notes :"
-       @echo "         - install and uninstall must be made as root"
-
 .PHONY: all install uninstall clean extraclean help \
        qla qla_install qla_uninstall qla_clean qla_extraclean \
        lsi lsi_install lsi_uninstall lsi_clean lsi_extraclean \
index 765a427..cf4cf99 100644 (file)
@@ -1,8 +1,8 @@
 [HANDLER vdisk]
 #DEVICE <vdisk name>,<device path>,<options>,<block size>
 DEVICE disk1,/path/disk1,,512
-DEVICE hdc1,/dev/hdc1,BIO,512
-DEVICE nullio,none,NIO,1024
+DEVICE hdc1,/dev/hdc1,BLOCKIO,512
+DEVICE nullio,none,NULLIO,1024
 
 [HANDLER vcdrom]
 #DEVICE <vdisk name>,<device path>
index 1efc5b9..cfca321 100644 (file)
@@ -24,9 +24,9 @@
 #include "digest.h"
 
 #ifndef NET_PAGE_CALLBACKS_DEFINED
-#warning Patch put_page_callback.patch not applied on your kernel. ISCSI-SCST \
-       will run in the performance degraded mode. Refer README file for \
-       details.
+#warning Patch put_page_callback-<kernel-version>.patch not applied on your \
+       kernel. ISCSI-SCST will run in the performance degraded mode. Refer \
+       README file for details.
 #endif
 
 #define ISCSI_INIT_WRITE_WAKE          0x1
@@ -2425,9 +2425,9 @@ static int __init iscsi_init(void)
                goto out;
        }
 #else
-       PRINT_INFO_PR("%s", "Patch put_page_callback.patch not applied on your "
-               "kernel. Running in the performance degraded mode. Refer "
-               "README file for details");
+       PRINT_INFO_PR("%s", "Patch put_page_callback-<kernel-version>.patch "
+               "not applied on your kernel. Running in the performance "
+               "degraded mode. Refer README file for details");
 #endif
 
        BUILD_BUG_ON(MAX_DATA_SEG_LEN != (ISCSI_CONN_IOV_MAX<<PAGE_SHIFT));
index b55a9a1..621bedd 100644 (file)
@@ -1,5 +1,5 @@
 /*
- *  scst.c
+ *  scst_main.c
  *  
  *  Copyright (C) 2004-2007 Vladislav Bolkhovitin <vst@vlnb.net>
  *                 and Leonid Stoljar
@@ -47,9 +47,9 @@
 #endif
 
 #if !defined(SCSI_EXEC_REQ_FIFO_DEFINED) && !defined(STRICT_SERIALIZING)
-#warning Patch scst_exec_req_fifo.patch was not applied on your kernel and \
-       STRICT_SERIALIZING isn't defined. Pass-through dev handlers will \
-       not be supported.
+#warning Patch scst_exec_req_fifo-<kernel-version>.patch was not applied on \
+       your kernel and STRICT_SERIALIZING isn't defined. Pass-through dev \
+       handlers will not be supported.
 #endif
 
 /*
@@ -756,8 +756,8 @@ int scst_register_dev_driver(struct scst_dev_type *dev_type)
        if (dev_type->exec == NULL) {
                PRINT_ERROR_PR("Pass-through dev handlers (handler \"%s\") not "
                        "supported. Consider applying on your kernel patch "
-                       "scst_exec_req_fifo.patch or define STRICT_SERIALIZING",
-                       dev_type->name);
+                       "scst_exec_req_fifo-<kernel-version>.patch or define "
+                       "STRICT_SERIALIZING", dev_type->name);
                res = -EINVAL;
                goto out_err;
        }
index aa68fb9..8f2a64d 100644 (file)
@@ -1,5 +1,5 @@
 /*
- *  scst_sgv_pool.c
+ *  scst_mem.c
  *  
  *  Copyright (C) 2006-2007 Vladislav Bolkhovitin <vst@vlnb.net>
  *  
 
 #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22))
 #warning SCST on 2.6.22+ kernels will run in performance degraded mode, \
-because some oversmart mainline kernel developers have deleted in those \
-kernels support for destructors in SLAB cache and they were unresponsible \
-enough to made that change without even set that feature in the deprecated \
-status for some time to allow depending on it projects to fix themself without \
-disturbing their users. Blame those people for that! So, now to run in full \
-power on those kernels SCST requires a complete rewrite of one of its major low \
-level parts: all kmem_cache_*() functions in this file should be replaced \
-with new ones with similar functionality. I'm not sure I will have time for \
-that in the near future, therefore you are welcome to implement it. Don't \
-hesitate to ask me how I think it should be done most effectively. VLNB.
+because some unresponsible mainline kernel developers have deleted in those \
+kernels support for destructors in SLAB cache and made that change without \
+even set that feature in the deprecated status for some time to allow \
+depending on it projects to fix themself without disturbing their users. \
+Blame those people for that! So, now to run in full power on those kernels \
+SCST requires a complete rewrite of one of its major low level parts: all \
+kmem_cache_*() functions in this file should be replaced with new ones with \
+similar functionality.
 #endif
 
 /* Chosen to have one page per slab for all orders */
index 42a215b..9a07cd4 100644 (file)
@@ -1,5 +1,5 @@
 /*
- *  scst_sgv_pool.h
+ *  scst_mem.h
  *  
  *  Copyright (C) 2006-2007 Vladislav Bolkhovitin <vst@vlnb.net>
  *  
index 5a17620..844a050 100644 (file)
@@ -2739,17 +2739,17 @@ static int __scst_init_cmd(struct scst_cmd *cmd)
                cmd->state = SCST_CMD_STATE_DEV_PARSE;
                cnt = atomic_inc_return(&cmd->tgt_dev->tgt_dev_cmd_count);
                if (unlikely(cnt > SCST_MAX_TGT_DEV_COMMANDS)) {
-                       TRACE(TRACE_RETRY, "Too many pending commands in "
+                       TRACE(TRACE_RETRY, "Too many pending commands (%d) in "
                                "session, returning BUSY to initiator \"%s\"",
-                               (cmd->sess->initiator_name[0] == '\0') ?
+                               cnt, (cmd->sess->initiator_name[0] == '\0') ?
                                  "Anonymous" : cmd->sess->initiator_name);
                        goto out_busy;
                }
                cnt = atomic_inc_return(&cmd->dev->dev_cmd_count);
                if (unlikely(cnt > SCST_MAX_DEV_COMMANDS)) {
-                       TRACE(TRACE_RETRY, "Too many pending device commands, "
-                               "returning BUSY to initiator \"%s\"",
-                               (cmd->sess->initiator_name[0] == '\0') ?
+                       TRACE(TRACE_RETRY, "Too many pending device commands "
+                               "(%d), returning BUSY to initiator \"%s\"",
+                               cnt, (cmd->sess->initiator_name[0] == '\0') ?
                                  "Anonymous" : cmd->sess->initiator_name);
                        goto out_busy;
                }