Il 22/05/2014 04:26, Nicholas A. Bellinger ha scritto:
From: Nicholas Bellinger <n...@linux-iscsi.org>
Hi MST, MKP, Paolo & Co,
Here is the v2 patch series for adding T1O protection information (PI)
SGL passthrough support between virtio-scsi LLD + vhost-scsi fabric
endpoints.
Following MST's recommendation, it includes the changes for using
bytes intead of number of iovecs in virtio_scsi_cmd_req_pi along with
the associated changes to virtio-scsi + vhost/scsi code.
For vhost/scsi, this includes walking the leading iovec's length(s)
to determine where protection payload ends, and real data payload
starts. For virtio-scsi LLD code, this includes locating struct
blk_integrity for using blk_rq_sectors + ->tuple_size to calculate
the total bytes for outgoing cmd_pi->pi_bytes[out,in] values.
The full list of changes from last series include:
- Use pi_bytesout + pi_bytesin instead of niovs in virtio-scsi PI
header (mst + paolo)
- Add prot_pto=1 in tcm_vhost_submission_work() when no PI buffer
exists (nab)
- Get rid of req + cdb pointer casts in vhost_scsi_handle_vq (mst)
- Ensure that virtio_scsi_cmd_req_pi processing happens regardless
of data_num in vhost_scsi_handle_vq (nab)
- Pass TARGET_PROT_ALL into transport_init_session_tags() (nab)
- Convert vhost_scsi_handle_vq to use memcpy_fromiovecend() (mst)
- Convert vhost_scsi_handle_vq to use pi_bytesout + pi_bytesin (nab)
- Convert virtio_scsi_init_hdr_pi() to use pi_bytesout + pi_bytesin
(mst + paolo + nab)
- Use blk_integrity->tuple_size to calculate pi bytes (nab)
Please review for v3.16-rc1 code.
Thanks!
--nab
Nicholas Bellinger (6):
virtio-scsi.h: Add virtio_scsi_cmd_req_pi + VIRTIO_SCSI_F_T10_PI bits
vhost/scsi: Move sanity check into vhost_scsi_map_iov_to_sgl
vhost/scsi: Add preallocation of protection SGLs
vhost/scsi: Add T10 PI IOV -> SGL memory mapping logic
vhost/scsi: Enable T10 PI IOV -> SGL memory mapping
virtio-scsi: Enable DIF/DIX modes in SCSI host LLD
drivers/scsi/virtio_scsi.c | 86 +++++++++---
drivers/vhost/scsi.c | 305 +++++++++++++++++++++++++++++--------------
include/linux/virtio_scsi.h | 15 ++-
3 files changed, 292 insertions(+), 114 deletions(-)
Looks good, thanks!
Paolo
--
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