]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
MFC r267537:
authormav <mav@FreeBSD.org>
Wed, 2 Jul 2014 10:45:31 +0000 (10:45 +0000)
committermav <mav@FreeBSD.org>
Wed, 2 Jul 2014 10:45:31 +0000 (10:45 +0000)
commit2019810069bd9c631d9826af53b67d4db85aded0
treeff47a45647a10708b53995183d172c4aa7e5810f
parentada40bacc7d15a3aa8d4e7f950a6b1c3704535bd
MFC r267537:
Add support for VERIFY(10/12/16) and COMPARE AND WRITE SCSI commands.

Make data_submit backends method support not only read and write requests,
but also two new ones: verify and compare.  Verify just checks readability
of the data in specified location without transferring them outside.
Compare reads the specified data and compares them to received data,
returning error if they are different.

VERIFY(10/12/16) commands request either verify or compare from backend,
depending on BYTCHK CDB field.  COMPARE AND WRITE command executed in two
stages: first it requests compare, and then, if succeesed, requests write.
Atomicity of operation is guarantied by CTL request ordering code.

Sponsored by: iXsystems, Inc.
sys/cam/ctl/ctl.c
sys/cam/ctl/ctl.h
sys/cam/ctl/ctl_backend_block.c
sys/cam/ctl/ctl_backend_ramdisk.c
sys/cam/ctl/ctl_cmd_table.c
sys/cam/ctl/ctl_io.h
sys/cam/ctl/ctl_private.h
sys/cam/scsi/scsi_all.c
sys/cam/scsi/scsi_all.h
sys/cam/scsi/scsi_da.h