From: Pavel Begunkov <[email protected]>
To: [email protected]
Cc: [email protected]
Subject: [PATCH 00/11] support kernel allocated regions
Date: Wed, 20 Nov 2024 23:33:23 +0000 [thread overview]
Message-ID: <[email protected]> (raw)
The classical way SQ/CQ work is kernel doing the allocation
and the user mmap'ing it into the userspace. Regions need to
support it as well.
The patchset should be straightforward with simple preparations
patches and cleanups. The main part is Patch 10, which internally
implements kernel allocations, and Patch 11 that implementing the
mmap part and exposes it to reg-wait / parameter region users.
I'll be sending liburing tests in a separate set. Additionally
tested converting CQ/SQ to internal region api, but this change
is left for later.
Pavel Begunkov (11):
io_uring: rename ->resize_lock
io_uring/rsrc: export io_check_coalesce_buffer
io_uring/memmap: add internal region flags
io_uring/memmap: flag regions with user pages
io_uring/memmap: account memory before pinning
io_uring/memmap: reuse io_free_region for failure path
io_uring/memmap: optimise single folio regions
io_uring/memmap: helper for pinning region pages
io_uring/memmap: add IO_REGION_F_SINGLE_REF
io_uring/memmap: implement kernel allocated regions
io_uring/memmap: implement mmap for regions
include/linux/io_uring_types.h | 7 +-
io_uring/io_uring.c | 2 +-
io_uring/memmap.c | 190 ++++++++++++++++++++++++++++-----
io_uring/memmap.h | 12 ++-
io_uring/register.c | 12 +--
io_uring/rsrc.c | 22 ++--
io_uring/rsrc.h | 4 +
7 files changed, 198 insertions(+), 51 deletions(-)
--
2.46.0
next reply other threads:[~2024-11-20 23:33 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-20 23:33 Pavel Begunkov [this message]
2024-11-20 23:33 ` [PATCH 01/11] io_uring: rename ->resize_lock Pavel Begunkov
2024-11-20 23:33 ` [PATCH 02/11] io_uring/rsrc: export io_check_coalesce_buffer Pavel Begunkov
2024-11-20 23:33 ` [PATCH 03/11] io_uring/memmap: add internal region flags Pavel Begunkov
2024-11-20 23:33 ` [PATCH 04/11] io_uring/memmap: flag regions with user pages Pavel Begunkov
2024-11-20 23:33 ` [PATCH 05/11] io_uring/memmap: account memory before pinning Pavel Begunkov
2024-11-20 23:33 ` [PATCH 06/11] io_uring/memmap: reuse io_free_region for failure path Pavel Begunkov
2024-11-20 23:33 ` [PATCH 07/11] io_uring/memmap: optimise single folio regions Pavel Begunkov
2024-11-20 23:33 ` [PATCH 08/11] io_uring/memmap: helper for pinning region pages Pavel Begunkov
2024-11-20 23:33 ` [PATCH 09/11] io_uring/memmap: add IO_REGION_F_SINGLE_REF Pavel Begunkov
2024-11-20 23:33 ` [PATCH 10/11] io_uring/memmap: implement kernel allocated regions Pavel Begunkov
2024-11-20 23:33 ` [PATCH 11/11] io_uring/memmap: implement mmap for regions Pavel Begunkov
2024-11-21 1:28 ` [PATCH 00/11] support kernel allocated regions Jens Axboe
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 \
[email protected] \
[email protected] \
[email protected] \
/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