target: Add DIF related base definitions
authorNicholas Bellinger <nab@linux-iscsi.org>
Mon, 23 Dec 2013 20:28:13 +0000 (20:28 +0000)
committerNicholas Bellinger <nab@linux-iscsi.org>
Sat, 18 Jan 2014 09:52:34 +0000 (09:52 +0000)
commitce65e5b97b19446ff91e9ee0bbcd9f8b8e87ae5a
tree2e012ea91fb9d43db317ff0ee1b1cd82f6a4cc67
parentf82f320edc1e26320bd7e58b347d5616e6a23ff2
target: Add DIF related base definitions

This patch adds DIF related definitions to target_core_base.h
that includes enums for target_prot_op + target_prot_type +
target_prot_version + target_guard_type + target_pi_error.

Also included is struct se_dif_v1_tuple, along with changes
to struct se_cmd, struct se_dev_attrib, and struct se_device.

Also, add new se_subsystem_api->[init,format,free]_prot() callers
used by target core code to setup backend specific protection
information after the device has been configured.

Enums taken from Sagi Grimberg's original patch.

v2 changes:
  - Drop guard_type related definitions
  - Update target_prot_op + target_prot_ho definitions (Sagi)
  - Drop SCF_PROT + pi_prot_version flag
  - Add se_subsystem_api->format_prot() (Sagi)
  - Add hw_pi_prot_type device attribute

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>
include/target/target_core_backend.h
include/target/target_core_base.h