]> www.infradead.org Git - users/jedix/linux-maple.git/log
users/jedix/linux-maple.git
4 years agoMerge remote-tracking branch 'v9fs/9p-next'
Stephen Rothwell [Wed, 14 Apr 2021 01:16:05 +0000 (11:16 +1000)]
Merge remote-tracking branch 'v9fs/9p-next'

4 years agoMerge remote-tracking branch 'overlayfs/overlayfs-next'
Stephen Rothwell [Wed, 14 Apr 2021 01:14:46 +0000 (11:14 +1000)]
Merge remote-tracking branch 'overlayfs/overlayfs-next'

4 years agoMerge remote-tracking branch 'cel/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 01:12:32 +0000 (11:12 +1000)]
Merge remote-tracking branch 'cel/for-next'

4 years agoMerge remote-tracking branch 'jfs/jfs-next'
Stephen Rothwell [Wed, 14 Apr 2021 01:11:13 +0000 (11:11 +1000)]
Merge remote-tracking branch 'jfs/jfs-next'

4 years agoMerge remote-tracking branch 'fuse/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 01:09:55 +0000 (11:09 +1000)]
Merge remote-tracking branch 'fuse/for-next'

4 years agoMerge remote-tracking branch 'f2fs/dev'
Stephen Rothwell [Wed, 14 Apr 2021 01:07:46 +0000 (11:07 +1000)]
Merge remote-tracking branch 'f2fs/dev'

4 years agoMerge remote-tracking branch 'ext4/dev'
Stephen Rothwell [Wed, 14 Apr 2021 01:06:07 +0000 (11:06 +1000)]
Merge remote-tracking branch 'ext4/dev'

4 years agoMerge remote-tracking branch 'ext3/for_next'
Stephen Rothwell [Wed, 14 Apr 2021 00:51:34 +0000 (10:51 +1000)]
Merge remote-tracking branch 'ext3/for_next'

4 years agoMerge remote-tracking branch 'exfat/dev'
Stephen Rothwell [Wed, 14 Apr 2021 00:50:15 +0000 (10:50 +1000)]
Merge remote-tracking branch 'exfat/dev'

4 years agoMerge remote-tracking branch 'erofs/dev'
Stephen Rothwell [Wed, 14 Apr 2021 00:48:36 +0000 (10:48 +1000)]
Merge remote-tracking branch 'erofs/dev'

4 years agoMerge remote-tracking branch 'ecryptfs/next'
Stephen Rothwell [Wed, 14 Apr 2021 00:47:18 +0000 (10:47 +1000)]
Merge remote-tracking branch 'ecryptfs/next'

4 years agoMerge remote-tracking branch 'cifsd/cifsd-for-next'
Stephen Rothwell [Wed, 14 Apr 2021 00:45:39 +0000 (10:45 +1000)]
Merge remote-tracking branch 'cifsd/cifsd-for-next'

4 years agoMerge remote-tracking branch 'cifs/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 00:44:19 +0000 (10:44 +1000)]
Merge remote-tracking branch 'cifs/for-next'

4 years agoMerge remote-tracking branch 'btrfs/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 00:36:27 +0000 (10:36 +1000)]
Merge remote-tracking branch 'btrfs/for-next'

4 years agoMerge remote-tracking branch 'fscache/fscache-next'
Stephen Rothwell [Wed, 14 Apr 2021 00:22:43 +0000 (10:22 +1000)]
Merge remote-tracking branch 'fscache/fscache-next'

4 years agoMerge remote-tracking branch 'pidfd/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 00:10:24 +0000 (10:10 +1000)]
Merge remote-tracking branch 'pidfd/for-next'

4 years agoMerge remote-tracking branch 'xtensa/xtensa-for-next'
Stephen Rothwell [Wed, 14 Apr 2021 00:09:25 +0000 (10:09 +1000)]
Merge remote-tracking branch 'xtensa/xtensa-for-next'

4 years agoMerge remote-tracking branch 'sh/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 00:08:25 +0000 (10:08 +1000)]
Merge remote-tracking branch 'sh/for-next'

4 years agoMerge remote-tracking branch 's390/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 00:07:25 +0000 (10:07 +1000)]
Merge remote-tracking branch 's390/for-next'

4 years agoMerge remote-tracking branch 'risc-v/for-next'
Stephen Rothwell [Wed, 14 Apr 2021 00:06:24 +0000 (10:06 +1000)]
Merge remote-tracking branch 'risc-v/for-next'

4 years agoMerge remote-tracking branch 'powerpc/next'
Stephen Rothwell [Tue, 13 Apr 2021 23:53:26 +0000 (09:53 +1000)]
Merge remote-tracking branch 'powerpc/next'

4 years agoMerge remote-tracking branch 'parisc-hd/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:52:26 +0000 (09:52 +1000)]
Merge remote-tracking branch 'parisc-hd/for-next'

4 years agoMerge remote-tracking branch 'mips/mips-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:50:39 +0000 (09:50 +1000)]
Merge remote-tracking branch 'mips/mips-next'

4 years agoMerge remote-tracking branch 'microblaze/next'
Stephen Rothwell [Tue, 13 Apr 2021 23:49:39 +0000 (09:49 +1000)]
Merge remote-tracking branch 'microblaze/next'

4 years agoMerge remote-tracking branch 'm68knommu/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:49:39 +0000 (09:49 +1000)]
Merge remote-tracking branch 'm68knommu/for-next'

4 years agoMerge remote-tracking branch 'm68k/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:48:39 +0000 (09:48 +1000)]
Merge remote-tracking branch 'm68k/for-next'

4 years agoMerge remote-tracking branch 'h8300/h8300-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:46:48 +0000 (09:46 +1000)]
Merge remote-tracking branch 'h8300/h8300-next'

4 years agoMerge remote-tracking branch 'csky/linux-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:45:48 +0000 (09:45 +1000)]
Merge remote-tracking branch 'csky/linux-next'

4 years agoMerge remote-tracking branch 'clk/clk-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:43:39 +0000 (09:43 +1000)]
Merge remote-tracking branch 'clk/clk-next'

4 years agoMerge remote-tracking branch 'ti-k3/ti-k3-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:31 +0000 (09:41 +1000)]
Merge remote-tracking branch 'ti-k3/ti-k3-next'

4 years agoMerge remote-tracking branch 'tegra/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:27 +0000 (09:41 +1000)]
Merge remote-tracking branch 'tegra/for-next'

4 years agoMerge remote-tracking branch 'sunxi/sunxi/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:26 +0000 (09:41 +1000)]
Merge remote-tracking branch 'sunxi/sunxi/for-next'

4 years agoMerge remote-tracking branch 'scmi/for-linux-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:24 +0000 (09:41 +1000)]
Merge remote-tracking branch 'scmi/for-linux-next'

4 years agoMerge remote-tracking branch 'samsung-krzk/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:22 +0000 (09:41 +1000)]
Merge remote-tracking branch 'samsung-krzk/for-next'

4 years agoMerge remote-tracking branch 'rockchip/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:21 +0000 (09:41 +1000)]
Merge remote-tracking branch 'rockchip/for-next'

4 years agoMerge remote-tracking branch 'reset/reset/next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:21 +0000 (09:41 +1000)]
Merge remote-tracking branch 'reset/reset/next'

4 years agoMerge remote-tracking branch 'renesas/next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:19 +0000 (09:41 +1000)]
Merge remote-tracking branch 'renesas/next'

4 years agoMerge remote-tracking branch 'realtek/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:19 +0000 (09:41 +1000)]
Merge remote-tracking branch 'realtek/for-next'

4 years agoMerge remote-tracking branch 'raspberrypi/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:18 +0000 (09:41 +1000)]
Merge remote-tracking branch 'raspberrypi/for-next'

# Conflicts:
# arch/arm/boot/dts/bcm2711.dtsi

4 years agoMerge remote-tracking branch 'qcom/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:13 +0000 (09:41 +1000)]
Merge remote-tracking branch 'qcom/for-next'

4 years agoMerge remote-tracking branch 'omap/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:08 +0000 (09:41 +1000)]
Merge remote-tracking branch 'omap/for-next'

4 years agoMerge remote-tracking branch 'mvebu/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:07 +0000 (09:41 +1000)]
Merge remote-tracking branch 'mvebu/for-next'

4 years agoMerge remote-tracking branch 'mediatek/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:06 +0000 (09:41 +1000)]
Merge remote-tracking branch 'mediatek/for-next'

4 years agoMerge remote-tracking branch 'keystone/next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:05 +0000 (09:41 +1000)]
Merge remote-tracking branch 'keystone/next'

4 years agoMerge remote-tracking branch 'imx-mxs/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:41:00 +0000 (09:41 +1000)]
Merge remote-tracking branch 'imx-mxs/for-next'

4 years agoMerge remote-tracking branch 'drivers-memory/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:40:59 +0000 (09:40 +1000)]
Merge remote-tracking branch 'drivers-memory/for-next'

4 years agoMerge remote-tracking branch 'at91/at91-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:40:56 +0000 (09:40 +1000)]
Merge remote-tracking branch 'at91/at91-next'

4 years agoMerge remote-tracking branch 'aspeed/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:40:55 +0000 (09:40 +1000)]
Merge remote-tracking branch 'aspeed/for-next'

4 years agoMerge remote-tracking branch 'amlogic/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:40:54 +0000 (09:40 +1000)]
Merge remote-tracking branch 'amlogic/for-next'

4 years agoMerge remote-tracking branch 'actions/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:40:53 +0000 (09:40 +1000)]
Merge remote-tracking branch 'actions/for-next'

4 years agoMerge remote-tracking branch 'arm-soc/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:27:41 +0000 (09:27 +1000)]
Merge remote-tracking branch 'arm-soc/for-next'

4 years agoMerge remote-tracking branch 'arm64/for-next/core'
Stephen Rothwell [Tue, 13 Apr 2021 23:14:34 +0000 (09:14 +1000)]
Merge remote-tracking branch 'arm64/for-next/core'

# Conflicts:
# arch/arm64/include/asm/cpucaps.h

4 years agoMerge remote-tracking branch 'arm/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:11:45 +0000 (09:11 +1000)]
Merge remote-tracking branch 'arm/for-next'

4 years agoMerge remote-tracking branch 'asm-generic/master'
Stephen Rothwell [Tue, 13 Apr 2021 23:11:44 +0000 (09:11 +1000)]
Merge remote-tracking branch 'asm-generic/master'

4 years agoMerge remote-tracking branch 'dma-mapping/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 23:02:06 +0000 (09:02 +1000)]
Merge remote-tracking branch 'dma-mapping/for-next'

4 years agoMerge remote-tracking branch 'kbuild/for-next'
Stephen Rothwell [Tue, 13 Apr 2021 22:57:57 +0000 (08:57 +1000)]
Merge remote-tracking branch 'kbuild/for-next'

4 years agoMerge remote-tracking branch 'pinctrl-intel-fixes/fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:58 +0000 (08:54 +1000)]
Merge remote-tracking branch 'pinctrl-intel-fixes/fixes'

4 years agoMerge remote-tracking branch 'gpio-brgl-fixes/gpio/for-current'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:58 +0000 (08:54 +1000)]
Merge remote-tracking branch 'gpio-brgl-fixes/gpio/for-current'

4 years agoMerge remote-tracking branch 'pidfd-fixes/fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:57 +0000 (08:54 +1000)]
Merge remote-tracking branch 'pidfd-fixes/fixes'

4 years agoMerge remote-tracking branch 'risc-v-fixes/fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:57 +0000 (08:54 +1000)]
Merge remote-tracking branch 'risc-v-fixes/fixes'

4 years agoMerge remote-tracking branch 'rtc-fixes/rtc-fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:56 +0000 (08:54 +1000)]
Merge remote-tracking branch 'rtc-fixes/rtc-fixes'

4 years agoMerge remote-tracking branch 'drm-intel-fixes/for-linux-next-fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:56 +0000 (08:54 +1000)]
Merge remote-tracking branch 'drm-intel-fixes/for-linux-next-fixes'

4 years agoMerge remote-tracking branch 'scsi-fixes/fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:55 +0000 (08:54 +1000)]
Merge remote-tracking branch 'scsi-fixes/fixes'

4 years agoMerge remote-tracking branch 'btrfs-fixes/next-fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:54 +0000 (08:54 +1000)]
Merge remote-tracking branch 'btrfs-fixes/next-fixes'

4 years agoMerge remote-tracking branch 'nvdimm-fixes/libnvdimm-fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:53 +0000 (08:54 +1000)]
Merge remote-tracking branch 'nvdimm-fixes/libnvdimm-fixes'

4 years agoMerge remote-tracking branch 'kvm-fixes/master'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:53 +0000 (08:54 +1000)]
Merge remote-tracking branch 'kvm-fixes/master'

4 years agoMerge remote-tracking branch 'v4l-dvb-fixes/fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:52 +0000 (08:54 +1000)]
Merge remote-tracking branch 'v4l-dvb-fixes/fixes'

4 years agoMerge remote-tracking branch 'dmaengine-fixes/fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:51 +0000 (08:54 +1000)]
Merge remote-tracking branch 'dmaengine-fixes/fixes'

4 years agoMerge remote-tracking branch 'vfio-fixes/for-linus'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:51 +0000 (08:54 +1000)]
Merge remote-tracking branch 'vfio-fixes/for-linus'

4 years agoMerge remote-tracking branch 'ide/master'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:44 +0000 (08:54 +1000)]
Merge remote-tracking branch 'ide/master'

4 years agoMerge remote-tracking branch 'input-current/for-linus'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:43 +0000 (08:54 +1000)]
Merge remote-tracking branch 'input-current/for-linus'

4 years agoMerge remote-tracking branch 'soundwire-fixes/fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:42 +0000 (08:54 +1000)]
Merge remote-tracking branch 'soundwire-fixes/fixes'

4 years agoMerge remote-tracking branch 'phy/fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:42 +0000 (08:54 +1000)]
Merge remote-tracking branch 'phy/fixes'

4 years agoMerge remote-tracking branch 'pci-current/for-linus'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:41 +0000 (08:54 +1000)]
Merge remote-tracking branch 'pci-current/for-linus'

4 years agoMerge remote-tracking branch 'spi-fixes/for-linus'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:40 +0000 (08:54 +1000)]
Merge remote-tracking branch 'spi-fixes/for-linus'

4 years agoMerge remote-tracking branch 'regulator-fixes/for-linus'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:40 +0000 (08:54 +1000)]
Merge remote-tracking branch 'regulator-fixes/for-linus'

4 years agoMerge remote-tracking branch 'regmap-fixes/for-linus'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:40 +0000 (08:54 +1000)]
Merge remote-tracking branch 'regmap-fixes/for-linus'

4 years agoMerge remote-tracking branch 'sound-asoc-fixes/for-linus'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:39 +0000 (08:54 +1000)]
Merge remote-tracking branch 'sound-asoc-fixes/for-linus'

4 years agoMerge remote-tracking branch 'bpf/master'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:39 +0000 (08:54 +1000)]
Merge remote-tracking branch 'bpf/master'

4 years agoMerge remote-tracking branch 'net/master'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:38 +0000 (08:54 +1000)]
Merge remote-tracking branch 'net/master'

4 years agoMerge remote-tracking branch 's390-fixes/fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:37 +0000 (08:54 +1000)]
Merge remote-tracking branch 's390-fixes/fixes'

4 years agoMerge remote-tracking branch 'arm-soc-fixes/arm/fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:35 +0000 (08:54 +1000)]
Merge remote-tracking branch 'arm-soc-fixes/arm/fixes'

4 years agoMerge remote-tracking branch 'arm64-fixes/for-next/fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:35 +0000 (08:54 +1000)]
Merge remote-tracking branch 'arm64-fixes/for-next/fixes'

4 years agoMerge remote-tracking branch 'arm-current/fixes'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:34 +0000 (08:54 +1000)]
Merge remote-tracking branch 'arm-current/fixes'

4 years agoMerge remote-tracking branch 'arc-current/for-curr'
Stephen Rothwell [Tue, 13 Apr 2021 22:54:34 +0000 (08:54 +1000)]
Merge remote-tracking branch 'arc-current/for-curr'

4 years agoxen-netback: Check for hotplug-status existence before watching
Michael Brown [Tue, 13 Apr 2021 15:25:12 +0000 (16:25 +0100)]
xen-netback: Check for hotplug-status existence before watching

The logic in connect() is currently written with the assumption that
xenbus_watch_pathfmt() will return an error for a node that does not
exist.  This assumption is incorrect: xenstore does allow a watch to
be registered for a nonexistent node (and will send notifications
should the node be subsequently created).

As of commit 1f2565780 ("xen-netback: remove 'hotplug-status' once it
has served its purpose"), this leads to a failure when a domU
transitions into XenbusStateConnected more than once.  On the first
domU transition into Connected state, the "hotplug-status" node will
be deleted by the hotplug_status_changed() callback in dom0.  On the
second or subsequent domU transition into Connected state, the
hotplug_status_changed() callback will therefore never be invoked, and
so the backend will remain stuck in InitWait.

This failure prevents scenarios such as reloading the xen-netfront
module within a domU, or booting a domU via iPXE.  There is
unfortunately no way for the domU to work around this dom0 bug.

Fix by explicitly checking for existence of the "hotplug-status" node,
thereby creating the behaviour that was previously assumed to exist.

Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
4 years agoKVM: VMX: Don't use vcpu->run->internal.ndata as an array index
Reiji Watanabe [Tue, 13 Apr 2021 15:47:40 +0000 (15:47 +0000)]
KVM: VMX: Don't use vcpu->run->internal.ndata as an array index

__vmx_handle_exit() uses vcpu->run->internal.ndata as an index for
an array access.  Since vcpu->run is (can be) mapped to a user address
space with a writer permission, the 'ndata' could be updated by the
user process at anytime (the user process can set it to outside the
bounds of the array).
So, it is not safe that __vmx_handle_exit() uses the 'ndata' that way.

Fixes: 1aa561b1a4c0 ("kvm: x86: Add "last CPU" to some KVM_EXIT information")
Signed-off-by: Reiji Watanabe <reijiw@google.com>
Reviewed-by: Jim Mattson <jmattson@google.com>
Message-Id: <20210413154739.490299-1-reijiw@google.com>
Cc: stable@vger.kernel.org
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
4 years agogro: ensure frag0 meets IP header alignment
Eric Dumazet [Tue, 13 Apr 2021 12:41:35 +0000 (05:41 -0700)]
gro: ensure frag0 meets IP header alignment

After commit 0f6925b3e8da ("virtio_net: Do not pull payload in skb->head")
Guenter Roeck reported one failure in his tests using sh architecture.

After much debugging, we have been able to spot silent unaligned accesses
in inet_gro_receive()

The issue at hand is that upper networking stacks assume their header
is word-aligned. Low level drivers are supposed to reserve NET_IP_ALIGN
bytes before the Ethernet header to make that happen.

This patch hardens skb_gro_reset_offset() to not allow frag0 fast-path
if the fragment is not properly aligned.

Some arches like x86, arm64 and powerpc do not care and define NET_IP_ALIGN
as 0, this extra check will be a NOP for them.

Note that if frag0 is not used, GRO will call pskb_may_pull()
as many times as needed to pull network and transport headers.

Fixes: 0f6925b3e8da ("virtio_net: Do not pull payload in skb->head")
Fixes: 78a478d0efd9 ("gro: Inline skb_gro_header and cache frag0 virtual address")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: Guenter Roeck <linux@roeck-us.net>
Cc: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Jason Wang <jasowang@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
4 years agonet/sctp: fix race condition in sctp_destroy_sock
Or Cohen [Tue, 13 Apr 2021 18:10:31 +0000 (21:10 +0300)]
net/sctp: fix race condition in sctp_destroy_sock

If sctp_destroy_sock is called without sock_net(sk)->sctp.addr_wq_lock
held and sp->do_auto_asconf is true, then an element is removed
from the auto_asconf_splist without any proper locking.

This can happen in the following functions:
1. In sctp_accept, if sctp_sock_migrate fails.
2. In inet_create or inet6_create, if there is a bpf program
   attached to BPF_CGROUP_INET_SOCK_CREATE which denies
   creation of the sctp socket.

The bug is fixed by acquiring addr_wq_lock in sctp_destroy_sock
instead of sctp_close.

This addresses CVE-2021-23133.

Reported-by: Or Cohen <orcohen@paloaltonetworks.com>
Reviewed-by: Xin Long <lucien.xin@gmail.com>
Fixes: 610236587600 ("bpf: Add new cgroup attach type to enable sock modifications")
Signed-off-by: Or Cohen <orcohen@paloaltonetworks.com>
Acked-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
4 years agoibmvnic: correctly use dev_consume/free_skb_irq
Lijun Pan [Tue, 13 Apr 2021 08:33:25 +0000 (03:33 -0500)]
ibmvnic: correctly use dev_consume/free_skb_irq

It is more correct to use dev_kfree_skb_irq when packets are dropped,
and to use dev_consume_skb_irq when packets are consumed.

Fixes: 0d973388185d ("ibmvnic: Introduce xmit_more support using batched subCRQ hcalls")
Suggested-by: Thomas Falcon <tlfalcon@linux.ibm.com>
Signed-off-by: Lijun Pan <lijunp213@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
4 years agonet: Make tcp_allowed_congestion_control readonly in non-init netns
Jonathon Reinhart [Tue, 13 Apr 2021 07:08:48 +0000 (03:08 -0400)]
net: Make tcp_allowed_congestion_control readonly in non-init netns

Currently, tcp_allowed_congestion_control is global and writable;
writing to it in any net namespace will leak into all other net
namespaces.

tcp_available_congestion_control and tcp_allowed_congestion_control are
the only sysctls in ipv4_net_table (the per-netns sysctl table) with a
NULL data pointer; their handlers (proc_tcp_available_congestion_control
and proc_allowed_congestion_control) have no other way of referencing a
struct net. Thus, they operate globally.

Because ipv4_net_table does not use designated initializers, there is no
easy way to fix up this one "bad" table entry. However, the data pointer
updating logic shouldn't be applied to NULL pointers anyway, so we
instead force these entries to be read-only.

These sysctls used to exist in ipv4_table (init-net only), but they were
moved to the per-net ipv4_net_table, presumably without realizing that
tcp_allowed_congestion_control was writable and thus introduced a leak.

Because the intent of that commit was only to know (i.e. read) "which
congestion algorithms are available or allowed", this read-only solution
should be sufficient.

The logic added in recent commit
31c4d2f160eb: ("net: Ensure net namespace isolation of sysctls")
does not and cannot check for NULL data pointers, because
other table entries (e.g. /proc/sys/net/netfilter/nf_log/) have
.data=NULL but use other methods (.extra2) to access the struct net.

Fixes: 9cb8e048e5d9 ("net/ipv4/sysctl: show tcp_{allowed, available}_congestion_control in non-initial netns")
Signed-off-by: Jonathon Reinhart <jonathon.reinhart@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
4 years agoMerge branch 'catch-all-devices'
David S. Miller [Tue, 13 Apr 2021 21:31:52 +0000 (14:31 -0700)]
Merge branch 'catch-all-devices'

Hristo Venev says:

====================
net: Fix two use-after-free bugs

The two patches fix two use-after-free bugs related to cleaning up
network namespaces, one in sit and one in ip6_tunnel. They are easy to
trigger if the user has the ability to create network namespaces.

The bugs can be used to trigger null pointer dereferences. I am not
sure if they can be exploited further, but I would guess that they
can. I am not sending them to the mailing list without confirmation
that doing so would be OK.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>
4 years agonet: ip6_tunnel: Unregister catch-all devices
Hristo Venev [Mon, 12 Apr 2021 17:41:17 +0000 (20:41 +0300)]
net: ip6_tunnel: Unregister catch-all devices

Similarly to the sit case, we need to remove the tunnels with no
addresses that have been moved to another network namespace.

Fixes: 0bd8762824e73 ("ip6tnl: add x-netns support")
Signed-off-by: Hristo Venev <hristo@venev.name>
Signed-off-by: David S. Miller <davem@davemloft.net>
4 years agonet: sit: Unregister catch-all devices
Hristo Venev [Mon, 12 Apr 2021 17:41:16 +0000 (20:41 +0300)]
net: sit: Unregister catch-all devices

A sit interface created without a local or a remote address is linked
into the `sit_net::tunnels_wc` list of its original namespace. When
deleting a network namespace, delete the devices that have been moved.

The following script triggers a null pointer dereference if devices
linked in a deleted `sit_net` remain:

    for i in `seq 1 30`; do
        ip netns add ns-test
        ip netns exec ns-test ip link add dev veth0 type veth peer veth1
        ip netns exec ns-test ip link add dev sit$i type sit dev veth0
        ip netns exec ns-test ip link set dev sit$i netns $$
        ip netns del ns-test
    done
    for i in `seq 1 30`; do
        ip link del dev sit$i
    done

Fixes: 5e6700b3bf98f ("sit: add support of x-netns")
Signed-off-by: Hristo Venev <hristo@venev.name>
Signed-off-by: David S. Miller <davem@davemloft.net>
4 years agoMerge tag 'fixes-for-5.12-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd...
Linus Torvalds [Tue, 13 Apr 2021 21:01:34 +0000 (14:01 -0700)]
Merge tag 'fixes-for-5.12-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux

Pull MTD fix from Richard Weinberger:
 "Fix WAITRDY break condition and timeout in mtk nand driver"

* tag 'fixes-for-5.12-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux:
  mtd: rawnand: mtk: Fix WAITRDY break condition and timeout

4 years agoMerge branch 'mem-ctrl-next' into for-next
Krzysztof Kozlowski [Tue, 13 Apr 2021 15:01:13 +0000 (17:01 +0200)]
Merge branch 'mem-ctrl-next' into for-next

4 years agomemory: mtk-smi: Add device-link between smi-larb and smi-common
Yong Wu [Sat, 10 Apr 2021 09:11:16 +0000 (17:11 +0800)]
memory: mtk-smi: Add device-link between smi-larb and smi-common

Normally, If the smi-larb HW need work, we should enable the smi-common
HW power and clock firstly.
This patch adds device-link between the smi-larb dev and the smi-common
dev. then If pm_runtime_get_sync(smi-larb-dev), the pm_runtime_get_sync
(smi-common-dev) will be called automatically.

Also, Add DL_FLAG_STATELESS to avoid the smi-common clocks be gated when
probe.

CC: Matthias Brugger <matthias.bgg@gmail.com>
Suggested-by: Tomasz Figa <tfiga@chromium.org>
Signed-off-by: Yong Wu <yong.wu@mediatek.com>
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20210410091128.31823-5-yong.wu@mediatek.com
4 years agomemory: samsung: exynos5422-dmc: handle clk_set_parent() failure
Krzysztof Kozlowski [Wed, 7 Apr 2021 15:45:35 +0000 (17:45 +0200)]
memory: samsung: exynos5422-dmc: handle clk_set_parent() failure

clk_set_parent() can fail and ignoring such case could lead to invalid
clock setup for given frequency.

Addresses-Coverity: Unchecked return value
Fixes: 6e7674c3c6df ("memory: Add DMC driver for Exynos5422")
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Link: https://lore.kernel.org/r/20210407154535.70756-1-krzysztof.kozlowski@canonical.com
4 years agomemory: renesas-rpc-if: fix possible NULL pointer dereference of resource
Krzysztof Kozlowski [Wed, 7 Apr 2021 15:43:57 +0000 (17:43 +0200)]
memory: renesas-rpc-if: fix possible NULL pointer dereference of resource

The platform_get_resource_byname() can return NULL which would be
immediately dereferenced by resource_size().  Instead dereference it
after validating the resource.

Addresses-Coverity: Dereference null return value
Fixes: ca7d8b980b67 ("memory: add Renesas RPC-IF driver")
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Link: https://lore.kernel.org/r/20210407154357.70200-1-krzysztof.kozlowski@canonical.com
4 years agoMerge remote-tracking branch 'asoc/for-5.12' into asoc-linus
Mark Brown [Tue, 13 Apr 2021 14:33:15 +0000 (15:33 +0100)]
Merge remote-tracking branch 'asoc/for-5.12' into asoc-linus