engines:xnvme: add support for end to end data protection
authorAnkit Kumar <ankit.kumar@samsung.com>
Tue, 13 Feb 2024 15:33:13 +0000 (21:03 +0530)
committerVincent Fu <vincent.fu@samsung.com>
Tue, 13 Feb 2024 19:24:59 +0000 (14:24 -0500)
commit90ec1ecc1dabf46c8b3b931cc809717cdf2b3678
treed04b58c78bb6babf788c74fe225bd8397f42957c
parentbe5514e3827db9e1a34009a38d51b9df75fa9d03
engines:xnvme: add support for end to end data protection

This patch enables support for protection information to xnvme
ioengine.

This adds 4 new ioengine specific options
 * pi_act - Protection information action. Default: 1
 * pi_chk - Can be set to GUARD, APPTAG or REFTAG
 * apptag - Sets apptag field of command dword 15
 * apptag_mask - Sets apptag_mask field of command dword 15

For the sake of consistency these options are the same as the ones used
by io_uring_cmd ioengine and SPDK's external ioengine.

Signed-off-by: Ankit Kumar <ankit.kumar@samsung.com>
Reviewed-by: Jens Axboe <axboe@kernel.dk>
Link: https://lore.kernel.org/r/20240213153315.134202-4-ankit.kumar@samsung.com
Signed-off-by: Vincent Fu <vincent.fu@samsung.com>
HOWTO.rst
engines/xnvme.c
fio.1