The source for the Linux kernel used in Windows Subsystem for Linux 2 (WSL2)
Перейти к файлу
Pavel Begunkov 4c17a496a7 io_uring/net: fix cleanup double free free_iov init
Having ->async_data doesn't mean it's initialised and previously we vere
relying on setting F_CLEANUP at the right moment. With zc sendmsg
though, we set F_CLEANUP early in prep when we alloc a notif and so we
may allocate async_data, fail in copy_msg_hdr() leaving
struct io_async_msghdr not initialised correctly but with F_CLEANUP
set, which causes a ->free_iov double free and probably other nastiness.

Always initialise ->free_iov. Also, now it might point to fast_iov when
fails, so avoid freeing it during cleanups.

Reported-by: syzbot+edfd15cd4246a3fc615a@syzkaller.appspotmail.com
Fixes: 493108d95f ("io_uring/net: zerocopy sendmsg")
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2022-09-26 08:36:50 -06:00
Documentation Devicetree fixes for v6.0, take 2: 2022-09-14 10:22:39 +01:00
LICENSES
arch parisc: Allow CONFIG_64BIT with ARCH=parisc 2022-09-15 07:59:37 +02:00
block block: export blk_rq_is_poll 2022-09-21 10:30:42 -06:00
certs
crypto
drivers fs: add batch and poll flags to the uring_cmd_iopoll() handler 2022-09-21 10:30:43 -06:00
fs eventfd: guard wake_up in eventfd fs calls as well 2022-09-21 10:30:42 -06:00
include io_uring/net: zerocopy sendmsg 2022-09-21 13:15:02 -06:00
init arm64 fixes for -rc3 2022-08-26 11:32:53 -07:00
io_uring io_uring/net: fix cleanup double free free_iov init 2022-09-26 08:36:50 -06:00
ipc
kernel dma-mapping fixes for Linux 6.0 2022-09-10 12:18:19 -04:00
lib This push fixes a boot performance regression due to an unnecessary 2022-08-31 09:47:06 -07:00
mm mm: pagewalk: Fix race between unmap and page walker 2022-09-03 10:13:13 -07:00
net NFS client bugfixes for Linux 6.0 2022-09-12 17:53:46 -04:00
samples
scripts Kbuild fixes for v6.0 (2nd) 2022-09-11 15:16:47 -04:00
security Landlock fix for v6.0-rc4 2022-09-02 15:24:08 -07:00
sound ASoC: Fixes for v6.0 2022-09-08 14:24:05 +02:00
tools selftest/net: adjust io_uring sendzc notif handling 2022-09-23 14:57:27 -06:00
usr
virt KVM: Drop unnecessary initialization of "ops" in kvm_ioctl_create_device() 2022-08-19 04:05:43 -04:00
.clang-format
.cocciconfig
.get_maintainer.ignore get_maintainer: add Alan to .get_maintainer.ignore 2022-08-20 15:17:44 -07:00
.gitattributes
.gitignore
.mailmap Devicetree fixes for v6.0, take 2: 2022-09-14 10:22:39 +01:00
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS gpio fixes for v6.0-rc6 2022-09-16 12:58:17 -07:00
Makefile Linux 6.0-rc6 2022-09-18 13:44:14 -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.