25 May, 2011
1 commit
-
This patch converts target core and follwing scsi-misc upstream fabric
modules to use include/scsi/scsi_tcq.h includes for SIMPLE, HEAD_OF_QUEUE
and ORDERED SCSI tasks instead of scsi/libsas.h with TASK_ATTR**) tcm_loop: Convert tcm_loop_allocate_core_cmd() + tcm_loop_device_reset() to
scsi_tcq.h
*) tcm_fc: Convert ft_send_cmd() from FCP_PTA_* to scsi_tcq.hReported-by: Christoph Hellwig
Signed-off-by: Nicholas A. Bellinger
Signed-off-by: James Bottomley
24 Mar, 2011
3 commits
-
This patch addresses the majority of sparse warnings and adds
proper locking annotations. It also fixes the dubious one-bit signed
bitfield, for which the signed one-bit types can be 0 or -1 which can
cause a problem if someone ever checks if (foo->lu_gp_assoc == 1).
The current code is fine because everyone just checks zero vs non-zero.
But Sparse complains about it so lets change it. The warnings look like
this:include/target/target_core_base.h:228:26: error: dubious one-bit signed bitfield
Signed-off-by: Dan Carpenter
Signed-off-by: Fubo Chen
Signed-off-by: Nicholas A. Bellinger
Signed-off-by: James Bottomley -
This patch converts the target_core_store_dev_enable() -> struct
se_subsystem_api->create_virtdevice() call to return proper ERR_PTR values
back up to configfs logic during backend dependent struct se_device ENABLE
exception conditions.Along with the change to target_core_configfs.c, this includes converting IBLOCK,
FILEIO, pSCSI, and RAMDISK_* backend subsystem plugins to obtain upper level
PTR_ERR return codes (where available), and return via ERR_PTR during a
*_create_virtdev() failure.Reported-by: Fubo Chen
Signed-off-by: Nicholas A. Bellinger
Signed-off-by: James Bottomley -
If allocation of pt->pscsi_cdb fails, we need to free the just-allocated
pt or else it will be leaked.Signed-off-by: Roland Dreier
Signed-off-by: Nicholas A. Bellinger
Signed-off-by: James Bottomley
02 Mar, 2011
1 commit
-
These were missed the last time I cleaned this up
globally, because of code moving around or new code
getting merged.Signed-off-by: Arnd Bergmann
13 Feb, 2011
1 commit
-
blkdev_get_by_path() returns an ERR_PTR() or error and it doesn't return
a NULL. It looks like this bug would be easy to trigger by mistake.Signed-off-by: Dan Carpenter
Signed-off-by: Nicholas A. Bellinger
Signed-off-by: James Bottomley
15 Jan, 2011
1 commit
-
LIO target is a full featured in-kernel target framework with the
following feature set:High-performance, non-blocking, multithreaded architecture with SIMD
support.Advanced SCSI feature set:
* Persistent Reservations (PRs)
* Asymmetric Logical Unit Assignment (ALUA)
* Protocol and intra-nexus multiplexing, load-balancing and failover (MC/S)
* Full Error Recovery (ERL=0,1,2)
* Active/active task migration and session continuation (ERL=2)
* Thin LUN provisioning (UNMAP and WRITE_SAMExx)Multiprotocol target plugins
Storage media independence:
* Virtualization of all storage media; transparent mapping of IO to LUNs
* No hard limits on number of LUNs per Target; maximum LUN size ~750 TB
* Backstores: SATA, SAS, SCSI, BluRay, DVD, FLASH, USB, ramdisk, etc.Standards compliance:
* Full compliance with IETF (RFC 3720)
* Full implementation of SPC-4 PRs and ALUASignificant code cleanups done by Christoph Hellwig.
[jejb: fix up for new block bdev exclusive interface. Minor fixes from
Randy Dunlap and Dan Carpenter.]
Signed-off-by: Nicholas A. Bellinger
Signed-off-by: James Bottomley