From: Jens Axboe <[email protected]>
To: Linus Torvalds <[email protected]>
Cc: io-uring <[email protected]>
Subject: [GIT PULL] io_uring changes for 5.11-rc
Date: Mon, 14 Dec 2020 07:41:51 -0700 [thread overview]
Message-ID: <[email protected]> (raw)
Hi Linus,
Fairly light set of changes this time around, and mostly some bits that
were pushed out to 5.11 instead of 5.10, fixes/cleanups, and a few
features. In particular:
- Cleanups around iovec import (David Laight, Pavel)
- Add timeout support for io_uring_enter(2), which enables us to clean
up liburing and avoid a timeout sqe submission in the completion path.
The big win here is that it allows setups that split SQ and CQ
handling into separate threads to avoid locking, as the CQ side will
no longer submit when timeouts are needed when waiting for events.
(Hao Xu)
- Add support for socket shutdown, and renameat/unlinkat.
- SQPOLL cleanups and improvements (Xiaoguang Wang)
- Allow SQPOLL setups for CAP_SYS_NICE, and enable regular (non-fixed)
files to be used.
- Cancelation improvements (Pavel)
- Fixed file reference improvements (Pavel)
- IOPOLL related race fixes (Pavel)
- Lots of other little fixes and cleanups (mostly Pavel)
Please pull!
The following changes since commit 418baf2c28f3473039f2f7377760bd8f6897ae18:
Linux 5.10-rc5 (2020-11-22 15:36:08 -0800)
are available in the Git repository at:
git://git.kernel.dk/linux-block.git tags/for-5.11/io_uring-2020-12-14
for you to fetch changes up to 59850d226e4907a6f37c1d2fe5ba97546a8691a4:
io_uring: fix io_cqring_events()'s noflush (2020-12-09 12:04:02 -0700)
----------------------------------------------------------------
for-5.11/io_uring-2020-12-14
----------------------------------------------------------------
David Laight (1):
fs/io_uring Don't use the return value from import_iovec().
Hao Xu (1):
io_uring: add timeout support for io_uring_enter()
Jens Axboe (10):
io_uring: allow SQPOLL with CAP_SYS_NICE privileges
net: provide __sys_shutdown_sock() that takes a socket
io_uring: add support for shutdown(2)
io_uring: allow non-fixed files with SQPOLL
io_uring: enable file table usage for SQPOLL rings
fs: make do_renameat2() take struct filename
io_uring: add support for IORING_OP_RENAMEAT
io_uring: add support for IORING_OP_UNLINKAT
io_uring: only plug when appropriate
io_uring: use bottom half safe lock for fixed file data
Pavel Begunkov (25):
io_uring: split poll and poll_remove structs
io_uring: track link's head and tail during submit
io_uring: track link timeout's master explicitly
io_uring: link requests with singly linked list
io_uring: rearrange io_kiocb fields for better caching
io_uring: NULL files dereference by SQPOLL
io_uring: remove duplicated io_size from rw
io_uring: inline io_import_iovec()
io_uring: simplify io_task_match()
io_uring: add a {task,files} pair matching helper
io_uring: cancel only requests of current task
io_uring: don't iterate io_uring_cancel_files()
io_uring: pass files into kill timeouts/poll
io_uring: always batch cancel in *cancel_files()
io_uring: don't take fs for recvmsg/sendmsg
io_uring: replace inflight_wait with tctx->wait
io_uring: share fixed_file_refs b/w multiple rsrcs
io_uring: change submit file state invariant
io_uring: fix miscounting ios_left
io_uring: fix files cancellation
io_uring: restructure io_timeout_cancel()
io_uring: add timeout update
io_uring: fix racy IOPOLL completions
io_uring: fix racy IOPOLL flush overflow
io_uring: fix io_cqring_events()'s noflush
Xiaoguang Wang (6):
io_uring: refactor io_sq_thread() handling
io_uring: initialize 'timeout' properly in io_sq_thread()
io_uring: don't acquire uring_lock twice
io_uring: only wake up sq thread while current task is in io worker context
io_uring: check kthread stopped flag when sq thread is unparked
io_uring: always let io_iopoll_complete() complete polled io
fs/internal.h | 2 +
fs/io-wq.c | 10 -
fs/io-wq.h | 1 -
fs/io_uring.c | 1333 ++++++++++++++++++++++++-----------------
fs/namei.c | 40 +-
include/linux/socket.h | 1 +
include/linux/syscalls.h | 2 +-
include/uapi/linux/io_uring.h | 16 +
net/socket.c | 15 +-
9 files changed, 827 insertions(+), 593 deletions(-)
--
Jens Axboe
next reply other threads:[~2020-12-14 14:42 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-12-14 14:41 Jens Axboe [this message]
2020-12-16 14:10 ` [GIT PULL] io_uring changes for 5.11-rc Jens Axboe
2020-12-16 21:18 ` pr-tracker-bot
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] \
[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