Several people have poked me about the copy offload patches. Aside from
being able to fit into Jens' 3.16/core branch there hasn't been any
changes, nor any bug reports since LSF/MM.
This patch series implements support for copy offload. Storage arrays
that implement copy operations can be told to clone a block range either
within a storage device or between LUNs. The copy is done entirely
inside the device and no data is moved back and forth across the wire.
[PATCH 1/6] block: Replace bi_integrity with bi_special
Identical to the patch I just posted in the integrity series.
Allows us to have other uses for the pointer previously
exclusively used for the integrity payload.
[PATCH 2/6] block: Implement support for copy offload operations
General block layer plumbing for REQ_COPY requests.
[PATCH 3/6] block: Introduce copy offload library function
Helper for filesystems that want to clone block ranges.
[PATCH 4/6] block: Copy offload ioctl
The ioctl I have been using to test the code.
[PATCH 5/6] [SCSI] Look up and store NAA if VPD page 0x83 is present
Leverages Hannes' VPD page code to store a pointer to the NAA
descriptor.
[PATCH 6/6] [SCSI] sd: Implement copy offload support
The EXTENDED COPY implementation in the SCSI disk driver.
Documentation/ABI/testing/sysfs-block | 9 +
Documentation/block/data-integrity.txt | 10 -
block/bio-integrity.c | 23 +-
block/blk-core.c | 5
block/blk-lib.c | 85 +++++++++++
block/blk-merge.c | 7
block/blk-settings.c | 15 +
block/blk-sysfs.c | 10 +
block/ioctl.c | 35 ++++
drivers/scsi/scsi.c | 57 +++++++
drivers/scsi/sd.c | 254 ++++++++++++++++++++++++++++++++-
drivers/scsi/sd.h | 4
drivers/scsi/sd_dif.c | 8 -
include/linux/bio.h | 25 ++-
include/linux/blk_types.h | 21 ++
include/linux/blkdev.h | 22 ++
include/scsi/scsi_device.h | 3
include/uapi/linux/fs.h | 1
18 files changed, 553 insertions(+), 41 deletions(-)
--
Martin K. Petersen Oracle Linux Engineering
--
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