From: Nicholas Bellinger <n...@linux-iscsi.org>

Hi MKP, Sagi, Quinn, & Co,

Here is -v2 for adding target internal WRITE_STRIP + READ_INSERT
DIX emulation using target_core_sbc.c + crct10dif.ko code.

This mode is for allowing T10-PI capable fabrics to interoperate with
backend devices that have not yet had protection support enabled.
These operations can be done internally using target DIF emulation,
or by the fabric driver's own HBA/NIC hardware offloads.

This includes initial support for tcm_loop, vhost/scsi, tcm_qla2xxx
and iscsi/iser-target using a new endpoint 'fabric_prot_type' configfs
attribute, and associated changes to allow FILEIO + IBLOCK + RAMDISK
backends to function in fabric_prot_type > 0 mode.

The v2 changes include:
  - Allow iblock + ramdisk to function with fabric_prot_type
  - Add fabric_prot_type attributes for vhost/scsi + tcm_qla2xxx +
    iscsi/iser-target
  - Add missing TARGET_PROT_ALL for tcm_qla2xxx

Please review for v4.1 code.

Thank you,

--nab

Nicholas Bellinger (15):
  target: Convert DIF emulation to use cmd->prot_type
  target: Add protected fabric + unprotected device support
  target: Update SPC/SBC emulation for sess_prot_type
  target: Move cmd->prot_op check into target_check_write_prot
  target: Add internal WRITE_STRIP support
  target: Move cmd->prot_op check into target_check_read_prot
  target: Add internal READ_INSERT support
  target/file: Add checks for backend DIF emulation
  target/iblock: Add checks for backend DIF emulation
  target/rd: Add checks for backend DIF emulation
  loopback: Add fabric_prot_type attribute support
  vhost/scsi: Add fabric_prot_type attribute support
  tcm_qla2xxx: Set TARGET_PROT_ALL for sup_prot_ops
  tcm_qla2xxx: Add fabric_prot_type attribute support
  iscsi/iser-target: Add fabric_prot_type attribute support

 drivers/scsi/qla2xxx/tcm_qla2xxx.c           | 46 +++++++++++++++-
 drivers/scsi/qla2xxx/tcm_qla2xxx.h           |  1 +
 drivers/target/iscsi/iscsi_target_configfs.c | 22 ++++++++
 drivers/target/iscsi/iscsi_target_tpg.c      | 19 +++++++
 drivers/target/iscsi/iscsi_target_tpg.h      |  1 +
 drivers/target/loopback/tcm_loop.c           | 54 +++++++++++++++++-
 drivers/target/loopback/tcm_loop.h           |  1 +
 drivers/target/target_core_file.c            |  8 +--
 drivers/target/target_core_iblock.c          |  2 +-
 drivers/target/target_core_rd.c              |  6 +-
 drivers/target/target_core_sbc.c             | 73 ++++++++++++++++++-------
 drivers/target/target_core_spc.c             | 14 +++--
 drivers/target/target_core_transport.c       | 82 ++++++++++++++++++++++------
 drivers/vhost/scsi.c                         | 52 +++++++++++++++++-
 include/target/iscsi/iscsi_target_core.h     |  2 +
 include/target/target_core_base.h            |  1 +
 include/target/target_core_fabric.h          |  8 +++
 17 files changed, 340 insertions(+), 52 deletions(-)

-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to