Spdk/module/bdev
Shuhei Matsumoto 00bff560dd bdev/malloc: Support protection information for read and write
For write, verify DIF/DIX before submission and for read, verify
DIF/DIX after successful completion.

As same as the NVMe bdev module and the NULL bdev module, DIF/DIX
verification is done based on the DIF type and DIF insert/strip is
not supported.

In near future, the bdev I/O APIs bring an I/O flag to the underlying
bdev and the malloc bdev module will be able to decide DIF/DIX
verification based on the I/O flag.

One important feature is to setup protection information when
creating a malloc disk. Otherwise, all initial reads will fail
if protection information is enabled.

For users, add some explanation about the dif_type parameter
into doc/jsonrpc.md.

Signed-off-by: Shuhei Matsumoto <smatsumoto@nvidia.com>
Change-Id: I93757b77c03cade766c872e418bb46d44918bee2
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14985
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Mellanox Build Bot
2022-10-28 06:49:40 +00:00
..
aio bdev/aio: implement read-only 2022-10-21 07:18:15 +00:00
compress bdev/compress: make lb_size optional in bdev_compress_create 2022-07-04 07:23:26 +00:00
crypto util: made hexlify and unhexlify functions public 2022-09-06 07:17:13 +00:00
daos bdev/daos: Add object class parameter 2022-10-25 07:12:06 +00:00
delay check_format: For C files only, fix return type breaks 2022-06-27 09:33:48 +00:00
error Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
ftl ftl: check structure sizes for future ABI compatibility 2022-09-20 19:24:26 +00:00
gpt check_format: For C files only, fix return type breaks 2022-06-27 09:33:48 +00:00
iscsi bdev_iscsi: add bdev iscsi config json 2022-10-17 12:37:36 +00:00
lvol bdev: send bdev reset based on outstanding IO and a new timeout parameter 2022-09-22 19:18:30 +00:00
malloc bdev/malloc: Support protection information for read and write 2022-10-28 06:49:40 +00:00
null Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
nvme bdev_nvme: change discovery_poller check to assert 2022-10-25 07:13:08 +00:00
ocf check_format: For C files only, fix return type breaks 2022-06-27 09:33:48 +00:00
passthru check_format: For C files only, fix return type breaks 2022-06-27 09:33:48 +00:00
pmem Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
raid module/raid: fix async module stopping 2022-09-29 22:52:45 +00:00
rbd bdev/rbd: return a error value(-1) when create RBD bdev on non 2022-09-13 07:28:57 +00:00
split check_format: For C files only, fix return type breaks 2022-06-27 09:33:48 +00:00
uring bdev/uring: Proper handling for conventional zones 2022-09-27 19:40:44 +00:00
virtio virtio/vfio_user: add virtio_scsi device support 2022-09-29 19:42:56 +00:00
xnvme bdev_xnvme: free bdev_xnvme structure after device is fully unregistered 2022-09-28 06:47:35 +00:00
zone_block bdev/uring: Proper handling for conventional zones 2022-09-27 19:40:44 +00:00
Makefile bdev/daos: introduction of daos bdev 2022-08-23 07:15:13 +00:00