From: Pavel Begunkov <asml.silence@gmail.com>
To: io-uring@vger.kernel.org
Cc: Jens Axboe <axboe@kernel.dk>,
asml.silence@gmail.com, Conrad Meyer <conradmeyer@meta.com>,
linux-block@vger.kernel.org, linux-mm@kvack.org
Subject: [RFC 0/5] implement asynchronous BLKDISCARD via io_uring
Date: Wed, 14 Aug 2024 11:45:49 +0100 [thread overview]
Message-ID: <cover.1723601133.git.asml.silence@gmail.com> (raw)
There is an interest in having asynchronous block operations like
discard. The patch set implements that as io_uring commands, which is
an io_uring request type allowing to implement custom file specific
operations.
First 4 patches are simple preps, and the main part is in Patch 5.
Not tested with a real drive yet, hence sending as an RFC.
I'm also going to add BLKDISCARDZEROES and BLKSECDISCARD, which should
reuse structures and helpers from Patch 5.
liburing tests for reference:
https://github.com/isilence/liburing.git discard-cmd-test
Pavel Begunkov (5):
io_uring/cmd: expose iowq to cmds
io_uring/cmd: give inline space in request to cmds
filemap: introduce filemap_invalidate_pages
block: introduce blk_validate_discard()
block: implement io_uring discard cmd
block/blk.h | 1 +
block/fops.c | 2 +
block/ioctl.c | 139 ++++++++++++++++++++++++++++++-----
include/linux/io_uring/cmd.h | 15 ++++
include/linux/pagemap.h | 2 +
include/uapi/linux/fs.h | 2 +
io_uring/io_uring.c | 11 +++
io_uring/io_uring.h | 1 +
io_uring/uring_cmd.c | 7 ++
mm/filemap.c | 18 +++--
10 files changed, 176 insertions(+), 22 deletions(-)
--
2.45.2
next reply other threads:[~2024-08-14 10:45 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-08-14 10:45 Pavel Begunkov [this message]
2024-08-14 10:45 ` [RFC 1/5] io_uring/cmd: expose iowq to cmds Pavel Begunkov
2024-08-14 10:45 ` [RFC 2/5] io_uring/cmd: give inline space in request " Pavel Begunkov
2024-08-14 10:45 ` [RFC 3/5] filemap: introduce filemap_invalidate_pages Pavel Begunkov
2024-08-14 10:45 ` [RFC 4/5] block: introduce blk_validate_discard() Pavel Begunkov
2024-08-14 10:45 ` [RFC 5/5] block: implement io_uring discard cmd Pavel Begunkov
2024-08-15 1:42 ` Ming Lei
2024-08-15 14:33 ` Jens Axboe
2024-08-15 17:11 ` Pavel Begunkov
2024-08-15 23:44 ` Ming Lei
2024-08-16 1:24 ` Jens Axboe
2024-08-16 1:45 ` Ming Lei
2024-08-16 1:59 ` Pavel Begunkov
2024-08-16 2:08 ` Ming Lei
2024-08-16 2:16 ` Pavel Begunkov
2024-08-19 20:02 ` Jens Axboe
2024-08-19 20:01 ` Jens Axboe
2024-08-20 2:36 ` Ming Lei
2024-08-20 16:30 ` Jens Axboe
2024-08-20 17:19 ` Pavel Begunkov
2024-08-21 2:55 ` Ming Lei
2024-08-15 4:08 ` kernel test robot
2024-08-15 4:08 ` kernel test robot
2024-08-15 14:42 ` Jens Axboe
2024-08-15 15:50 ` [RFC 0/5] implement asynchronous BLKDISCARD via io_uring Jens Axboe
2024-08-15 17:26 ` Pavel Begunkov
2024-08-15 16:15 ` Martin K. Petersen
2024-08-15 17:12 ` Pavel Begunkov
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.1723601133.git.asml.silence@gmail.com \
--to=asml.silence@gmail.com \
--cc=axboe@kernel.dk \
--cc=conradmeyer@meta.com \
--cc=io-uring@vger.kernel.org \
--cc=linux-block@vger.kernel.org \
--cc=linux-mm@kvack.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.