From: Vincent Fu <vincentfu@gmail.com>
To: anuj1072538@gmail.com, axboe@kernel.dk, hch@infradead.org,
joshi.k@samsung.com, anuj20.g@samsung.com, fio@vger.kernel.org
Cc: Vincent Fu <vincent.fu@samsung.com>
Subject: [PATCH 0/2] io_uring r/w with metadata
Date: Wed, 23 Jul 2025 13:04:55 -0400 [thread overview]
Message-ID: <cover.1753282479.git.vincent.fu@samsung.com> (raw)
These two patches add support for io_uring read and write operations for
block devices with metadata. The first patch adds this support to the
io_uring ioengine and the second patch adds a script for this feature
using NVMe devices.
This code has been tested on the kernel below:
tree: https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git
branch: vfs-6.17.integrity
with the patch below applied
https://lore.kernel.org/linux-block/20250722120755.87501-1-anuj20.g@samsung.com/
This code has passed testing under the following settings:
QEMU NVMe device 512B data size; 8B, 16B, 64B metadata size; 16b Guard PI
QEMU NVMe device 4K data size; 16B, 64B metadata size, 64b Guard PI
I have not been able to run the following tests due to platform
issues:
QEMU NVMe device 4K data size; any metadata size; 16b Guard PI
nvme format fails
scsi-debug device
module is loaded with dif=1,2,or 3 but PI support is not detected
Would appreciate help anyone can provide for the missing test platforms.
Vincent Fu (2):
engines/io_uring: support r/w with metadata
t/io_uring_pi: test script for io_uring PI
engines/io_uring.c | 241 ++++++++++++++++++++++++--
engines/nvme.c | 35 ++--
engines/nvme.h | 18 ++
io_u.h | 1 +
os/linux/io_uring.h | 15 ++
t/io_uring_pi.py | 408 ++++++++++++++++++++++++++++++++++++++++++++
6 files changed, 681 insertions(+), 37 deletions(-)
create mode 100644 t/io_uring_pi.py
--
2.47.2
next reply other threads:[~2025-07-23 17:05 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-23 17:04 Vincent Fu [this message]
2025-07-23 17:04 ` [PATCH 1/2] engines/io_uring: support r/w with metadata Vincent Fu
2025-07-23 17:23 ` Jens Axboe
2025-07-23 17:37 ` Jens Axboe
2025-07-23 18:28 ` Vincent Fu
2025-07-23 19:23 ` Jens Axboe
2025-07-23 17:04 ` [PATCH 2/2] t/io_uring_pi: test script for io_uring PI Vincent Fu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1753282479.git.vincent.fu@samsung.com \
--to=vincentfu@gmail.com \
--cc=anuj1072538@gmail.com \
--cc=anuj20.g@samsung.com \
--cc=axboe@kernel.dk \
--cc=fio@vger.kernel.org \
--cc=hch@infradead.org \
--cc=joshi.k@samsung.com \
--cc=vincent.fu@samsung.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox