Re: [PATCH 0/5] Protection information support for xnvme ioengine

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2/13/24 14:22, Jens Axboe wrote:
On 2/13/24 12:21 PM, Vincent Fu wrote:
On 2/13/24 10:33, Ankit Kumar wrote:
This series enables protection information support with xnvme ioengine.
The support is provided with the kernel backends that can handle
passthrough commands via nvme character device (/dev/ngXnY), or with
user space nvme drivers such as SPDK and libvfn.

The initial patch adds support for metadata buffer. As we are unaware
of metadata size during metadata buffer allocation, we provide an
option md_per_io_size. This must be used to specify metadata size for
single IO, if namespace is formatted with separate metadata buffer.

This then enables the protection information support with and without
PRACT bit set for both DIF and DIX cases. The support only covers 16-bit
and 64-bit guard protection information format, without storage tags.

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

Ankit Kumar (5):
    engines/xnvme: allocate iovecs only if vectored I/O is enabled
    engines/xnvme: add support for metadata
    engines:xnvme: add support for end to end data protection
    engines/xnvme: add checks for verify, block size and metadata size
    examples: add PI example with xnvme ioengine

   HOWTO.rst             |  10 +-
   configure             |   2 +-
   engines/xnvme.c       | 331 +++++++++++++++++++++++++++++++++++++++---
   examples/xnvme-pi.fio |  53 +++++++
   examples/xnvme-pi.png | Bin 0 -> 71285 bytes
   fio.1                 |  10 +-
   6 files changed, 378 insertions(+), 28 deletions(-)
   create mode 100644 examples/xnvme-pi.fio
   create mode 100644 examples/xnvme-pi.png


These patches look good to me. I'll wait a bit in case Jens or anyone
else has feedback.

Looks OK to me:

Reviewed-by: Jens Axboe <axboe@xxxxxxxxx>


In that case, applied. Thanks!

Vincent




[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux