Feature bits is set, indicating to the name server that this is an
initiator. The attached patch sets BIT_0 instead if target mode is
enabled, indicating target mode support to the name server. (See the
INCITS FC-GS-4 document). This fixed many of my problems relating to
working with a switch fabric, including the discovery and addition of
the initiator ports in the fcports list.
From Brad Johnson <bjohnson@proficientsolutionsinc.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@84 d57e44dd-8a1f-0410-8b47-8ef2f437770f
remove the lockdep's warning about "trying to register
- Ability to trace SYNCHRONIZE_CACHE, FUA and ORDERED commands added to
FILEIO
- NULLIO for FILEIO doesn't require anymore path to a real file/device
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@82 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- corrects the amount of data transferred when cached sense data is used to satisfy a REQUEST SENSE command.
- removes support for non scatterlist buffers in scst_cmd (sg_cnt == 0).
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@81 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This patch further fixes sense handling for the LSI driver in the non-packetized SCSI case:
- this version doesn't crash if a REQUEST SENSE command is sent.
- added a big comment explaining sense caching implementation.
- INQUIRY responses are inspected and tagged command queuing bits are cleared if LSI is a SCSI controller, per previous discussions.
- pending sense is cleared on a bus reset.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@78 d57e44dd-8a1f-0410-8b47-8ef2f437770f
There are a few minor changes:
- fix some 80 char line length issues
- fix some indenting
- change scst_to_dma_dir to scst_to_tgt_dma_dir
The big issue is fixing the sending of sense data. The LSI chip, when talking to a non-packetized SCSI initiator, cannot send both
status (i.e. check condition) and sense data (from autosense) in the same transaction. The result is a 006B
(MPI_IOC_STATUS_TARGET_STS_DATA_NOT_SENT) IOCStatus value when this is attempted. The sense data doesn't get transmitted over the
SCSI cable in this case. My fix, which is modeled on LSI's own SCSI target implementation, is to cache sense data before attempting
to send it. If a REQUEST SENSE command comes in with pending sense, the LSI driver will handle the REQUEST SENSE command on it's
own without involving SCST. Pending sense is cleared once the REQUEST SENSE command is handled, or if any other command comes in.
Sense data is cached per initiator. Apparantely this problem is only related to non-packetized SCSI interfaces. That's all I have
to test with, so I can't vouch for SAS or FC.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@75 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Fixed scst_cur_cmd_mem leak for real devices
- Since scst_unregister_target_template() returnes void it should use down() instead of down_interruptible()
- Cleanups
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@73 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Dead code removed from scst_prepare_space()
- LUN and CDB check moved out of EXTRACHECKS section
- Fixed error processing in scst_register_dev_driver(), scst_sgv_pools_init() and scst_register()
- Since scst_unregister_dev_driver() returnes void it should use down() instead of down_interruptible()
- Clean out scst_num_cpus
- Fixed race in scst_register_target_template()
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@71 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- In FILEIO report in MODE SENSE if NV_CACHE enabled that no commands reordering is possible
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@69 d57e44dd-8a1f-0410-8b47-8ef2f437770f
--This line, and below, will be ignored--
_M trunk/mpt
_M trunk/mpt/in-tree
M trunk/mpt/in-tree/Makefile.diff
M trunk/mpt/mpt_scst.c
M trunk/mpt/Makefile
M trunk/qla2x00t/qla2x00-target/qla2x00t.c
M trunk/scst/kernel/in-tree/Makefile.scsi_tgt
D trunk/scst/include/scst_debug.c
M trunk/scst/include/scst_debug.h
M trunk/scst/src/scst_proc.c
M trunk/scst/src/scst_priv.h
A trunk/scst/src/scst_debug.c
M trunk/scst/src/scst_targ.c
M trunk/scst/src/scst_mem.c
M trunk/scst/src/Makefile
M trunk/scst/src/scst.c
M trunk/scst/src/dev_handlers/scst_cdrom.c
M trunk/scst/src/dev_handlers/scst_modisk.c
M trunk/scst/src/dev_handlers/scst_changer.c
M trunk/scst/src/dev_handlers/scst_fileio.c
M trunk/scst/src/dev_handlers/scst_tape.c
M trunk/scst/src/dev_handlers/scst_disk.c
M trunk/scst/src/dev_handlers/scst_processor.c
M trunk/scst/src/dev_handlers/scst_raid.c
M trunk/scst/src/dev_handlers/Makefile
M trunk/scst/src/dev_handlers/scst_dev_handler.h
M trunk/scst/README
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@62 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Set correct response data length for emulated commands.
Mostly done by Ming Zhang.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@59 d57e44dd-8a1f-0410-8b47-8ef2f437770f
- Minor changes
M trunk/qla2x00t/qla2x00-target/qla2x00t.h
M trunk/qla2x00t/qla2x00-target/qla2x00t.c
M trunk/scst/src/scst_lib.c
M trunk/Makefile
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@54 d57e44dd-8a1f-0410-8b47-8ef2f437770f
I've seen a case where TRACE_BUFFER is called with a NULL buffer pointer. This patch adds a check to debug_print_buffer in
scst_debug.c to avoid dereferencing any incoming NULL pointers.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@43 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This patch addes include/vmalloc.h to scst_fileio.c to avoid "implied function" compiler warnings for vmalloc and vfree.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@42 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This patch initializes the res variable in the scst_proc_update_size and fileio_proc_update_size to get rid of "variable might be used unintialized" compiler warnings.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@41 d57e44dd-8a1f-0410-8b47-8ef2f437770f
This patch allows SCST to compile on a PPC/powerpc platform. PPC already has strcasecmp and strncasecmp defined in
include/asm-powerpc/string.h. The patch takes strcasecmp/strncasecmp out of scst_proc.c
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@40 d57e44dd-8a1f-0410-8b47-8ef2f437770f