Target/dif: Introduce protection-passthough-only mode
authorSagi Grimberg <sagig@mellanox.com>
Wed, 19 Feb 2014 15:50:17 +0000 (17:50 +0200)
committerNicholas Bellinger <nab@linux-iscsi.org>
Mon, 7 Apr 2014 08:48:42 +0000 (01:48 -0700)
commitb5b8e2989e3406798dbb88fbb4eaafbbf1a56f6a
treecd301ec29007c124aaa71ac6ce4fb60231761719
parent80dcd0c10482719bd9250b7d11bd5c360a02403a
Target/dif: Introduce protection-passthough-only mode

Some transports (iSCSI/iSER/SRP/FC) support hardware INSERT/STRIP
capabilities while other transports like loopback/vhost-scsi need
perform this is software.

This patch allows fabrics using SCF_PASSTHROUGH_SG_TO_MEM_NOALLOC
to signal the early LUN scan handling case where PROTECT CDB bits
are set, but no fabric buffer has been provided.

For transports which use generic new command these buffers have yet
to be allocated.

Also this way, target may support protection information
against legacy initiators (writes are inserted and reads
are stripped).

(Only set prot_pto for loopback during early special case - nab)

Signed-off-by: Sagi Grimberg <sagig@mellanox.com>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/target/loopback/tcm_loop.c
drivers/target/target_core_sbc.c
drivers/target/target_core_transport.c
include/target/target_core_base.h