The source for the Linux kernel used in Windows Subsystem for Linux 2 (WSL2)
Перейти к файлу
Pavel Begunkov 53bdc88aac io_uring/notif: order notif vs send CQEs
Currently, there is no ordering between notification CQEs and
completions of the send flushing it, this quite complicates the
userspace, especially since we don't flush notification when the
send(+flush) request fails, i.e. there will be only one CQE. What we
can do is to make sure that notification completions come only after
sends.

The easiest way to achieve this is to not try to complete a notification
inline from io_sendzc() but defer it to task_work, considering that
io-wq sendzc is disallowed CQEs will be naturally ordered because
task_works will only be executed after we're done with submission and so
inline completion.

Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Link: https://lore.kernel.org/r/cddfd1c2bf91f22b9fe08e13b7dffdd8f858a151.1661342812.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-08-24 08:57:28 -06:00
Documentation xen: branch for v6.0-rc1b 2022-08-14 09:28:54 -07:00
LICENSES
arch xen: branch for v6.0-rc1b 2022-08-14 09:28:54 -07:00
block
certs
crypto
drivers xen: branch for v6.0-rc1b 2022-08-14 09:28:54 -07:00
fs take care to handle NULL ->proc_lseek() 2022-08-14 15:16:18 -04:00
include io_uring: uapi: Add `extern "C"` in io_uring.h for liburing 2022-08-23 07:22:33 -06:00
init
io_uring io_uring/notif: order notif vs send CQEs 2022-08-24 08:57:28 -06:00
ipc
kernel xen: branch for v6.0-rc1b 2022-08-14 09:28:54 -07:00
lib
mm
net
samples
scripts
security
sound
tools
usr
virt
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS MAINTAINERS: Add `include/linux/io_uring_types.h` 2022-08-23 07:22:32 -06:00
Makefile Linux 6.0-rc1 2022-08-14 15:50:18 -07:00
README

README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.