diff --git a/Makefile b/Makefile index 75091fcf7..8c2af416d 100644 --- a/Makefile +++ b/Makefile @@ -20,6 +20,7 @@ #export KDIR=/usr/src/linux-2.6 SCST_DIR=scst +SCSTADM_DIR=scstadmin QLA_INI_DIR=qla2x00t QLA_DIR=qla2x00t/qla2x00-target QLA_ISP_DIR=qla_isp @@ -43,6 +44,9 @@ help: @echo " scst_install : scst: install" @echo " scst_uninstall : scst: uninstall" @echo "" + @echo " scstadm_install : scstadmin: install" + @echo " scstadm_uninstall : scstadmin: 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" @@ -149,6 +153,12 @@ scst_clean: scst_extraclean: cd $(SCST_DIR) && $(MAKE) extraclean +scstadm_install: + cd $(SCSTADM_DIR) && $(MAKE) install + +scstadm_uninstall: + cd $(SCSTADM_DIR) && $(MAKE) uninstall + qla: cd $(QLA_DIR) && $(MAKE) @@ -275,5 +285,6 @@ release2debug: lsi lsi_install lsi_uninstall lsi_clean lsi_extraclean \ iscsi iscsi_install iscsi_uninstall iscsi_clean iscsi_extraclean \ scst scst_install scst_uninstall scst_clean scst_extraclean \ + scstadm_install scstadm_uninstall \ usr usr_install usr_uninstall usr_clean usr_extraclean \ debug2perf, debug2release, perf2debug, release2debug diff --git a/iscsi-scst/ChangeLog b/iscsi-scst/ChangeLog index 70f5ba13e..e8abd0efe 100644 --- a/iscsi-scst/ChangeLog +++ b/iscsi-scst/ChangeLog @@ -34,5 +34,13 @@ Summary of changes in iSCSI-SCST since it was IET were relaced by the proper handling. Hovewer, there is a plenty of work in this area left, IET is known to have a lot of weaknesses here. + - Task management made more robust. Particularly, possible data + corruption scenarios were fixed. + + - Implemented SN based iSCSI IO flow control + + - Response data send timeout implemented: now if initiator doesn't + accept data for too long (30 sec), target closes connection + - A lot of other bugfixes and code cleanups. diff --git a/iscsi-scst/README b/iscsi-scst/README index eaa3a1f21..f4dce2441 100644 --- a/iscsi-scst/README +++ b/iscsi-scst/README @@ -1,8 +1,8 @@ iSCSI SCST target driver ======================== -Version 1.0.0/0.4.16r151, XX June 2008 --------------------------------------- +Version 1.0.0/0.4.16r155, 7 July 2008 +------------------------------------- This driver is a forked with all respects version of iSCSI Enterprise Target (IET) (http://iscsitarget.sourceforge.net/) with updates to work @@ -135,6 +135,25 @@ that issue. CAUTION: Working of target and initiator on the same host isn't ======== supported. See SCST README file for details. +Known issues +------------ + +Currently iscsi-scst-adm utility is broken, hence not built. But, in +contrast to IET, in iSCSI-SCST it isn't needed so much, since all +devices/LUNs management is done using SCST's /proc interface, e.g. using +scstadmin utility. What's remained for iscsi-scst-adm is manage of iSCSI +targets and their parameters. In case of changing any negotiable iSCSI +parameters renegotiation in all corresponding sessions is required by +iSCSI standard, i.e. they all must be restarted, which, basically, means +iSCSI-SCST restart. So, for parameters changing as well as for +adding/removing targets, the recommended way is to change +iscsi-scst.conf, then restart iSCSI-SCST. In contrast to IET, this +operation is safe. Also, as a side effect, your iscsi-scst.conf will +always be in sync with the running system. + +But, if you decide to fix iscsi-scst-adm, your patches will be +appreciated. + Compilation options ------------------- @@ -152,19 +171,6 @@ in/out in the kernel's module Makefile: - DEBUG_DIGEST_FAILURES - simulates digest failures in random places. -Known issues ------------- - -Currently some iscsi-scst-adm functionality is broken. But, from one -side, at the moment I don't have time to look at it and, from other -side, in contrast to IET, in iSCSI-SCST this utility doesn't worth much, -since all devices management is done using SCST's /proc interface. -What's remained for iscsi-scst-adm is managing iSCSI targets and their -parameters, but in any case changing of any negotiable iSCSI parameter -needs renegotiation, i.e. the corresponding session restart, i.e. -iSCSI-SCST restart. But, if you decide to fix iscsi-scst-adm, I will -appreciate your patches. - Creating version of put_page_callback patch for your kernel ----------------------------------------------------------- @@ -174,7 +180,7 @@ yourself. This is pretty mechanical work, you don't need to understand how it works, you only need to do the following two steps: 1. Apply the closest version of put_page_callback-.patch -on your kernel. Resolve only failed hanks from include/ and +on your kernel. Resolve only failed hunks from include/ and net/core/utils.c, ignore other failures. 2. Search net/ in your kernel source for "put_page" and "get_page" diff --git a/iscsi-scst/doc/iscsi-scst-howto.txt b/iscsi-scst/doc/iscsi-scst-howto.txt new file mode 100644 index 000000000..ba2803a84 --- /dev/null +++ b/iscsi-scst/doc/iscsi-scst-howto.txt @@ -0,0 +1,241 @@ +How to set up iSCSI-SCST using scstadmin. + +1. Download, build and install iSCSI-SCST. + +Download the source code: + +Released version from http://sourceforge.net/project/showfiles.php?group_id=110471 + +or the latest development version by command: + +svn co https://scst.svn.sourceforge.net/svnroot/scst/trunk + +You need to patch the kernel and rebuild it. Only vanilla kernels from +kernel.org are officially supported, but in most cases your favorite +kernel will work fine as well. Select the patch according to your kernel +version (2.6.18.1 in the example below): + +cd /usr/src/kernels/linux-2.6.18.1 +patch -p1 < /home/erezz/work/scst/iscsi-scst/kernel/patches/put_page_callback-2.6.18.1.patch +patch -p1 < /home/erezz/work/scst/scst/kernel/scst_exec_req_fifo-2.6.18.patch +make clean + +Then, build the kernel (i.e. make, make modules_install, make install) +and restart the machine. + +In order to build and install SCST and iSCSI, run + +make scst scst_install iscsi iscsi_install + +ISCSI-SCST includes the following components: + * /etc/init.d/iscsi-scst - service script + * iscsi-scstd - daemon + * iscsi-scst-adm - admin tool (not built in 1.0.0) + * man pages + * Configuration files (located under iscsi-scst/etc/, need to be copied to /etc if you want to use them): + * initiators.allow - used for assigning specific initiators to targets + * initiators.deny - used for assigning specific initiators to targets + * iscsi-scstd.conf - list of targets and their properties + +2. Set up /etc/iscsi/ininitiatorname.iscsi. The most convenient way to +set up this file is to install the open-iscsi package provided by your +Linux distro first and then to run the bash commands shown below. +Verify the contents of the generated file. + /etc/init.d/open-iscsi stop + { echo "InitiatorName=$(/usr/sbin/iscsi-iname)"; echo "InitiatorAlias=$(hostname)"; } >/etc/iscsi/initiatorname.iscsi + /etc/init.d/open-iscsi start + +3. Set up /etc/iscsi-scstd.conf, e.g. by running the following shell commands: + cat </etc/iscsi-scstd.conf + Target $(sed -n 's/InitiatorName=//p' /etc/iscsi/initiatorname.iscsi):storage + EOF + +4. Set up /etc/scst.conf. The bash statements shown below set up a +configuration file for two vdisks. Replace the device names in the +array 'disk' by those that apply to your system: + { + echo "[HANDLER vdisk]" + echo "#DEVICE ,,," + disk=(/dev/md733 /dev/md734) + for ((i=0;i<${#disk[*]};i++)) + do + echo "DEVICE vdisk$i,${disk[$i]},NV_CACHE,512" + done + echo "[ASSIGNMENT Default]" + echo "#DEVICE ," + for ((i=0;i<${#disk[*]};i++)) + do + echo "DEVICE vdisk$i,$i" + done + } > /etc/scst.conf + +Note, that you must have LUN 0. That's a SCSI requirement (documented in SCST's README). + +5. Install scstadmin: + cd scstadmin-x.y.z + make install + +6. Edit /etc/init.d/scst: remove the modules you do not need from the +SCST_MODULES variable, e.g. qla2x00tgt. + +6. Create soft links in /etc/init.d such that SCST starts up +automatically. Use either chkconfig or update-rc.d, depending on the +Linux distribution you are using. An example for Debian systems: + update-rc.d scst defaults + update-rc.d iscsi-scst defaults + +7. Restart SCST and iSCSI-SCST such that the new settings become effective: + /etc/init.d/iscsi-scst stop + /etc/init.d/scst stop + /etc/init.d/scst start + /etc/init.d/iscsi-scst start + + +How to install and use iSCSI-SCST without using scstadmin + +First, start scst_disk: modprobe scst_disk + +/etc/init.d/iscsi-scst can be used to start/stop/restart/check status. + +Selecting devices to be used by SCST. + +You can see the list of available devices: + +# cat /proc/scsi_tgt/scsi_tgt +Device (host:ch:id:lun or name) Device handler +0:0:0:0 dev_disk +1:0:0:0 dev_disk +3:0:0:0 dev_disk +3:0:0:1 dev_disk +3:0:0:2 dev_disk +3:0:0:3 dev_disk +3:0:0:4 dev_disk +3:0:0:5 dev_disk +3:0:0:6 dev_disk +3:0:0:7 dev_disk +2:0:0:0 none +4:0:0:0 none +4:0:0:5 dev_disk +4:0:0:6 dev_disk +4:0:0:7 dev_disk +4:0:0:8 dev_disk +4:0:0:9 dev_disk +4:0:1:0 dev_disk +4:0:1:1 dev_disk +4:0:1:2 dev_disk +4:0:1:3 dev_disk +4:0:1:4 dev_disk +5:0:0:0 none +5:0:0:5 dev_disk +5:0:0:6 dev_disk +5:0:0:7 dev_disk +5:0:0:8 dev_disk +5:0:0:9 dev_disk +5:0:1:0 dev_disk +5:0:1:1 dev_disk +5:0:1:2 dev_disk +5:0:1:3 dev_disk +5:0:1:4 dev_disk + +LUN masking. + +SCST defines security groups. For each group, you can add LUNs. + +If you want to have all LUNs available for all targets, just add them to +the "Default" group: + +# echo "add 5:0:0:8 0" >/proc/scsi_tgt/groups/Default/devices +# cat /proc/scsi_tgt/groups/Default/devices +Device (host:ch:id:lun or name) Virtual lun Options +5:0:0:8 0 + +Now, the LUN "5:0:0:8" was added to the "Default" group as LUN #0. + +Note, that you must have LUN 0. That's a SCSI requirement (documented in SCST's README). + +Defining LUN masking + +In order to associate specific LUNs with specific targets, do the following: + + * Create a group for the target: + +echo "add_group Default_iqn.2007-05.com.example:storage.iscsi-scst-1" >/proc/scsi_tgt/scsi_tgt + + * Add LUNs to the group: + +echo "add 4:0:0:8 0" > /proc/scsi_tgt/groups/Default_iqn.2007-05.com.example\:storage.iscsi-scst-1/devices + +This will assign the LUN "4:0:0:8" to the target iqn.2007-05.com.example:storage.iscsi-scst-1. +Again, you must have LUN 0 for each group. + +Deleting a LUN from a group + +Run the following command: + +echo "del 4:0:0:8 0" > /proc/scsi_tgt/groups/Default_iqn.2007-05.com.example\:storage.iscsi-scst-1/devices + +This will remove the LUN "4:0:0:8" from the target iqn.2007-05.com.example:storage.iscsi-scst-1. + +Deleting a group. + +Run the following command: + +echo "del_group Default_iqn.2007-05.com.example:storage.iscsi-scst-1" >/proc/scsi_tgt/scsi_tgt + +For more information about LUN masking, refer to SCST README, section +"Access and devices visibility management (LUN masking)". + +Creating targets using iscsi-scstd.conf. + +The easiest way to create targets is to define them in +/etc/iscsi-scstd.conf. An example can be found in etc/iscsi-scstd.conf. +You need to have this file under /etc/ before starting iSCSI-SCST. + +Assigning targets to specific initiators + +In order to assign targets to specific initiators, you need to have +/etc/initiators.allow and /etc/initiators.deny. You can find +example files in etc/initiators.allow and etc/initiators.deny. + +Note that all targets are allowed to all initiators by default, so if +you want to use /etc/initiators.allow, you will need to have +/etc/initiators.deny that looks like this: + +ALL ALL + +This will deny all initiators expect for those defined in /etc/initiators.allow. + +Useful examples of iscsi-scst-adm: + +Show a specific target: + +# iscsi-scst-adm --op show --tid=1 +QueuedCommands=0 + +Show the configured parameters for a specific target: + +# iscsi-scst-adm --op show --tid=1 --sid=0 +InitialR2T=No +ImmediateData= +MaxConnections=0 +MaxRecvDataSegmentLength=4269849632 +MaxXmitDataSegmentLength=10933 +MaxBurstLength=4294967295 +FirstBurstLength=32767 +DefaultTime2Wait=4203042 +DefaultTime2Retain=5 +MaxOutstandingR2T=0 +DataPDUInOrder=No +DataSequenceInOrder=Yes +ErrorRecoveryLevel=0 +HeaderDigest= +DataDigest=CRC32C +OFMarker= +IFMarker=No +OFMarkInt=Reject +IFMarkInt=Reject + + +Bart Van Assche +Erez Zilber +Vladislav Bolkhovitin diff --git a/iscsi-scst/kernel/Makefile b/iscsi-scst/kernel/Makefile index 4baaacb28..34f03e688 100644 --- a/iscsi-scst/kernel/Makefile +++ b/iscsi-scst/kernel/Makefile @@ -26,9 +26,9 @@ SCST_INC_DIR := $(SUBDIRS)/../../scst/include EXTRA_CFLAGS += -I$(src)/../include -I$(SCST_INC_DIR) # -Wextra -Wno-unused-parameter -EXTRA_CFLAGS += -DEXTRACHECKS -#EXTRA_CFLAGS += -DTRACING -EXTRA_CFLAGS += -DDEBUG -g +#EXTRA_CFLAGS += -DEXTRACHECKS +EXTRA_CFLAGS += -DTRACING +#EXTRA_CFLAGS += -DDEBUG -g #EXTRA_CFLAGS += -DDEBUG_DIGEST_FAILURES diff --git a/qla2x00t/qla2x00-target/ChangeLog b/qla2x00t/qla2x00-target/ChangeLog index e5d497694..5b326b5bb 100644 --- a/qla2x00t/qla2x00-target/ChangeLog +++ b/qla2x00t/qla2x00-target/ChangeLog @@ -1,10 +1,31 @@ -Summary of changes between versions 0.9.5 and 0.9.6 +Summary of changes between versions 0.9.5 and 1.0.0 --------------------------------------------------- + - Fixed sg_tablesize in qla2x00t to be per target card, not global + + - Updated to work on 2.6.25.x + + - Updated to work on 2.6.24.x + + - Fixed possible crash if tgt module rmmod'ed under load + + - Fixed incorrect residual on internal BUSY replies + + - Updated to work on 2.6.23.x + + - Fixes a race, when an event comes on the driver unload, so DPC thread + will try to use already half destroyed data. + + - Fixed problem with SNS, not advertising target mode. + - Support for per-target default security groups added. - Updated to work on 2.6.22.x kernels. + - Updated to work on 2.6.21.x kernels. + + - Updated to work on 2.6.20.x kernels. + - Updated to work with SCST 0.9.6. - /proc support routines changed to work with seq_file interface. diff --git a/qla2x00t/qla2x00-target/Makefile b/qla2x00t/qla2x00-target/Makefile index 236618ec5..e97edf4f3 100644 --- a/qla2x00t/qla2x00-target/Makefile +++ b/qla2x00t/qla2x00-target/Makefile @@ -35,9 +35,9 @@ EXTRA_CFLAGS += -I$(SCST_INC_DIR) -DFC_TARGET_SUPPORT INSTALL_DIR := /lib/modules/$(shell uname -r)/extra -EXTRA_CFLAGS += -DEXTRACHECKS -#EXTRA_CFLAGS += -DTRACING -EXTRA_CFLAGS += -DDEBUG_TGT -g +#EXTRA_CFLAGS += -DEXTRACHECKS +EXTRA_CFLAGS += -DTRACING +#EXTRA_CFLAGS += -DDEBUG_TGT -g #EXTRA_CFLAGS += -DDEBUG_WORK_IN_THREAD ifeq ($(KVER),) diff --git a/qla2x00t/qla2x00-target/README b/qla2x00t/qla2x00-target/README index e24302797..33e5108f5 100644 --- a/qla2x00t/qla2x00-target/README +++ b/qla2x00t/qla2x00-target/README @@ -1,8 +1,8 @@ Target driver for Qlogic 2200/2300 Fibre Channel cards ====================================================== -Version 1.0.0, XX June 2008 ---------------------------- +Version 1.0.0, 7 July 2008 +-------------------------- This driver has all required features and looks to be quite stable (for beta) and useful. It consists from two parts: the target mode driver diff --git a/qla2x00t/qla2x00-target/qla2x00t.c b/qla2x00t/qla2x00-target/qla2x00t.c index d9df17f55..b37897cf0 100644 --- a/qla2x00t/qla2x00-target/qla2x00t.c +++ b/qla2x00t/qla2x00-target/qla2x00t.c @@ -5,7 +5,7 @@ * Copyright (C) 2004 - 2005 Leonid Stoljar * Copyright (C) 2006 Nathaniel Clark * - * Qlogic 2x00 SCSI target driver. + * QLogic 2x00 SCSI target driver. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License diff --git a/qla2x00t/qla2x00-target/qla2x00t.h b/qla2x00t/qla2x00-target/qla2x00t.h index d03863460..a794e935d 100644 --- a/qla2x00t/qla2x00-target/qla2x00t.h +++ b/qla2x00t/qla2x00-target/qla2x00t.h @@ -5,7 +5,7 @@ * Copyright (C) 2004 - 2005 Leonid Stoljar * Copyright (C) 2006 Nathaniel Clark * - * Qlogic 2x00 SCSI target driver. + * QLogic 2x00 SCSI target driver. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -37,8 +37,8 @@ /* Version numbers, the same as for the kernel */ #define Q2T_VERSION(a,b,c,d) (((a) << 030) + ((b) << 020) + (c) << 010 + (d)) -#define Q2T_VERSION_CODE Q2T_VERSION(0,9,6,0) -#define Q2T_VERSION_STRING "1.0.0-rc1" +#define Q2T_VERSION_CODE Q2T_VERSION(1,0,0,0) +#define Q2T_VERSION_STRING "1.0.0" #define Q2T_MAX_CDB_LEN 16 #define Q2T_TIMEOUT 10 /* in seconds */ diff --git a/scst/ChangeLog b/scst/ChangeLog index d3b02d037..d7b174a51 100644 --- a/scst/ChangeLog +++ b/scst/ChangeLog @@ -1,6 +1,61 @@ -Summary of changes between versions 0.9.5 and 0.9.6 +Summary of changes between versions 0.9.5 and 1.0.0 --------------------------------------------------- + - Added per-device memory limit and new scst.ko module parameter scst_max_dev_cmd_mem + + - Sending REQUEST SENSE fixed + + - Fixed possible incorrect command's retry if double RESET UA is detected. + + - Fixed __exit misuse, when such functions called from __init functions. + + - "RECEIVE DIAGNOSTIC RESULTS" command handling fixed + + - Obtaining device queue parameters in scst_obtain_device_parameters() + changed to handle NOT READY sense + + - Added possibility to create virtual removable devices + + - Updated to work on 2.6.25.x + + - Fixed READ POSITION command handling + + - TM processing made independant from other TM commands (before it was serialized) + + - Sense buffer made dynamic + + - Clustering statistic added + + - Updated to work on 2.6.24.x + + - Version protection added + + - Processing latency measurement facility added + + - Sessions registration/unregistration made independant from other activities + + - Major performance improvements + + - Major task management handling improvements + + - Updated to work on 2.6.23.x + + - Switching between debug<->performance<->release builds added + + - scsi_tgt renamed to scst, scsi_tgt.h renamed to scst.h + + - Updated to work on 2.6.22.x + + - Semaphores converted to mutexes + + - 64-bit platform cleanups + + - Added limit on maximum queued on a device commands + + - Threads made per-device + + - User space device handler added + - New SGV cache low memory management backend with memory flow control facility was implemented, thanks to Krzysztof Blaszkowski. @@ -31,7 +86,7 @@ Summary of changes between versions 0.9.5 and 0.9.6 - Support for CPU cache flushing before doing DMA to target devices added. - - Various cleanups, bug fixes and improvements. + - A lot of cleanups, bug fixes and improvements. Summary of changes between versions 0.9.4 and 0.9.5 --------------------------------------------------- diff --git a/scst/README b/scst/README index 1d60569c0..2301a6dd1 100644 --- a/scst/README +++ b/scst/README @@ -1,8 +1,8 @@ Generic SCSI target mid-level for Linux (SCST) ============================================== -Version 1.0.0, XX June 2008 ---------------------------- +Version 1.0.0, 7 July 2008 +-------------------------- SCST is designed to provide unified, consistent interface between SCSI target drivers and Linux kernel and simplify target drivers development diff --git a/scst/include/scst.h b/scst/include/scst.h index 9ca3d69a8..dd310562b 100644 --- a/scst/include/scst.h +++ b/scst/include/scst.h @@ -48,9 +48,9 @@ typedef _Bool bool; #endif /* Version numbers, the same as for the kernel */ -#define SCST_VERSION_CODE 0x00090601 +#define SCST_VERSION_CODE 0x01000000 #define SCST_VERSION(a, b, c, d) (((a) << 24) + ((b) << 16) + ((c) << 8) + d) -#define SCST_VERSION_STRING "1.0.0-rc2" +#define SCST_VERSION_STRING "1.0.0" #define SCST_INTERFACE_VERSION SCST_VERSION_STRING "$Revision$" SCST_CONST_VERSION /************************************************************* diff --git a/scst/include/scst_user.h b/scst/include/scst_user.h index 9558beb5a..d968f9ba2 100644 --- a/scst/include/scst_user.h +++ b/scst/include/scst_user.h @@ -26,7 +26,7 @@ #define DEV_USER_NAME "scst_user" #define DEV_USER_PATH "/dev/" -#define DEV_USER_VERSION_NAME "1.0.0-rc2" +#define DEV_USER_VERSION_NAME "1.0.0" #define DEV_USER_VERSION DEV_USER_VERSION_NAME "$Revision$" SCST_CONST_VERSION /* diff --git a/scst/src/Makefile b/scst/src/Makefile index d182ccc40..57a9a6623 100644 --- a/scst/src/Makefile +++ b/scst/src/Makefile @@ -115,7 +115,7 @@ EXTRA_CFLAGS += -I$(SCST_INC_DIR) -Wextra -Wno-unused-parameter #EXTRA_CFLAGS += -DSTRICT_SERIALIZING -EXTRA_CFLAGS += -DEXTRACHECKS +#EXTRA_CFLAGS += -DEXTRACHECKS #EXTRA_CFLAGS += -DUSE_EXPECTED_VALUES #EXTRA_CFLAGS += -DALLOW_PASSTHROUGH_IO_SUBMIT_IN_SIRQ @@ -123,9 +123,9 @@ EXTRA_CFLAGS += -DEXTRACHECKS #EXTRA_CFLAGS += -fno-inline -#EXTRA_CFLAGS += -DTRACING +EXTRA_CFLAGS += -DTRACING -EXTRA_CFLAGS += -DDEBUG -g +#EXTRA_CFLAGS += -DDEBUG -g #EXTRA_CFLAGS += -DDEBUG_TM -DTM_DBG_GO_OFFLINE=0 #EXTRA_CFLAGS += -DDEBUG_RETRY #EXTRA_CFLAGS += -DDEBUG_OOM diff --git a/scst/src/dev_handlers/Makefile b/scst/src/dev_handlers/Makefile index b12ee5b32..e43d8a85f 100644 --- a/scst/src/dev_handlers/Makefile +++ b/scst/src/dev_handlers/Makefile @@ -69,10 +69,10 @@ endif EXTRA_CFLAGS += -I$(SUBDIRS) -I$(SCST_INC_DIR) -Wextra -Wno-unused-parameter -EXTRA_CFLAGS += -DEXTRACHECKS +#EXTRA_CFLAGS += -DEXTRACHECKS -#EXTRA_CFLAGS += -DTRACING -EXTRA_CFLAGS += -DDEBUG -g +EXTRA_CFLAGS += -DTRACING +#EXTRA_CFLAGS += -DDEBUG -g clean: rm -f *.o *.ko .*.cmd *.mod.c .*.d .depend Modules.symvers \ diff --git a/usr/fileio/Makefile b/usr/fileio/Makefile index f5406d412..3c9eb65ef 100644 --- a/usr/fileio/Makefile +++ b/usr/fileio/Makefile @@ -29,9 +29,9 @@ CFLAGS += -O2 -Wall -Wextra -Wno-unused-parameter -Wstrict-prototypes \ PROGS = fileio_tgt LIBS = -lpthread -CFLAGS += -DEXTRACHECKS -#CFLAGS += -DTRACING -CFLAGS += -DDEBUG -g +#CFLAGS += -DEXTRACHECKS +CFLAGS += -DTRACING +#CFLAGS += -DDEBUG -g #CFLAGS += -DDEBUG_NOMEM #CFLAGS += -DDEBUG_SENSE diff --git a/usr/fileio/README b/usr/fileio/README index 43e419235..2c7b9197d 100644 --- a/usr/fileio/README +++ b/usr/fileio/README @@ -1,8 +1,8 @@ User space FILEIO handler ========================= -Version 1.0.0, XX June 2008 ---------------------------- +Version 1.0.0, 7 July 2008 +-------------------------- User space program fileio_tgt uses interface of SCST's scst_user dev handler as well as allows to see how it works in various modes.