Skip to content

Commit 3703b2c

Browse files
Nicholas BellingerJames Bottomley
authored andcommitted
[SCSI] tcm_loop: Add multi-fabric Linux/SCSI LLD fabric module
This patch adds the TCM_Loop Linux/SCSI LLD fabric module for accessing TCM device backstores as locally accessable SCSI LUNs in virtual SAS, FC, and iSCSI Target ports using the generic fabric TransportID and Target Port WWN naming handlers from TCM's target_core_fabric_lib.c The TCM_Loop module uses the generic fabric configfs infratructure provided by target_core_fabric_configfs.c and adds a module dependent attribute for the creation/release of the virtual I_T Nexus connected the TCM_Loop Target and Initiator Ports. TCM_Loop can also be used with scsi-generic and BSG drivers so that STGT userspace fabric modules, QEMU-KVM and other hypervisor SCSI passthrough support can access TCM device backstore and control CDB emulation. For more information please see: http://linux-iscsi.org/wiki/Tcm_loop [jejb: fixed up checkpatch stuff] Signed-off-by: Nicholas A. Bellinger <nab@linux-iscsi.org> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
1 parent 5fa8b57 commit 3703b2c

File tree

6 files changed

+1673
-0
lines changed

6 files changed

+1673
-0
lines changed

drivers/target/Kconfig

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,4 +29,6 @@ config TCM_PSCSI
2929
Say Y here to enable the TCM/pSCSI subsystem plugin for non-buffered
3030
passthrough access to Linux/SCSI device
3131

32+
source "drivers/target/loopback/Kconfig"
33+
3234
endif

drivers/target/Makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,6 @@ obj-$(CONFIG_TARGET_CORE) += target_core_mod.o
2121
obj-$(CONFIG_TCM_IBLOCK) += target_core_iblock.o
2222
obj-$(CONFIG_TCM_FILEIO) += target_core_file.o
2323
obj-$(CONFIG_TCM_PSCSI) += target_core_pscsi.o
24+
25+
# Fabric modules
26+
obj-$(CONFIG_LOOPBACK_TARGET) += loopback/

drivers/target/loopback/Kconfig

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
config LOOPBACK_TARGET
2+
tristate "TCM Virtual SAS target and Linux/SCSI LDD fabric loopback module"
3+
help
4+
Say Y here to enable the TCM Virtual SAS target and Linux/SCSI LLD
5+
fabric loopback module.
6+
7+
config LOOPBACK_TARGET_CDB_DEBUG
8+
bool "TCM loopback fabric module CDB debug code"
9+
depends on LOOPBACK_TARGET
10+
help
11+
Say Y here to enable the TCM loopback fabric module CDB debug code

drivers/target/loopback/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
obj-$(CONFIG_LOOPBACK_TARGET) += tcm_loop.o

0 commit comments

Comments
 (0)