+39
−5
Loading
spdk_dif_generate_copy() and spdk_dif_verify_copy() already support NVMe PRACT. Support NVMe PRACT in the generic bdev layer by utilizing these APIs via accel framework. Read or write I/O copies pract bit of ext_io_opts to dif_check_flags of bdev_io. Then, if pract bit is set in dif_check_flags of bdev_io, allocate bounce/accel buffer and insert/overwrite metadata as same as no_metadata option. Clear pract bit in dif_check_flags of bdev_io after appending acccel sequence not to passthrough pract bit to the underlying bdev module. Signed-off-by:Shuhei Matsumoto <smatsumoto@nvidia.com> Change-Id: I56ed4ba9dad677635e36684f93696dec7d90cdb6 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/25437 Community-CI: Mellanox Build Bot Community-CI: Community CI Samsung <spdk.community.ci.samsung@gmail.com> Tested-by:
SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by:
Jim Harris <jim.harris@nvidia.com> Reviewed-by:
Aleksey Marchuk <alexeymar@nvidia.com>