41861fa831
This patch adds support for DIF read/write verify emulation for TARGET_DIF_TYPE1_PROT + TARGET_DIF_TYPE3_PROT operation. This includes sbc_dif_verify_write() + sbc_dif_verify_read() calls accessable by backend drivers to perform DIF verify for SGL based data and protection information. Also included is sbc_dif_copy_prot() logic to copy protection information to/from backend provided protection SGLs. Based on scsi_debug.c DIF TYPE1+TYPE3 emulation. v2 changes: - Select CRC_T10DIF for TARGET_CORE in Kconfig (Fengguang) - Drop IP checksum logic from sbc_dif_v1_verify (MKP) - Fix offset on app_tag = 0xffff in sbc_dif_verify_read() Cc: Martin K. Petersen <martin.petersen@oracle.com> Cc: Christoph Hellwig <hch@lst.de> Cc: Hannes Reinecke <hare@suse.de> Cc: Sagi Grimberg <sagig@mellanox.com> Cc: Or Gerlitz <ogerlitz@mellanox.com> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
39 lines
1.1 KiB
Plaintext
39 lines
1.1 KiB
Plaintext
|
|
menuconfig TARGET_CORE
|
|
tristate "Generic Target Core Mod (TCM) and ConfigFS Infrastructure"
|
|
depends on SCSI && BLOCK
|
|
select CONFIGFS_FS
|
|
select CRC_T10DIF
|
|
default n
|
|
help
|
|
Say Y or M here to enable the TCM Storage Engine and ConfigFS enabled
|
|
control path for target_core_mod. This includes built-in TCM RAMDISK
|
|
subsystem logic for virtual LUN 0 access
|
|
|
|
if TARGET_CORE
|
|
|
|
config TCM_IBLOCK
|
|
tristate "TCM/IBLOCK Subsystem Plugin for Linux/BLOCK"
|
|
help
|
|
Say Y here to enable the TCM/IBLOCK subsystem plugin for non-buffered
|
|
access to Linux/Block devices using BIO
|
|
|
|
config TCM_FILEIO
|
|
tristate "TCM/FILEIO Subsystem Plugin for Linux/VFS"
|
|
help
|
|
Say Y here to enable the TCM/FILEIO subsystem plugin for buffered
|
|
access to Linux/VFS struct file or struct block_device
|
|
|
|
config TCM_PSCSI
|
|
tristate "TCM/pSCSI Subsystem Plugin for Linux/SCSI"
|
|
help
|
|
Say Y here to enable the TCM/pSCSI subsystem plugin for non-buffered
|
|
passthrough access to Linux/SCSI device
|
|
|
|
source "drivers/target/loopback/Kconfig"
|
|
source "drivers/target/tcm_fc/Kconfig"
|
|
source "drivers/target/iscsi/Kconfig"
|
|
source "drivers/target/sbp/Kconfig"
|
|
|
|
endif
|