This is the start of the stable review cycle for the 5.15.96 release.
There are 37 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.
Responses should be made by Sat, 25 Feb 2023 14:15:30 +0000.
Anything received after that time might be too late.
The whole patch series can be found in one patch at:
https://www.kernel.org/pub/linux/kernel/v5.x/stable-review/patch-5.15.96-rc…
or in the git tree and branch at:
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git linux-5.15.y
and the diffstat can be found below.
thanks,
greg k-h
-------------
Pseudo-Shortlog of commits:
Greg Kroah-Hartman <gregkh(a)linuxfoundation.org>
Linux 5.15.96-rc2
Linus Torvalds <torvalds(a)linux-foundation.org>
bpf: add missing header file include
Vladimir Oltean <vladimir.oltean(a)nxp.com>
Revert "net/sched: taprio: make qdisc_leaf() see the per-netdev-queue pfifo child qdiscs"
Nathan Chancellor <nathan(a)kernel.org>
lib/Kconfig.debug: Allow BTF + DWARF5 with pahole 1.21+
Nathan Chancellor <nathan(a)kernel.org>
lib/Kconfig.debug: Use CONFIG_PAHOLE_VERSION
Nathan Chancellor <nathan(a)kernel.org>
scripts/pahole-flags.sh: Use pahole-version.sh
Nathan Chancellor <nathan(a)kernel.org>
kbuild: Add CONFIG_PAHOLE_VERSION
Kees Cook <keescook(a)chromium.org>
ext4: Fix function prototype mismatch for ext4_feat_ktype
Paul Moore <paul(a)paul-moore.com>
audit: update the mailing list in MAINTAINERS
Lukas Wunner <lukas(a)wunner.de>
wifi: mwifiex: Add missing compatible string for SD8787
Zhang Wensheng <zhangwensheng5(a)huawei.com>
nbd: fix possible overflow on 'first_minor' in nbd_dev_add()
Alessandro Astone <ales.astone(a)gmail.com>
binder: Gracefully handle BINDER_TYPE_FDA objects with num_fds=0
Alessandro Astone <ales.astone(a)gmail.com>
binder: Address corner cases in deferred copy and fixup
Arnd Bergmann <arnd(a)arndb.de>
binder: fix pointer cast warning
Todd Kjos <tkjos(a)google.com>
binder: defer copies of pre-patched txn data
Todd Kjos <tkjos(a)google.com>
binder: read pre-translated fds from sender buffer
Dave Hansen <dave.hansen(a)linux.intel.com>
uaccess: Add speculation barrier to copy_from_user()
Zheng Wang <zyytlz.wz(a)163.com>
drm/i915/gvt: fix double free bug in split_2MB_gtt_entry
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/64s/radix: Fix RWX mapping with relocated kernel
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/64s/radix: Fix crash with unaligned relocated kernel
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/vmlinux.lds: Add an explicit symbol for the SRWX boundary
Michael Ellerman <mpe(a)ellerman.id.au>
powerpc/vmlinux.lds: Ensure STRICT_ALIGN_SIZE is at least page aligned
Christophe Leroy <christophe.leroy(a)csgroup.eu>
powerpc: use generic version of arch_is_kernel_initmem_freed()
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Disable 10G on MAC1 and MAC2
Marc Kleine-Budde <mkl(a)pengutronix.de>
can: kvaser_usb: hydra: help gcc-13 to figure out cmd_len
Jim Mattson <jmattson(a)google.com>
KVM: VMX: Execute IBPB on emulated VM-exit when guest has IBRS
Sean Christopherson <seanjc(a)google.com>
KVM: SVM: Skip WRMSR fastpath on VM-Exit if next RIP isn't valid
Sean Christopherson <seanjc(a)google.com>
KVM: x86: Fail emulation during EMULTYPE_SKIP on any exception
Jason A. Donenfeld <Jason(a)zx2c4.com>
random: always mix cycle counter in add_latent_entropy()
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: syscon_node_to_regmap() returns error pointers
Sean Anderson <sean.anderson(a)seco.com>
powerpc: dts: t208x: Mark MAC1 and MAC2 as 10G
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Fix a clk entry by adding relevant flags
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Add option to override gate clks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Remove redundant spinlocks
Rahul Tanwar <rtanwar(a)maxlinear.com>
clk: mxl: Switch from direct readl/writel based IO to regmap based IO
Ankit Nautiyal <ankit.k.nautiyal(a)intel.com>
drm/edid: Fix minimum bpc supported with DSC1.2 for HDMI sink
Bitterblue Smith <rtl8821cerfe2(a)gmail.com>
wifi: rtl8xxxu: gen2: Turn on the rate control
Lucas Stach <l.stach(a)pengutronix.de>
drm/etnaviv: don't truncate physical page address
-------------
Diffstat:
MAINTAINERS | 3 +-
Makefile | 4 +-
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-2.dtsi | 44 +++
arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-3.dtsi | 44 +++
arch/powerpc/boot/dts/fsl/t2081si-post.dtsi | 20 +-
arch/powerpc/include/asm/sections.h | 14 +-
arch/powerpc/kernel/vmlinux.lds.S | 14 +-
arch/powerpc/mm/book3s32/mmu.c | 2 +-
arch/powerpc/mm/book3s64/radix_pgtable.c | 28 +-
arch/x86/kvm/svm/svm.c | 10 +-
arch/x86/kvm/vmx/nested.c | 11 +
arch/x86/kvm/vmx/vmx.c | 6 +-
arch/x86/kvm/x86.c | 4 +-
drivers/android/binder.c | 343 +++++++++++++++++++--
drivers/block/nbd.c | 23 +-
drivers/clk/x86/Kconfig | 5 +-
drivers/clk/x86/clk-cgu-pll.c | 23 +-
drivers/clk/x86/clk-cgu.c | 106 ++-----
drivers/clk/x86/clk-cgu.h | 46 +--
drivers/clk/x86/clk-lgm.c | 18 +-
drivers/gpu/drm/drm_edid.c | 3 +-
drivers/gpu/drm/etnaviv/etnaviv_mmu.c | 4 +-
drivers/gpu/drm/i915/gvt/gtt.c | 17 +-
drivers/net/can/usb/kvaser_usb/kvaser_usb_hydra.c | 33 +-
drivers/net/wireless/marvell/mwifiex/sdio.c | 1 +
.../net/wireless/realtek/rtl8xxxu/rtl8xxxu_core.c | 8 +-
fs/ext4/sysfs.c | 7 +-
include/linux/nospec.h | 4 +
include/linux/random.h | 6 +-
init/Kconfig | 4 +
kernel/bpf/core.c | 3 +-
lib/Kconfig.debug | 4 +-
lib/usercopy.c | 7 +
net/sched/sch_taprio.c | 8 +-
scripts/pahole-flags.sh | 2 +-
scripts/pahole-version.sh | 13 +
36 files changed, 661 insertions(+), 231 deletions(-)
From: Conor Dooley <conor.dooley(a)microchip.com>
Quoting the llvm docs:
> Between versions 2.0 and 2.1 of the base I specification, a backwards
> incompatible change was made to remove selected instructions and CSRs
> from the base ISA. These instructions were grouped into a set of new
> extensions, but were no longer required by the base ISA. (snip) LLVM
> currently implements version 2.0 of the base specification. Thus,
> instructions from these extensions are accepted as part of the base
> ISA.
There is therefore no need (at present!) to carry out a $cc-option
check, and instead just gate presence of zicsr and zifencei in march
on the version of binutils that commit 6df2a016c0c8 ("riscv: fix build
with binutils 2.38") highlights as the introduction of the requirement.
In fact, the status quo creates some issues with mixed llvm/binutils
builds, specifically building with llvm-17 and ld from binutils-2.35.
Odd combo you may think, but this is what tuxsuite's debian stable uses
while testing 5.10 stable kernels as doesn't support LLD.
CC: stable(a)vger.kernel.org # needs RISC-V: move zicsr/zifencei spec version check to Kconfi
Reported-by: Naresh Kamboju <naresh.kamboju(a)linaro.org>
Link: https://lore.kernel.org/all/CA+G9fYt9T=ELCLaB9byxaLW2Qf4pZcDO=huCA0D8ug2V2+…
Suggested-by: Nathan Chancellor <nathan(a)kernel.org>
Signed-off-by: Conor Dooley <conor.dooley(a)microchip.com>
---
arch/riscv/Kconfig | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index 4eb0ef8314b3..c6902f4c5650 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -291,8 +291,7 @@ endchoice
config TOOLCHAIN_NEEDS_SPEC_20191213
bool
default y
- depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64ima_zicsr_zifencei)
- depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32ima_zicsr_zifencei)
+ depends on AS_IS_GNU && AS_VERSION >= 23800
help
Newer binutils versions default to ISA spec version 20191213 which
moves some instructions from the I extension to the Zicsr and Zifencei
--
2.39.1
From: Jimmy Hu <hhhuuu(a)google.com>
When the host controller is not responding, all URBs queued to all
endpoints need to be killed. This can cause a kernel panic if we
dereference an invalid endpoint.
Fix this by using xhci_get_virt_ep() helper to find the endpoint and
checking if the endpoint is valid before dereferencing it.
[233311.853271] xhci-hcd xhci-hcd.1.auto: xHCI host controller not responding, assume dead
[233311.853393] Unable to handle kernel NULL pointer dereference at virtual address 00000000000000e8
[233311.853964] pc : xhci_hc_died+0x10c/0x270
[233311.853971] lr : xhci_hc_died+0x1ac/0x270
[233311.854077] Call trace:
[233311.854085] xhci_hc_died+0x10c/0x270
[233311.854093] xhci_stop_endpoint_command_watchdog+0x100/0x1a4
[233311.854105] call_timer_fn+0x50/0x2d4
[233311.854112] expire_timers+0xac/0x2e4
[233311.854118] run_timer_softirq+0x300/0xabc
[233311.854127] __do_softirq+0x148/0x528
[233311.854135] irq_exit+0x194/0x1a8
[233311.854143] __handle_domain_irq+0x164/0x1d0
[233311.854149] gic_handle_irq.22273+0x10c/0x188
[233311.854156] el1_irq+0xfc/0x1a8
[233311.854175] lpm_cpuidle_enter+0x25c/0x418 [msm_pm]
[233311.854185] cpuidle_enter_state+0x1f0/0x764
[233311.854194] do_idle+0x594/0x6ac
[233311.854201] cpu_startup_entry+0x7c/0x80
[233311.854209] secondary_start_kernel+0x170/0x198
Fixes: 50e8725e7c42 ("xhci: Refactor command watchdog and fix split string.")
Cc: stable(a)vger.kernel.org
Signed-off-by: Jimmy Hu <hhhuuu(a)google.com>
Signed-off-by: Mathias Nyman <mathias.nyman(a)linux.intel.com>
---
drivers/usb/host/xhci-ring.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c
index ddc30037f9ce..f5b0e1ce22af 100644
--- a/drivers/usb/host/xhci-ring.c
+++ b/drivers/usb/host/xhci-ring.c
@@ -1169,7 +1169,10 @@ static void xhci_kill_endpoint_urbs(struct xhci_hcd *xhci,
struct xhci_virt_ep *ep;
struct xhci_ring *ring;
- ep = &xhci->devs[slot_id]->eps[ep_index];
+ ep = xhci_get_virt_ep(xhci, slot_id, ep_index);
+ if (!ep)
+ return;
+
if ((ep->ep_state & EP_HAS_STREAMS) ||
(ep->ep_state & EP_GETTING_NO_STREAMS)) {
int stream_id;
--
2.25.1