Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package kernel-source for openSUSE:Factory checked in at 2022-10-14 15:40:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kernel-source (Old) and /work/SRC/openSUSE:Factory/.kernel-source.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kernel-source" Fri Oct 14 15:40:30 2022 rev:660 rq:1010167 version:6.0.1 Changes: -------- --- /work/SRC/openSUSE:Factory/kernel-source/dtb-aarch64.changes 2022-10-06 07:41:15.624561251 +0200 +++ /work/SRC/openSUSE:Factory/.kernel-source.new.2275/dtb-aarch64.changes 2022-10-14 15:41:08.811778891 +0200 @@ -1,0 +2,69 @@ +Wed Oct 12 11:01:11 CEST 2022 - jsl...@suse.cz + +- Linux 6.0.1 (bsc#1012628). +- xsk: Inherit need_wakeup flag for shared sockets (bsc#1012628). +- fs: fix UAF/GPF bug in nilfs_mdt_destroy (bsc#1012628). +- sparc: Unbreak the build (bsc#1012628). +- Makefile.extrawarn: Move -Wcast-function-type-strict to W=1 + (bsc#1012628). +- hardening: Remove Clang's enable flag for + -ftrivial-auto-var-init=zero (bsc#1012628). +- docs: update mediator information in CoC docs (bsc#1012628). +- hwmon: (aquacomputer_d5next) Fix Quadro fan speed offsets + (bsc#1012628). +- usb: mon: make mmapped memory read only (bsc#1012628). +- USB: serial: ftdi_sio: fix 300 bps rate for SIO (bsc#1012628). +- gpiolib: acpi: Add support to ignore programming an interrupt + (bsc#1012628). +- gpiolib: acpi: Add a quirk for Asus UM325UAZ (bsc#1012628). +- RISC-V: Print SSTC in canonical order (bsc#1012628). +- bpf: Gate dynptr API behind CAP_BPF (bsc#1012628). +- net: ethernet: mtk_eth_soc: fix state in __mtk_foe_entry_clear + (bsc#1012628). +- bpf: Fix resetting logic for unreferenced kptrs (bsc#1012628). +- Bluetooth: use hdev->workqueue when queuing + hdev->{cmd,ncmd}_timer works (bsc#1012628). +- Update config files. +- commit 0c45fd2 + +------------------------------------------------------------------- +Mon Oct 10 18:22:26 CEST 2022 - ti...@suse.de + +- misc: sgi-gru: fix use-after-free error in + gru_set_context_option, gru_fault and gru_handle_user_call_os + (CVE-2022-3424 bsc#1204166). +- commit cf55d04 + +------------------------------------------------------------------- +Fri Oct 7 15:34:48 CEST 2022 - mkube...@suse.cz + +- series.conf: cleanup +- move upstreamed patches to sorted section: + - patches.suse/ALSA-hda-realtek-Add-quirk-for-HP-Zbook-Firefly-14-G.patch + - patches.suse/ALSA-hda-realtek-More-robust-component-matching-for-.patch +- commit e926c4b + +------------------------------------------------------------------- +Thu Oct 6 11:15:09 CEST 2022 - jsl...@suse.cz + +- fix coredump breakage (coredump fix). +- commit 97b0626 + +------------------------------------------------------------------- +Wed Oct 5 10:06:49 CEST 2022 - msucha...@suse.de + +- Revert "constraints: increase disk space for all architectures" + (bsc#1203693). + This reverts commit 43a9011f904bc7328d38dc340f5e71aecb6b19ca. +- commit 3d33373 + +------------------------------------------------------------------- +Tue Oct 4 17:56:34 CEST 2022 - ti...@suse.de + +- ALSA: hda/realtek: More robust component matching for CS35L41 + (bsc#1203699). +- ALSA: hda/realtek: Add quirk for HP Zbook Firefly 14 G9 model + (bsc#1203699). +- commit 25aa080 + +------------------------------------------------------------------- dtb-armv6l.changes: same change dtb-armv7l.changes: same change dtb-riscv64.changes: same change kernel-64kb.changes: same change kernel-debug.changes: same change kernel-default.changes: same change kernel-docs.changes: same change kernel-kvmsmall.changes: same change kernel-lpae.changes: same change kernel-obs-build.changes: same change kernel-obs-qa.changes: same change kernel-pae.changes: same change kernel-source.changes: same change kernel-syms.changes: same change kernel-vanilla.changes: same change kernel-zfcpdump.changes: same change ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dtb-aarch64.spec ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.111786071 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.115786077 +0200 @@ -17,7 +17,7 @@ %define srcversion 6.0 -%define patchversion 6.0.0 +%define patchversion 6.0.1 %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -29,9 +29,9 @@ %(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build}) Name: dtb-aarch64 -Version: 6.0.0 +Version: 6.0.1 %if 0%{?is_kotd} -Release: <RELEASE>.g47c5c19 +Release: <RELEASE>.g94ab0ef %else Release: 0 %endif dtb-armv6l.spec: same change dtb-armv7l.spec: same change dtb-riscv64.spec: same change ++++++ kernel-64kb.spec ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.255786311 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.259786318 +0200 @@ -18,7 +18,7 @@ %define srcversion 6.0 -%define patchversion 6.0.0 +%define patchversion 6.0.1 %define variant %{nil} %define vanilla_only 0 %define compress_modules zstd @@ -110,9 +110,9 @@ Summary: Kernel with 64kb PAGE_SIZE License: GPL-2.0-only Group: System/Kernel -Version: 6.0.0 +Version: 6.0.1 %if 0%{?is_kotd} -Release: <RELEASE>.g47c5c19 +Release: <RELEASE>.g94ab0ef %else Release: 0 %endif @@ -239,10 +239,10 @@ Conflicts: libc.so.6()(64bit) %endif Provides: kernel = %version-%source_rel -Provides: kernel-%build_flavor-base-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 -Provides: kernel-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: kernel-%build_flavor-base-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 +Provides: kernel-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 # END COMMON DEPS -Provides: %name-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: %name-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 %obsolete_rebuilds %name Source0: https://www.kernel.org/pub/linux/kernel/v6.x/linux-%srcversion.tar.xz Source3: kernel-source.rpmlintrc ++++++ kernel-debug.spec ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.287786365 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.291786371 +0200 @@ -18,7 +18,7 @@ %define srcversion 6.0 -%define patchversion 6.0.0 +%define patchversion 6.0.1 %define variant %{nil} %define vanilla_only 0 %define compress_modules zstd @@ -110,9 +110,9 @@ Summary: A Debug Version of the Kernel License: GPL-2.0-only Group: System/Kernel -Version: 6.0.0 +Version: 6.0.1 %if 0%{?is_kotd} -Release: <RELEASE>.g47c5c19 +Release: <RELEASE>.g94ab0ef %else Release: 0 %endif @@ -239,10 +239,10 @@ Conflicts: libc.so.6()(64bit) %endif Provides: kernel = %version-%source_rel -Provides: kernel-%build_flavor-base-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 -Provides: kernel-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: kernel-%build_flavor-base-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 +Provides: kernel-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 # END COMMON DEPS -Provides: %name-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: %name-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 %ifarch ppc64 Provides: kernel-kdump = 2.6.28 Obsoletes: kernel-kdump <= 2.6.28 ++++++ kernel-default.spec ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.323786425 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.327786432 +0200 @@ -18,7 +18,7 @@ %define srcversion 6.0 -%define patchversion 6.0.0 +%define patchversion 6.0.1 %define variant %{nil} %define vanilla_only 0 %define compress_modules zstd @@ -110,9 +110,9 @@ Summary: The Standard Kernel License: GPL-2.0-only Group: System/Kernel -Version: 6.0.0 +Version: 6.0.1 %if 0%{?is_kotd} -Release: <RELEASE>.g47c5c19 +Release: <RELEASE>.g94ab0ef %else Release: 0 %endif @@ -239,10 +239,10 @@ Conflicts: libc.so.6()(64bit) %endif Provides: kernel = %version-%source_rel -Provides: kernel-%build_flavor-base-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 -Provides: kernel-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: kernel-%build_flavor-base-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 +Provides: kernel-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 # END COMMON DEPS -Provides: %name-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: %name-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 %ifarch %ix86 Provides: kernel-smp = 2.6.17 Obsoletes: kernel-smp <= 2.6.17 ++++++ kernel-docs.spec ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.355786478 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.363786492 +0200 @@ -17,7 +17,7 @@ %define srcversion 6.0 -%define patchversion 6.0.0 +%define patchversion 6.0.1 %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -31,9 +31,9 @@ Summary: Kernel Documentation License: GPL-2.0-only Group: Documentation/Man -Version: 6.0.0 +Version: 6.0.1 %if 0%{?is_kotd} -Release: <RELEASE>.g47c5c19 +Release: <RELEASE>.g94ab0ef %else Release: 0 %endif @@ -67,7 +67,7 @@ %endif URL: https://www.kernel.org/ Provides: %name = %version-%source_rel -Provides: %name-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: %name-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build Source0: https://www.kernel.org/pub/linux/kernel/v6.x/linux-%srcversion.tar.xz ++++++ kernel-kvmsmall.spec ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.391786539 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.395786545 +0200 @@ -18,7 +18,7 @@ %define srcversion 6.0 -%define patchversion 6.0.0 +%define patchversion 6.0.1 %define variant %{nil} %define vanilla_only 0 %define compress_modules zstd @@ -110,9 +110,9 @@ Summary: The Small Developer Kernel for KVM License: GPL-2.0-only Group: System/Kernel -Version: 6.0.0 +Version: 6.0.1 %if 0%{?is_kotd} -Release: <RELEASE>.g47c5c19 +Release: <RELEASE>.g94ab0ef %else Release: 0 %endif @@ -239,10 +239,10 @@ Conflicts: libc.so.6()(64bit) %endif Provides: kernel = %version-%source_rel -Provides: kernel-%build_flavor-base-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 -Provides: kernel-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: kernel-%build_flavor-base-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 +Provides: kernel-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 # END COMMON DEPS -Provides: %name-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: %name-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 %obsolete_rebuilds %name Source0: https://www.kernel.org/pub/linux/kernel/v6.x/linux-%srcversion.tar.xz Source3: kernel-source.rpmlintrc kernel-lpae.spec: same change ++++++ kernel-obs-build.spec ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.451786639 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.455786645 +0200 @@ -19,7 +19,7 @@ #!BuildIgnore: post-build-checks -%define patchversion 6.0.0 +%define patchversion 6.0.1 %define variant %{nil} %define vanilla_only 0 @@ -45,7 +45,7 @@ %endif %endif %endif -BuildRequires: kernel%kernel_flavor-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +BuildRequires: kernel%kernel_flavor-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 %if 0%{?rhel_version} BuildRequires: kernel @@ -64,9 +64,9 @@ Summary: package kernel and initrd for OBS VM builds License: GPL-2.0-only Group: SLES -Version: 6.0.0 +Version: 6.0.1 %if 0%{?is_kotd} -Release: <RELEASE>.g47c5c19 +Release: <RELEASE>.g94ab0ef %else Release: 0 %endif ++++++ kernel-obs-qa.spec ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.491786705 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.499786719 +0200 @@ -17,7 +17,7 @@ # needsrootforbuild -%define patchversion 6.0.0 +%define patchversion 6.0.1 %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -36,9 +36,9 @@ Summary: Basic QA tests for the kernel License: GPL-2.0-only Group: SLES -Version: 6.0.0 +Version: 6.0.1 %if 0%{?is_kotd} -Release: <RELEASE>.g47c5c19 +Release: <RELEASE>.g94ab0ef %else Release: 0 %endif ++++++ kernel-pae.spec ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.523786759 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.527786766 +0200 @@ -18,7 +18,7 @@ %define srcversion 6.0 -%define patchversion 6.0.0 +%define patchversion 6.0.1 %define variant %{nil} %define vanilla_only 0 %define compress_modules zstd @@ -110,9 +110,9 @@ Summary: Kernel with PAE Support License: GPL-2.0-only Group: System/Kernel -Version: 6.0.0 +Version: 6.0.1 %if 0%{?is_kotd} -Release: <RELEASE>.g47c5c19 +Release: <RELEASE>.g94ab0ef %else Release: 0 %endif @@ -239,10 +239,10 @@ Conflicts: libc.so.6()(64bit) %endif Provides: kernel = %version-%source_rel -Provides: kernel-%build_flavor-base-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 -Provides: kernel-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: kernel-%build_flavor-base-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 +Provides: kernel-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 # END COMMON DEPS -Provides: %name-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: %name-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 %ifarch %ix86 Provides: kernel-bigsmp = 2.6.17 Obsoletes: kernel-bigsmp <= 2.6.17 ++++++ kernel-source.spec ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.555786812 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.563786826 +0200 @@ -17,7 +17,7 @@ %define srcversion 6.0 -%define patchversion 6.0.0 +%define patchversion 6.0.1 %define variant %{nil} %define vanilla_only 0 @@ -31,9 +31,9 @@ %endif Name: kernel-source -Version: 6.0.0 +Version: 6.0.1 %if 0%{?is_kotd} -Release: <RELEASE>.g47c5c19 +Release: <RELEASE>.g94ab0ef %else Release: 0 %endif @@ -50,7 +50,7 @@ BuildRequires: sed Requires(post): coreutils sed Provides: %name = %version-%source_rel -Provides: %name-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: %name-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 Provides: linux Provides: multiversion(kernel) Source0: https://www.kernel.org/pub/linux/kernel/v6.x/linux-%srcversion.tar.xz ++++++ kernel-syms.spec ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.591786872 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.595786879 +0200 @@ -24,10 +24,10 @@ Summary: Kernel Symbol Versions (modversions) License: GPL-2.0-only Group: Development/Sources -Version: 6.0.0 +Version: 6.0.1 %if %using_buildservice %if 0%{?is_kotd} -Release: <RELEASE>.g47c5c19 +Release: <RELEASE>.g94ab0ef %else Release: 0 %endif @@ -52,7 +52,7 @@ %endif Requires: pesign-obs-integration Provides: %name = %version-%source_rel -Provides: %name-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: %name-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 Provides: multiversion(kernel) Source: README.KSYMS Requires: kernel-devel%variant = %version-%source_rel ++++++ kernel-vanilla.spec ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.623786926 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.631786939 +0200 @@ -18,7 +18,7 @@ %define srcversion 6.0 -%define patchversion 6.0.0 +%define patchversion 6.0.1 %define variant %{nil} %define vanilla_only 0 %define compress_modules zstd @@ -110,9 +110,9 @@ Summary: The Standard Kernel - without any SUSE patches License: GPL-2.0-only Group: System/Kernel -Version: 6.0.0 +Version: 6.0.1 %if 0%{?is_kotd} -Release: <RELEASE>.g47c5c19 +Release: <RELEASE>.g94ab0ef %else Release: 0 %endif @@ -239,10 +239,10 @@ Conflicts: libc.so.6()(64bit) %endif Provides: kernel = %version-%source_rel -Provides: kernel-%build_flavor-base-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 -Provides: kernel-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: kernel-%build_flavor-base-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 +Provides: kernel-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 # END COMMON DEPS -Provides: %name-srchash-47c5c190085ac244fbca316e6944df1bf3c64167 +Provides: %name-srchash-94ab0efe4974370734cc9b5717719c19eb4e2c26 %obsolete_rebuilds %name Source0: https://www.kernel.org/pub/linux/kernel/v6.x/linux-%srcversion.tar.xz Source3: kernel-source.rpmlintrc kernel-zfcpdump.spec: same change ++++++ _constraints ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:13.783787193 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:13.787787199 +0200 @@ -176,7 +176,7 @@ </hardware> </overwrite> - <!-- 50GB for binary packages on aarch64, riscv64 and x86--> + <!-- 45GB for binary packages on aarch64, riscv64 and x86--> <overwrite> <conditions> <arch>aarch64</arch> @@ -193,7 +193,7 @@ </conditions> <hardware> <disk> - <size unit="G">50</size> + <size unit="G">45</size> </disk> </hardware> </overwrite> ++++++ config.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/arm64/default new/config/arm64/default --- old/config/arm64/default 2022-10-02 23:47:05.000000000 +0200 +++ new/config/arm64/default 2022-10-12 11:01:11.000000000 +0200 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm64 6.0.0 Kernel Configuration +# Linux/arm64 6.0.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -12105,6 +12105,7 @@ # Memory initialization # CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y CONFIG_INIT_STACK_NONE=y # CONFIG_INIT_STACK_ALL_PATTERN is not set diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/armv6hl/default new/config/armv6hl/default --- old/config/armv6hl/default 2022-10-02 23:47:05.000000000 +0200 +++ new/config/armv6hl/default 2022-10-12 11:01:11.000000000 +0200 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 6.0.0 Kernel Configuration +# Linux/arm 6.0.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -8345,6 +8345,7 @@ # Memory initialization # CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y CONFIG_INIT_STACK_NONE=y # CONFIG_INIT_STACK_ALL_PATTERN is not set diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/armv7hl/default new/config/armv7hl/default --- old/config/armv7hl/default 2022-10-02 23:47:05.000000000 +0200 +++ new/config/armv7hl/default 2022-10-12 11:01:11.000000000 +0200 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 6.0.0 Kernel Configuration +# Linux/arm 6.0.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -11727,6 +11727,7 @@ # Memory initialization # CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y CONFIG_INIT_STACK_NONE=y # CONFIG_INIT_STACK_ALL_PATTERN is not set diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/i386/pae new/config/i386/pae --- old/config/i386/pae 2022-10-02 23:47:05.000000000 +0200 +++ new/config/i386/pae 2022-10-12 11:01:11.000000000 +0200 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/i386 6.0.0 Kernel Configuration +# Linux/i386 6.0.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -10271,6 +10271,7 @@ # Memory initialization # CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y CONFIG_INIT_STACK_NONE=y # CONFIG_INIT_STACK_ALL_PATTERN is not set diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/ppc64/default new/config/ppc64/default --- old/config/ppc64/default 2022-10-02 23:47:05.000000000 +0200 +++ new/config/ppc64/default 2022-10-12 11:01:11.000000000 +0200 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/powerpc 6.0.0 Kernel Configuration +# Linux/powerpc 6.0.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -8097,6 +8097,7 @@ # Memory initialization # CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y CONFIG_INIT_STACK_NONE=y # CONFIG_INIT_STACK_ALL_PATTERN is not set diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/ppc64le/default new/config/ppc64le/default --- old/config/ppc64le/default 2022-10-02 23:47:05.000000000 +0200 +++ new/config/ppc64le/default 2022-10-12 11:01:11.000000000 +0200 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/powerpc 6.0.0 Kernel Configuration +# Linux/powerpc 6.0.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -7946,6 +7946,7 @@ # Memory initialization # CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y CONFIG_INIT_STACK_NONE=y # CONFIG_INIT_STACK_ALL_PATTERN is not set diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/riscv64/default new/config/riscv64/default --- old/config/riscv64/default 2022-10-02 23:47:05.000000000 +0200 +++ new/config/riscv64/default 2022-10-12 11:01:11.000000000 +0200 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/riscv 6.0.0 Kernel Configuration +# Linux/riscv 6.0.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -9040,6 +9040,7 @@ # Memory initialization # CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y CONFIG_INIT_STACK_NONE=y # CONFIG_INIT_STACK_ALL_PATTERN is not set diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/s390x/default new/config/s390x/default --- old/config/s390x/default 2022-10-02 23:47:05.000000000 +0200 +++ new/config/s390x/default 2022-10-12 11:01:11.000000000 +0200 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/s390 6.0.0 Kernel Configuration +# Linux/s390 6.0.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -4036,6 +4036,7 @@ # Memory initialization # CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y CONFIG_INIT_STACK_NONE=y # CONFIG_INIT_STACK_ALL_PATTERN is not set diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/s390x/zfcpdump new/config/s390x/zfcpdump --- old/config/s390x/zfcpdump 2022-10-02 23:47:05.000000000 +0200 +++ new/config/s390x/zfcpdump 2022-10-12 11:01:11.000000000 +0200 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/s390 6.0.0 Kernel Configuration +# Linux/s390 6.0.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -1398,6 +1398,7 @@ # Memory initialization # CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y CONFIG_INIT_STACK_NONE=y # CONFIG_INIT_STACK_ALL_PATTERN is not set diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/x86_64/default new/config/x86_64/default --- old/config/x86_64/default 2022-10-02 23:47:05.000000000 +0200 +++ new/config/x86_64/default 2022-10-12 11:01:11.000000000 +0200 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86_64 6.0.0 Kernel Configuration +# Linux/x86_64 6.0.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -10219,6 +10219,7 @@ # Memory initialization # CONFIG_CC_HAS_AUTO_VAR_INIT_PATTERN=y +CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_BARE=y CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO=y CONFIG_INIT_STACK_NONE=y # CONFIG_INIT_STACK_ALL_PATTERN is not set ++++++ constraints.in ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:14.167787834 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:14.175787847 +0200 @@ -134,7 +134,7 @@ </hardware> </overwrite> - <!-- 50GB for binary packages on aarch64, riscv64 and x86--> + <!-- 45GB for binary packages on aarch64, riscv64 and x86--> <overwrite> <conditions> <arch>aarch64</arch> @@ -144,7 +144,7 @@ </conditions> <hardware> <disk> - <size unit="G">50</size> + <size unit="G">45</size> </disk> </hardware> </overwrite> ++++++ patches.kernel.org.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-001-xsk-Inherit-need_wakeup-flag-for-shared-sockets.patch new/patches.kernel.org/6.0.1-001-xsk-Inherit-need_wakeup-flag-for-shared-sockets.patch --- old/patches.kernel.org/6.0.1-001-xsk-Inherit-need_wakeup-flag-for-shared-sockets.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-001-xsk-Inherit-need_wakeup-flag-for-shared-sockets.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,83 @@ +From: Jalal Mostafa <jalal.a.mosta...@gmail.com> +Date: Wed, 21 Sep 2022 13:57:01 +0000 +Subject: [PATCH] xsk: Inherit need_wakeup flag for shared sockets +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: 60240bc26114543fcbfcd8a28466e67e77b20388 + +commit 60240bc26114543fcbfcd8a28466e67e77b20388 upstream. + +The flag for need_wakeup is not set for xsks with `XDP_SHARED_UMEM` +flag and of different queue ids and/or devices. They should inherit +the flag from the first socket buffer pool since no flags can be +specified once `XDP_SHARED_UMEM` is specified. + +Fixes: b5aea28dca134 ("xsk: Add shared umem support between queue ids") +Signed-off-by: Jalal Mostafa <jalal.a.mosta...@gmail.com> +Signed-off-by: Daniel Borkmann <dan...@iogearbox.net> +Acked-by: Magnus Karlsson <magnus.karls...@intel.com> +Link: https://lore.kernel.org/bpf/20220921135701.10199-1-jalal.a.mosta...@gmail.com +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + include/net/xsk_buff_pool.h | 2 +- + net/xdp/xsk.c | 4 ++-- + net/xdp/xsk_buff_pool.c | 5 +++-- + 3 files changed, 6 insertions(+), 5 deletions(-) + +diff --git a/include/net/xsk_buff_pool.h b/include/net/xsk_buff_pool.h +index 647722e847b4..f787c3f524b0 100644 +--- a/include/net/xsk_buff_pool.h ++++ b/include/net/xsk_buff_pool.h +@@ -95,7 +95,7 @@ struct xsk_buff_pool *xp_create_and_assign_umem(struct xdp_sock *xs, + struct xdp_umem *umem); + int xp_assign_dev(struct xsk_buff_pool *pool, struct net_device *dev, + u16 queue_id, u16 flags); +-int xp_assign_dev_shared(struct xsk_buff_pool *pool, struct xdp_umem *umem, ++int xp_assign_dev_shared(struct xsk_buff_pool *pool, struct xdp_sock *umem_xs, + struct net_device *dev, u16 queue_id); + int xp_alloc_tx_descs(struct xsk_buff_pool *pool, struct xdp_sock *xs); + void xp_destroy(struct xsk_buff_pool *pool); +diff --git a/net/xdp/xsk.c b/net/xdp/xsk.c +index 5b4ce6ba1bc7..7bada4e8460b 100644 +--- a/net/xdp/xsk.c ++++ b/net/xdp/xsk.c +@@ -954,8 +954,8 @@ static int xsk_bind(struct socket *sock, struct sockaddr *addr, int addr_len) + goto out_unlock; + } + +- err = xp_assign_dev_shared(xs->pool, umem_xs->umem, +- dev, qid); ++ err = xp_assign_dev_shared(xs->pool, umem_xs, dev, ++ qid); + if (err) { + xp_destroy(xs->pool); + xs->pool = NULL; +diff --git a/net/xdp/xsk_buff_pool.c b/net/xdp/xsk_buff_pool.c +index a71a8c6edf55..ed6c71826d31 100644 +--- a/net/xdp/xsk_buff_pool.c ++++ b/net/xdp/xsk_buff_pool.c +@@ -212,17 +212,18 @@ int xp_assign_dev(struct xsk_buff_pool *pool, + return err; + } + +-int xp_assign_dev_shared(struct xsk_buff_pool *pool, struct xdp_umem *umem, ++int xp_assign_dev_shared(struct xsk_buff_pool *pool, struct xdp_sock *umem_xs, + struct net_device *dev, u16 queue_id) + { + u16 flags; ++ struct xdp_umem *umem = umem_xs->umem; + + /* One fill and completion ring required for each queue id. */ + if (!pool->fq || !pool->cq) + return -EINVAL; + + flags = umem->zc ? XDP_ZEROCOPY : XDP_COPY; +- if (pool->uses_need_wakeup) ++ if (umem_xs->pool->uses_need_wakeup) + flags |= XDP_USE_NEED_WAKEUP; + + return xp_assign_dev(pool, dev, queue_id, flags); +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-002-fs-fix-UAF-GPF-bug-in-nilfs_mdt_destroy.patch new/patches.kernel.org/6.0.1-002-fs-fix-UAF-GPF-bug-in-nilfs_mdt_destroy.patch --- old/patches.kernel.org/6.0.1-002-fs-fix-UAF-GPF-bug-in-nilfs_mdt_destroy.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-002-fs-fix-UAF-GPF-bug-in-nilfs_mdt_destroy.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,68 @@ +From: Dongliang Mu <mudonglianga...@gmail.com> +Date: Tue, 16 Aug 2022 12:08:58 +0800 +Subject: [PATCH] fs: fix UAF/GPF bug in nilfs_mdt_destroy +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: 2e488f13755ffbb60f307e991b27024716a33b29 + +commit 2e488f13755ffbb60f307e991b27024716a33b29 upstream. + +In alloc_inode, inode_init_always() could return -ENOMEM if +security_inode_alloc() fails, which causes inode->i_private +uninitialized. Then nilfs_is_metadata_file_inode() returns +true and nilfs_free_inode() wrongly calls nilfs_mdt_destroy(), +which frees the uninitialized inode->i_private +and leads to crashes(e.g., UAF/GPF). + +Fix this by moving security_inode_alloc just prior to +this_cpu_inc(nr_inodes) + +Link:??https://lkml.kernel.org/r/CAFcO6XOcf1Jj2SeGt=jjv59wmheseskpfr0omdfrq+j9nd1...@mail.gmail.com +Reported-by: butt3rflyh4ck <butterflyhuan...@gmail.com> +Reported-by: Hao Sun <sunhao...@gmail.com> +Reported-by: Jiacheng Xu <sti...@zju.edu.cn> +Reviewed-by: Christian Brauner (Microsoft) <brau...@kernel.org> +Signed-off-by: Dongliang Mu <mudonglianga...@gmail.com> +Cc: Al Viro <v...@zeniv.linux.org.uk> +Cc: sta...@vger.kernel.org +Signed-off-by: Al Viro <v...@zeniv.linux.org.uk> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + fs/inode.c | 7 +++---- + 1 file changed, 3 insertions(+), 4 deletions(-) + +diff --git a/fs/inode.c b/fs/inode.c +index ba1de23c13c1..b608528efd3a 100644 +--- a/fs/inode.c ++++ b/fs/inode.c +@@ -192,8 +192,6 @@ int inode_init_always(struct super_block *sb, struct inode *inode) + inode->i_wb_frn_history = 0; + #endif + +- if (security_inode_alloc(inode)) +- goto out; + spin_lock_init(&inode->i_lock); + lockdep_set_class(&inode->i_lock, &sb->s_type->i_lock_key); + +@@ -228,11 +226,12 @@ int inode_init_always(struct super_block *sb, struct inode *inode) + inode->i_fsnotify_mask = 0; + #endif + inode->i_flctx = NULL; ++ ++ if (unlikely(security_inode_alloc(inode))) ++ return -ENOMEM; + this_cpu_inc(nr_inodes); + + return 0; +-out: +- return -ENOMEM; + } + EXPORT_SYMBOL(inode_init_always); + +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-003-fix-coredump-breakage.patch new/patches.kernel.org/6.0.1-003-fix-coredump-breakage.patch --- old/patches.kernel.org/6.0.1-003-fix-coredump-breakage.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-003-fix-coredump-breakage.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,54 @@ +From: Al Viro <v...@zeniv.linux.org.uk> +Date: Mon, 3 Oct 2022 20:26:08 -0400 +Subject: [PATCH] fix coredump breakage +Patch-mainline: 6.0.1 +References: bsc#1012628 coredump fix +Git-commit: 4f526fef91b24197d489ff86789744c67f475bb4 + +commit 4f526fef91b24197d489ff86789744c67f475bb4 upstream. + +Let me count the ways in which I'd screwed up: + +* when emitting a page, handling of gaps in coredump should happen +before fetching the current file position. +* fix for a problem that occurs on rather uncommon setups (and hadn't +been observed in the wild) had been sent very late in the cycle. +* ... with badly insufficient testing, introducing an easily +reproducible breakage. Without giving it time to soak in -next. + +Fucked-up-by: Al Viro <v...@zeniv.linux.org.uk> +Reported-by: "J. R. Okajima" <hooanon...@gmail.com> +Tested-by: "J. R. Okajima" <hooanon...@gmail.com> +Fixes: 06bbaa6dc53c "[coredump] don't use __kernel_write() on kmap_local_page()" +Cc: sta...@kernel.org # v6.0-only +Signed-off-by: Al Viro <v...@zeniv.linux.org.uk> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + fs/coredump.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/fs/coredump.c b/fs/coredump.c +index 1ab4f5b76a1e..3538f3a63965 100644 +--- a/fs/coredump.c ++++ b/fs/coredump.c +@@ -841,7 +841,7 @@ static int dump_emit_page(struct coredump_params *cprm, struct page *page) + }; + struct iov_iter iter; + struct file *file = cprm->file; +- loff_t pos = file->f_pos; ++ loff_t pos; + ssize_t n; + + if (cprm->to_skip) { +@@ -853,6 +853,7 @@ static int dump_emit_page(struct coredump_params *cprm, struct page *page) + return 0; + if (dump_interrupted()) + return 0; ++ pos = file->f_pos; + iov_iter_bvec(&iter, WRITE, &bvec, 1, PAGE_SIZE); + n = __kernel_write_iter(cprm->file, &iter, &pos); + if (n != PAGE_SIZE) +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-004-sparc-Unbreak-the-build.patch new/patches.kernel.org/6.0.1-004-sparc-Unbreak-the-build.patch --- old/patches.kernel.org/6.0.1-004-sparc-Unbreak-the-build.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-004-sparc-Unbreak-the-build.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,340 @@ +From: Bart Van Assche <bvanass...@acm.org> +Date: Tue, 30 Aug 2022 13:58:42 -0700 +Subject: [PATCH] sparc: Unbreak the build +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: 17006e86a7641fa3c50324cfb602f0e74dac8527 + +commit 17006e86a7641fa3c50324cfb602f0e74dac8527 upstream. + +Fix the following build errors: + +arch/sparc/mm/srmmu.c: In function ???smp_flush_page_for_dma???: +arch/sparc/mm/srmmu.c:1639:13: error: cast between incompatible function types from ???void (*)(long unsigned int)??? to ???void (*)(long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int)??? [-Werror=cast-function-type] + 1639 | xc1((smpfunc_t) local_ops->page_for_dma, page); + | ^ +arch/sparc/mm/srmmu.c: In function ???smp_flush_cache_mm???: +arch/sparc/mm/srmmu.c:1662:29: error: cast between incompatible function types from ???void (*)(struct mm_struct *)??? to ???void (*)(long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int)??? [-Werror=cast-function-type] + 1662 | xc1((smpfunc_t) local_ops->cache_mm, (unsigned long) mm); + | +[ ... ] + +Compile-tested only. + +Fixes: 552a23a0e5d0 ("Makefile: Enable -Wcast-function-type") +Cc: sta...@vger.kernel.org +Signed-off-by: Bart Van Assche <bvanass...@acm.org> +Tested-by: Andreas Larsson <andr...@gaisler.com> +Signed-off-by: Kees Cook <keesc...@chromium.org> +Link: https://lore.kernel.org/r/20220830205854.1918026-1-bvanass...@acm.org +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + arch/sparc/include/asm/smp_32.h | 15 ++++++--------- + arch/sparc/kernel/leon_smp.c | 12 +++++++----- + arch/sparc/kernel/sun4d_smp.c | 12 +++++++----- + arch/sparc/kernel/sun4m_smp.c | 10 ++++++---- + arch/sparc/mm/srmmu.c | 29 +++++++++++++---------------- + 5 files changed, 39 insertions(+), 39 deletions(-) + +diff --git a/arch/sparc/include/asm/smp_32.h b/arch/sparc/include/asm/smp_32.h +index 856081761b0f..2cf7971d7f6c 100644 +--- a/arch/sparc/include/asm/smp_32.h ++++ b/arch/sparc/include/asm/smp_32.h +@@ -33,9 +33,6 @@ extern volatile unsigned long cpu_callin_map[NR_CPUS]; + extern cpumask_t smp_commenced_mask; + extern struct linux_prom_registers smp_penguin_ctable; + +-typedef void (*smpfunc_t)(unsigned long, unsigned long, unsigned long, +- unsigned long, unsigned long); +- + void cpu_panic(void); + + /* +@@ -57,7 +54,7 @@ void smp_bogo(struct seq_file *); + void smp_info(struct seq_file *); + + struct sparc32_ipi_ops { +- void (*cross_call)(smpfunc_t func, cpumask_t mask, unsigned long arg1, ++ void (*cross_call)(void *func, cpumask_t mask, unsigned long arg1, + unsigned long arg2, unsigned long arg3, + unsigned long arg4); + void (*resched)(int cpu); +@@ -66,28 +63,28 @@ struct sparc32_ipi_ops { + }; + extern const struct sparc32_ipi_ops *sparc32_ipi_ops; + +-static inline void xc0(smpfunc_t func) ++static inline void xc0(void *func) + { + sparc32_ipi_ops->cross_call(func, *cpu_online_mask, 0, 0, 0, 0); + } + +-static inline void xc1(smpfunc_t func, unsigned long arg1) ++static inline void xc1(void *func, unsigned long arg1) + { + sparc32_ipi_ops->cross_call(func, *cpu_online_mask, arg1, 0, 0, 0); + } +-static inline void xc2(smpfunc_t func, unsigned long arg1, unsigned long arg2) ++static inline void xc2(void *func, unsigned long arg1, unsigned long arg2) + { + sparc32_ipi_ops->cross_call(func, *cpu_online_mask, arg1, arg2, 0, 0); + } + +-static inline void xc3(smpfunc_t func, unsigned long arg1, unsigned long arg2, ++static inline void xc3(void *func, unsigned long arg1, unsigned long arg2, + unsigned long arg3) + { + sparc32_ipi_ops->cross_call(func, *cpu_online_mask, + arg1, arg2, arg3, 0); + } + +-static inline void xc4(smpfunc_t func, unsigned long arg1, unsigned long arg2, ++static inline void xc4(void *func, unsigned long arg1, unsigned long arg2, + unsigned long arg3, unsigned long arg4) + { + sparc32_ipi_ops->cross_call(func, *cpu_online_mask, +diff --git a/arch/sparc/kernel/leon_smp.c b/arch/sparc/kernel/leon_smp.c +index 1eed26d423fb..991e9ad3d3e8 100644 +--- a/arch/sparc/kernel/leon_smp.c ++++ b/arch/sparc/kernel/leon_smp.c +@@ -359,7 +359,7 @@ void leonsmp_ipi_interrupt(void) + } + + static struct smp_funcall { +- smpfunc_t func; ++ void *func; + unsigned long arg1; + unsigned long arg2; + unsigned long arg3; +@@ -372,7 +372,7 @@ static struct smp_funcall { + static DEFINE_SPINLOCK(cross_call_lock); + + /* Cross calls must be serialized, at least currently. */ +-static void leon_cross_call(smpfunc_t func, cpumask_t mask, unsigned long arg1, ++static void leon_cross_call(void *func, cpumask_t mask, unsigned long arg1, + unsigned long arg2, unsigned long arg3, + unsigned long arg4) + { +@@ -384,7 +384,7 @@ static void leon_cross_call(smpfunc_t func, cpumask_t mask, unsigned long arg1, + + { + /* If you make changes here, make sure gcc generates proper code... */ +- register smpfunc_t f asm("i0") = func; ++ register void *f asm("i0") = func; + register unsigned long a1 asm("i1") = arg1; + register unsigned long a2 asm("i2") = arg2; + register unsigned long a3 asm("i3") = arg3; +@@ -444,11 +444,13 @@ static void leon_cross_call(smpfunc_t func, cpumask_t mask, unsigned long arg1, + /* Running cross calls. */ + void leon_cross_call_irq(void) + { ++ void (*func)(unsigned long, unsigned long, unsigned long, unsigned long, ++ unsigned long) = ccall_info.func; + int i = smp_processor_id(); + + ccall_info.processors_in[i] = 1; +- ccall_info.func(ccall_info.arg1, ccall_info.arg2, ccall_info.arg3, +- ccall_info.arg4, ccall_info.arg5); ++ func(ccall_info.arg1, ccall_info.arg2, ccall_info.arg3, ccall_info.arg4, ++ ccall_info.arg5); + ccall_info.processors_out[i] = 1; + } + +diff --git a/arch/sparc/kernel/sun4d_smp.c b/arch/sparc/kernel/sun4d_smp.c +index ff30f03beb7c..9a62a5cf3337 100644 +--- a/arch/sparc/kernel/sun4d_smp.c ++++ b/arch/sparc/kernel/sun4d_smp.c +@@ -268,7 +268,7 @@ static void sun4d_ipi_resched(int cpu) + } + + static struct smp_funcall { +- smpfunc_t func; ++ void *func; + unsigned long arg1; + unsigned long arg2; + unsigned long arg3; +@@ -281,7 +281,7 @@ static struct smp_funcall { + static DEFINE_SPINLOCK(cross_call_lock); + + /* Cross calls must be serialized, at least currently. */ +-static void sun4d_cross_call(smpfunc_t func, cpumask_t mask, unsigned long arg1, ++static void sun4d_cross_call(void *func, cpumask_t mask, unsigned long arg1, + unsigned long arg2, unsigned long arg3, + unsigned long arg4) + { +@@ -296,7 +296,7 @@ static void sun4d_cross_call(smpfunc_t func, cpumask_t mask, unsigned long arg1, + * If you make changes here, make sure + * gcc generates proper code... + */ +- register smpfunc_t f asm("i0") = func; ++ register void *f asm("i0") = func; + register unsigned long a1 asm("i1") = arg1; + register unsigned long a2 asm("i2") = arg2; + register unsigned long a3 asm("i3") = arg3; +@@ -353,11 +353,13 @@ static void sun4d_cross_call(smpfunc_t func, cpumask_t mask, unsigned long arg1, + /* Running cross calls. */ + void smp4d_cross_call_irq(void) + { ++ void (*func)(unsigned long, unsigned long, unsigned long, unsigned long, ++ unsigned long) = ccall_info.func; + int i = hard_smp_processor_id(); + + ccall_info.processors_in[i] = 1; +- ccall_info.func(ccall_info.arg1, ccall_info.arg2, ccall_info.arg3, +- ccall_info.arg4, ccall_info.arg5); ++ func(ccall_info.arg1, ccall_info.arg2, ccall_info.arg3, ccall_info.arg4, ++ ccall_info.arg5); + ccall_info.processors_out[i] = 1; + } + +diff --git a/arch/sparc/kernel/sun4m_smp.c b/arch/sparc/kernel/sun4m_smp.c +index 228a6527082d..056df034e79e 100644 +--- a/arch/sparc/kernel/sun4m_smp.c ++++ b/arch/sparc/kernel/sun4m_smp.c +@@ -157,7 +157,7 @@ static void sun4m_ipi_mask_one(int cpu) + } + + static struct smp_funcall { +- smpfunc_t func; ++ void *func; + unsigned long arg1; + unsigned long arg2; + unsigned long arg3; +@@ -170,7 +170,7 @@ static struct smp_funcall { + static DEFINE_SPINLOCK(cross_call_lock); + + /* Cross calls must be serialized, at least currently. */ +-static void sun4m_cross_call(smpfunc_t func, cpumask_t mask, unsigned long arg1, ++static void sun4m_cross_call(void *func, cpumask_t mask, unsigned long arg1, + unsigned long arg2, unsigned long arg3, + unsigned long arg4) + { +@@ -230,11 +230,13 @@ static void sun4m_cross_call(smpfunc_t func, cpumask_t mask, unsigned long arg1, + /* Running cross calls. */ + void smp4m_cross_call_irq(void) + { ++ void (*func)(unsigned long, unsigned long, unsigned long, unsigned long, ++ unsigned long) = ccall_info.func; + int i = smp_processor_id(); + + ccall_info.processors_in[i] = 1; +- ccall_info.func(ccall_info.arg1, ccall_info.arg2, ccall_info.arg3, +- ccall_info.arg4, ccall_info.arg5); ++ func(ccall_info.arg1, ccall_info.arg2, ccall_info.arg3, ccall_info.arg4, ++ ccall_info.arg5); + ccall_info.processors_out[i] = 1; + } + +diff --git a/arch/sparc/mm/srmmu.c b/arch/sparc/mm/srmmu.c +index a9aa6a92c7fe..13f027afc875 100644 +--- a/arch/sparc/mm/srmmu.c ++++ b/arch/sparc/mm/srmmu.c +@@ -1636,19 +1636,19 @@ static void __init get_srmmu_type(void) + /* Local cross-calls. */ + static void smp_flush_page_for_dma(unsigned long page) + { +- xc1((smpfunc_t) local_ops->page_for_dma, page); ++ xc1(local_ops->page_for_dma, page); + local_ops->page_for_dma(page); + } + + static void smp_flush_cache_all(void) + { +- xc0((smpfunc_t) local_ops->cache_all); ++ xc0(local_ops->cache_all); + local_ops->cache_all(); + } + + static void smp_flush_tlb_all(void) + { +- xc0((smpfunc_t) local_ops->tlb_all); ++ xc0(local_ops->tlb_all); + local_ops->tlb_all(); + } + +@@ -1659,7 +1659,7 @@ static void smp_flush_cache_mm(struct mm_struct *mm) + cpumask_copy(&cpu_mask, mm_cpumask(mm)); + cpumask_clear_cpu(smp_processor_id(), &cpu_mask); + if (!cpumask_empty(&cpu_mask)) +- xc1((smpfunc_t) local_ops->cache_mm, (unsigned long) mm); ++ xc1(local_ops->cache_mm, (unsigned long)mm); + local_ops->cache_mm(mm); + } + } +@@ -1671,7 +1671,7 @@ static void smp_flush_tlb_mm(struct mm_struct *mm) + cpumask_copy(&cpu_mask, mm_cpumask(mm)); + cpumask_clear_cpu(smp_processor_id(), &cpu_mask); + if (!cpumask_empty(&cpu_mask)) { +- xc1((smpfunc_t) local_ops->tlb_mm, (unsigned long) mm); ++ xc1(local_ops->tlb_mm, (unsigned long)mm); + if (atomic_read(&mm->mm_users) == 1 && current->active_mm == mm) + cpumask_copy(mm_cpumask(mm), + cpumask_of(smp_processor_id())); +@@ -1691,8 +1691,8 @@ static void smp_flush_cache_range(struct vm_area_struct *vma, + cpumask_copy(&cpu_mask, mm_cpumask(mm)); + cpumask_clear_cpu(smp_processor_id(), &cpu_mask); + if (!cpumask_empty(&cpu_mask)) +- xc3((smpfunc_t) local_ops->cache_range, +- (unsigned long) vma, start, end); ++ xc3(local_ops->cache_range, (unsigned long)vma, start, ++ end); + local_ops->cache_range(vma, start, end); + } + } +@@ -1708,8 +1708,8 @@ static void smp_flush_tlb_range(struct vm_area_struct *vma, + cpumask_copy(&cpu_mask, mm_cpumask(mm)); + cpumask_clear_cpu(smp_processor_id(), &cpu_mask); + if (!cpumask_empty(&cpu_mask)) +- xc3((smpfunc_t) local_ops->tlb_range, +- (unsigned long) vma, start, end); ++ xc3(local_ops->tlb_range, (unsigned long)vma, start, ++ end); + local_ops->tlb_range(vma, start, end); + } + } +@@ -1723,8 +1723,7 @@ static void smp_flush_cache_page(struct vm_area_struct *vma, unsigned long page) + cpumask_copy(&cpu_mask, mm_cpumask(mm)); + cpumask_clear_cpu(smp_processor_id(), &cpu_mask); + if (!cpumask_empty(&cpu_mask)) +- xc2((smpfunc_t) local_ops->cache_page, +- (unsigned long) vma, page); ++ xc2(local_ops->cache_page, (unsigned long)vma, page); + local_ops->cache_page(vma, page); + } + } +@@ -1738,8 +1737,7 @@ static void smp_flush_tlb_page(struct vm_area_struct *vma, unsigned long page) + cpumask_copy(&cpu_mask, mm_cpumask(mm)); + cpumask_clear_cpu(smp_processor_id(), &cpu_mask); + if (!cpumask_empty(&cpu_mask)) +- xc2((smpfunc_t) local_ops->tlb_page, +- (unsigned long) vma, page); ++ xc2(local_ops->tlb_page, (unsigned long)vma, page); + local_ops->tlb_page(vma, page); + } + } +@@ -1753,7 +1751,7 @@ static void smp_flush_page_to_ram(unsigned long page) + * XXX This experiment failed, research further... -DaveM + */ + #if 1 +- xc1((smpfunc_t) local_ops->page_to_ram, page); ++ xc1(local_ops->page_to_ram, page); + #endif + local_ops->page_to_ram(page); + } +@@ -1764,8 +1762,7 @@ static void smp_flush_sig_insns(struct mm_struct *mm, unsigned long insn_addr) + cpumask_copy(&cpu_mask, mm_cpumask(mm)); + cpumask_clear_cpu(smp_processor_id(), &cpu_mask); + if (!cpumask_empty(&cpu_mask)) +- xc2((smpfunc_t) local_ops->sig_insns, +- (unsigned long) mm, insn_addr); ++ xc2(local_ops->sig_insns, (unsigned long)mm, insn_addr); + local_ops->sig_insns(mm, insn_addr); + } + +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-005-Makefile.extrawarn-Move-Wcast-function-type-str.patch new/patches.kernel.org/6.0.1-005-Makefile.extrawarn-Move-Wcast-function-type-str.patch --- old/patches.kernel.org/6.0.1-005-Makefile.extrawarn-Move-Wcast-function-type-str.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-005-Makefile.extrawarn-Move-Wcast-function-type-str.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,45 @@ +From: Sami Tolvanen <samitolva...@google.com> +Date: Fri, 30 Sep 2022 20:33:10 +0000 +Subject: [PATCH] Makefile.extrawarn: Move -Wcast-function-type-strict to W=1 +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: 2120635108b35ecad9c59c8b44f6cbdf4f98214e + +commit 2120635108b35ecad9c59c8b44f6cbdf4f98214e upstream. + +We enable -Wcast-function-type globally in the kernel to warn about +mismatching types in function pointer casts. Compilers currently +warn only about ABI incompability with this flag, but Clang 16 will +enable a stricter version of the check by default that checks for an +exact type match. This will be very noisy in the kernel, so disable +-Wcast-function-type-strict without W=1 until the new warnings have +been addressed. + +Cc: sta...@vger.kernel.org +Link: https://reviews.llvm.org/D134831 +Link: https://github.com/ClangBuiltLinux/linux/issues/1724 +Suggested-by: Nathan Chancellor <nat...@kernel.org> +Signed-off-by: Sami Tolvanen <samitolva...@google.com> +Signed-off-by: Kees Cook <keesc...@chromium.org> +Link: https://lore.kernel.org/r/20220930203310.4010564-1-samitolva...@google.com +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + scripts/Makefile.extrawarn | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn +index 6ae482158bc4..52bd7df84fd6 100644 +--- a/scripts/Makefile.extrawarn ++++ b/scripts/Makefile.extrawarn +@@ -64,6 +64,7 @@ KBUILD_CFLAGS += -Wno-sign-compare + KBUILD_CFLAGS += $(call cc-disable-warning, pointer-to-enum-cast) + KBUILD_CFLAGS += -Wno-tautological-constant-out-of-range-compare + KBUILD_CFLAGS += $(call cc-disable-warning, unaligned-access) ++KBUILD_CFLAGS += $(call cc-disable-warning, cast-function-type-strict) + endif + + endif +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-006-hardening-Remove-Clang-s-enable-flag-for-ftrivi.patch new/patches.kernel.org/6.0.1-006-hardening-Remove-Clang-s-enable-flag-for-ftrivi.patch --- old/patches.kernel.org/6.0.1-006-hardening-Remove-Clang-s-enable-flag-for-ftrivi.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-006-hardening-Remove-Clang-s-enable-flag-for-ftrivi.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,75 @@ +From: Kees Cook <keesc...@chromium.org> +Date: Thu, 29 Sep 2022 22:57:43 -0700 +Subject: [PATCH] hardening: Remove Clang's enable flag for + -ftrivial-auto-var-init=zero +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: 607e57c6c62c00965ae276902c166834ce73014a + +commit 607e57c6c62c00965ae276902c166834ce73014a upstream. + +Now that Clang's -enable-trivial-auto-var-init-zero-knowing-it-will-be-removed-from-clang +option is no longer required, remove it from the command line. Clang 16 +and later will warn when it is used, which will cause Kconfig to think +it can't use -ftrivial-auto-var-init=zero at all. Check for whether it +is required and only use it when so. + +Cc: Nathan Chancellor <nat...@kernel.org> +Cc: Masahiro Yamada <masahi...@kernel.org> +Cc: Nick Desaulniers <ndesaulni...@google.com> +Cc: linux-kbu...@vger.kernel.org +Cc: l...@lists.linux.dev +Cc: sta...@vger.kernel.org +Fixes: f02003c860d9 ("hardening: Avoid harmless Clang option under CONFIG_INIT_STACK_ALL_ZERO") +Signed-off-by: Kees Cook <keesc...@chromium.org> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + Makefile | 4 ++-- + security/Kconfig.hardening | 14 ++++++++++---- + 2 files changed, 12 insertions(+), 6 deletions(-) + +diff --git a/Makefile b/Makefile +index 8478e13e9424..345b066734c8 100644 +--- a/Makefile ++++ b/Makefile +@@ -831,8 +831,8 @@ endif + # Initialize all stack variables with a zero value. + ifdef CONFIG_INIT_STACK_ALL_ZERO + KBUILD_CFLAGS += -ftrivial-auto-var-init=zero +-ifdef CONFIG_CC_IS_CLANG +-# https://bugs.llvm.org/show_bug.cgi?id=45497 ++ifdef CONFIG_CC_HAS_AUTO_VAR_INIT_ZERO_ENABLER ++# https://github.com/llvm/llvm-project/issues/44842 + KBUILD_CFLAGS += -enable-trivial-auto-var-init-zero-knowing-it-will-be-removed-from-clang + endif + endif +diff --git a/security/Kconfig.hardening b/security/Kconfig.hardening +index bd2aabb2c60f..995bc42003e6 100644 +--- a/security/Kconfig.hardening ++++ b/security/Kconfig.hardening +@@ -22,11 +22,17 @@ menu "Memory initialization" + config CC_HAS_AUTO_VAR_INIT_PATTERN + def_bool $(cc-option,-ftrivial-auto-var-init=pattern) + +-config CC_HAS_AUTO_VAR_INIT_ZERO +- # GCC ignores the -enable flag, so we can test for the feature with +- # a single invocation using the flag, but drop it as appropriate in +- # the Makefile, depending on the presence of Clang. ++config CC_HAS_AUTO_VAR_INIT_ZERO_BARE ++ def_bool $(cc-option,-ftrivial-auto-var-init=zero) ++ ++config CC_HAS_AUTO_VAR_INIT_ZERO_ENABLER ++ # Clang 16 and later warn about using the -enable flag, but it ++ # is required before then. + def_bool $(cc-option,-ftrivial-auto-var-init=zero -enable-trivial-auto-var-init-zero-knowing-it-will-be-removed-from-clang) ++ depends on !CC_HAS_AUTO_VAR_INIT_ZERO_BARE ++ ++config CC_HAS_AUTO_VAR_INIT_ZERO ++ def_bool CC_HAS_AUTO_VAR_INIT_ZERO_BARE || CC_HAS_AUTO_VAR_INIT_ZERO_ENABLER + + choice + prompt "Initialize kernel stack variables at function entry" +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-007-docs-update-mediator-information-in-CoC-docs.patch new/patches.kernel.org/6.0.1-007-docs-update-mediator-information-in-CoC-docs.patch --- old/patches.kernel.org/6.0.1-007-docs-update-mediator-information-in-CoC-docs.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-007-docs-update-mediator-information-in-CoC-docs.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,37 @@ +From: Shuah Khan <sk...@linuxfoundation.org> +Date: Thu, 1 Sep 2022 15:23:19 -0600 +Subject: [PATCH] docs: update mediator information in CoC docs +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: 8bfdfa0d6b929ede7b6189e0e546ceb6a124d05d + +commit 8bfdfa0d6b929ede7b6189e0e546ceb6a124d05d upstream. + +Update mediator information in the CoC interpretation document. + +Signed-off-by: Shuah Khan <sk...@linuxfoundation.org> +Link: https://lore.kernel.org/r/20220901212319.56644-1-sk...@linuxfoundation.org +Cc: sta...@vger.kernel.org +Signed-off-by: Jonathan Corbet <cor...@lwn.net> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + Documentation/process/code-of-conduct-interpretation.rst | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Documentation/process/code-of-conduct-interpretation.rst b/Documentation/process/code-of-conduct-interpretation.rst +index e899f14a4ba2..4f8a06b00f60 100644 +--- a/Documentation/process/code-of-conduct-interpretation.rst ++++ b/Documentation/process/code-of-conduct-interpretation.rst +@@ -51,7 +51,7 @@ the Technical Advisory Board (TAB) or other maintainers if you're + uncertain how to handle situations that come up. It will not be + considered a violation report unless you want it to be. If you are + uncertain about approaching the TAB or any other maintainers, please +-reach out to our conflict mediator, Mishi Choudhary <mi...@linux.com>. ++reach out to our conflict mediator, Joanna Lee <joanna....@gesmer.com>. + + In the end, "be kind to each other" is really what the end goal is for + everybody. We know everyone is human and we all fail at times, but the +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-008-hwmon-aquacomputer_d5next-Fix-Quadro-fan-speed-.patch new/patches.kernel.org/6.0.1-008-hwmon-aquacomputer_d5next-Fix-Quadro-fan-speed-.patch --- old/patches.kernel.org/6.0.1-008-hwmon-aquacomputer_d5next-Fix-Quadro-fan-speed-.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-008-hwmon-aquacomputer_d5next-Fix-Quadro-fan-speed-.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,44 @@ +From: Aleksa Savic <savicaleks...@gmail.com> +Date: Wed, 14 Sep 2022 13:43:27 +0200 +Subject: [PATCH] hwmon: (aquacomputer_d5next) Fix Quadro fan speed offsets +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: b7f3e9650f12d1e06b94a0257bcb90279f691bf5 + +commit b7f3e9650f12d1e06b94a0257bcb90279f691bf5 upstream. + +The offsets for setting speeds of fans connected to Quadro are off by one. +Set them to their correct values. + +The offsets as shown point to registers for setting the fan control mode, +which will be explored in future patches, but slipped in here. When +setting fan speeds, the resulting values were overlapping, which made the +fans still run in my initial testing. + +Fixes: cdbe34da01e3 ("hwmon: (aquacomputer_d5next) Add support for Aquacomputer Quadro fan controller") +Signed-off-by: Aleksa Savic <savicaleks...@gmail.com> +Link: https://lore.kernel.org/r/20220914114327.6941-1-savicaleks...@gmail.com +Cc: sta...@vger.kenrel.org +Signed-off-by: Guenter Roeck <li...@roeck-us.net> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + drivers/hwmon/aquacomputer_d5next.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/hwmon/aquacomputer_d5next.c b/drivers/hwmon/aquacomputer_d5next.c +index 66430553cc45..36752cf2cac9 100644 +--- a/drivers/hwmon/aquacomputer_d5next.c ++++ b/drivers/hwmon/aquacomputer_d5next.c +@@ -110,7 +110,7 @@ static u16 octo_ctrl_fan_offsets[] = { 0x5B, 0xB0, 0x105, 0x15A, 0x1AF, 0x204, 0 + static u8 quadro_sensor_fan_offsets[] = { 0x70, 0x7D, 0x8A, 0x97 }; + + /* Fan speed registers in Quadro control report (from 0-100%) */ +-static u16 quadro_ctrl_fan_offsets[] = { 0x36, 0x8b, 0xe0, 0x135 }; ++static u16 quadro_ctrl_fan_offsets[] = { 0x37, 0x8c, 0xe1, 0x136 }; + + /* Labels for D5 Next */ + static const char *const label_d5next_temp[] = { +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-009-usb-mon-make-mmapped-memory-read-only.patch new/patches.kernel.org/6.0.1-009-usb-mon-make-mmapped-memory-read-only.patch --- old/patches.kernel.org/6.0.1-009-usb-mon-make-mmapped-memory-read-only.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-009-usb-mon-make-mmapped-memory-read-only.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,53 @@ +From: Tadeusz Struk <tadeusz.st...@linaro.org> +Date: Mon, 19 Sep 2022 14:59:57 -0700 +Subject: [PATCH] usb: mon: make mmapped memory read only +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: a659daf63d16aa883be42f3f34ff84235c302198 + +commit a659daf63d16aa883be42f3f34ff84235c302198 upstream. + +Syzbot found an issue in usbmon module, where the user space client can +corrupt the monitor's internal memory, causing the usbmon module to +crash the kernel with segfault, UAF, etc. + +The reproducer mmaps the /dev/usbmon memory to user space, and +overwrites it with arbitrary data, which causes all kinds of issues. + +Return an -EPERM error from mon_bin_mmap() if the flag VM_WRTIE is set. +Also clear VM_MAYWRITE to make it impossible to change it to writable +later. + +Cc: "Dmitry Vyukov" <dvyu...@google.com> +Cc: stable <sta...@kernel.org> +Fixes: 6f23ee1fefdc ("USB: add binary API to usbmon") +Suggested-by: PaX Team <pagee...@freemail.hu> # for the VM_MAYRITE portion +Link: https://syzkaller.appspot.com/bug?id=2eb1f35d6525fa4a74d75b4244971e5b1411c95a +Reported-by: syzbot+23f57c5ae90242928...@syzkaller.appspotmail.com +Signed-off-by: Tadeusz Struk <tadeusz.st...@linaro.org> +Link: https://lore.kernel.org/r/20220919215957.205681-1-tadeusz.st...@linaro.org +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + drivers/usb/mon/mon_bin.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/drivers/usb/mon/mon_bin.c b/drivers/usb/mon/mon_bin.c +index f48a23adbc35..094e812e9e69 100644 +--- a/drivers/usb/mon/mon_bin.c ++++ b/drivers/usb/mon/mon_bin.c +@@ -1268,6 +1268,11 @@ static int mon_bin_mmap(struct file *filp, struct vm_area_struct *vma) + { + /* don't do anything here: "fault" will set up page table entries */ + vma->vm_ops = &mon_bin_vm_ops; ++ ++ if (vma->vm_flags & VM_WRITE) ++ return -EPERM; ++ ++ vma->vm_flags &= ~VM_MAYWRITE; + vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP; + vma->vm_private_data = filp->private_data; + mon_bin_vma_open(vma); +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-010-USB-serial-ftdi_sio-fix-300-bps-rate-for-SIO.patch new/patches.kernel.org/6.0.1-010-USB-serial-ftdi_sio-fix-300-bps-rate-for-SIO.patch --- old/patches.kernel.org/6.0.1-010-USB-serial-ftdi_sio-fix-300-bps-rate-for-SIO.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-010-USB-serial-ftdi_sio-fix-300-bps-rate-for-SIO.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,37 @@ +From: Johan Hovold <jo...@kernel.org> +Date: Tue, 13 Sep 2022 16:53:12 +0200 +Subject: [PATCH] USB: serial: ftdi_sio: fix 300 bps rate for SIO +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: 7bd7ad3c310cd6766f170927381eea0aa6f46c69 + +commit 7bd7ad3c310cd6766f170927381eea0aa6f46c69 upstream. + +The 300 bps rate of SIO devices has been mapped to 9600 bps since +2003... Let's fix the regression. + +Cc: sta...@vger.kernel.org +Signed-off-by: Johan Hovold <jo...@kernel.org> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + drivers/usb/serial/ftdi_sio.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/drivers/usb/serial/ftdi_sio.c b/drivers/usb/serial/ftdi_sio.c +index 52d59be92034..787e63fd7f99 100644 +--- a/drivers/usb/serial/ftdi_sio.c ++++ b/drivers/usb/serial/ftdi_sio.c +@@ -1319,8 +1319,7 @@ static u32 get_ftdi_divisor(struct tty_struct *tty, + case 38400: div_value = ftdi_sio_b38400; break; + case 57600: div_value = ftdi_sio_b57600; break; + case 115200: div_value = ftdi_sio_b115200; break; +- } /* baud */ +- if (div_value == 0) { ++ default: + dev_dbg(dev, "%s - Baudrate (%d) requested is not supported\n", + __func__, baud); + div_value = ftdi_sio_b9600; +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-011-gpiolib-acpi-Add-support-to-ignore-programming-.patch new/patches.kernel.org/6.0.1-011-gpiolib-acpi-Add-support-to-ignore-programming-.patch --- old/patches.kernel.org/6.0.1-011-gpiolib-acpi-Add-support-to-ignore-programming-.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-011-gpiolib-acpi-Add-support-to-ignore-programming-.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,109 @@ +From: Mario Limonciello <mario.limoncie...@amd.com> +Date: Tue, 2 Aug 2022 23:24:59 -0500 +Subject: [PATCH] gpiolib: acpi: Add support to ignore programming an interrupt +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: 6b6af7bd5718f4e45a9b930533aec1158387d552 + +commit 6b6af7bd5718f4e45a9b930533aec1158387d552 upstream. + +gpiolib-acpi already had support for ignoring a pin for wakeup, but +if an OEM configures a floating pin as an interrupt source then +stopping it from being a wakeup won't do much good to stop the +interrupt storm. + +Add support for a module parameter and quirk infrastructure to +ignore interrupts as well. + +Signed-off-by: Mario Limonciello <mario.limoncie...@amd.com> +Reviewed-by: Hans de Goede <hdego...@redhat.com> +Reviewed-by: Mika Westerberg <mika.westerb...@linux.intel.com> +Signed-off-by: Andy Shevchenko <andriy.shevche...@linux.intel.com> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + drivers/gpio/gpiolib-acpi.c | 24 ++++++++++++++++++++---- + 1 file changed, 20 insertions(+), 4 deletions(-) + +diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c +index 9be1376f9a62..116faf8bda64 100644 +--- a/drivers/gpio/gpiolib-acpi.c ++++ b/drivers/gpio/gpiolib-acpi.c +@@ -32,9 +32,16 @@ MODULE_PARM_DESC(ignore_wake, + "controller@pin combos on which to ignore the ACPI wake flag " + "ignore_wake=controller@pin[,controller@pin[,...]]"); + ++static char *ignore_interrupt; ++module_param(ignore_interrupt, charp, 0444); ++MODULE_PARM_DESC(ignore_interrupt, ++ "controller@pin combos on which to ignore interrupt " ++ "ignore_interrupt=controller@pin[,controller@pin[,...]]"); ++ + struct acpi_gpiolib_dmi_quirk { + bool no_edge_events_on_boot; + char *ignore_wake; ++ char *ignore_interrupt; + }; + + /** +@@ -317,14 +324,15 @@ static struct gpio_desc *acpi_request_own_gpiod(struct gpio_chip *chip, + return desc; + } + +-static bool acpi_gpio_in_ignore_list(const char *controller_in, unsigned int pin_in) ++static bool acpi_gpio_in_ignore_list(const char *ignore_list, const char *controller_in, ++ unsigned int pin_in) + { + const char *controller, *pin_str; + unsigned int pin; + char *endp; + int len; + +- controller = ignore_wake; ++ controller = ignore_list; + while (controller) { + pin_str = strchr(controller, '@'); + if (!pin_str) +@@ -348,7 +356,7 @@ static bool acpi_gpio_in_ignore_list(const char *controller_in, unsigned int pin + + return false; + err: +- pr_err_once("Error: Invalid value for gpiolib_acpi.ignore_wake: %s\n", ignore_wake); ++ pr_err_once("Error: Invalid value for gpiolib_acpi.ignore_...: %s\n", ignore_list); + return false; + } + +@@ -360,7 +368,7 @@ static bool acpi_gpio_irq_is_wake(struct device *parent, + if (agpio->wake_capable != ACPI_WAKE_CAPABLE) + return false; + +- if (acpi_gpio_in_ignore_list(dev_name(parent), pin)) { ++ if (acpi_gpio_in_ignore_list(ignore_wake, dev_name(parent), pin)) { + dev_info(parent, "Ignoring wakeup on pin %u\n", pin); + return false; + } +@@ -427,6 +435,11 @@ static acpi_status acpi_gpiochip_alloc_event(struct acpi_resource *ares, + goto fail_unlock_irq; + } + ++ if (acpi_gpio_in_ignore_list(ignore_interrupt, dev_name(chip->parent), pin)) { ++ dev_info(chip->parent, "Ignoring interrupt on pin %u\n", pin); ++ return AE_OK; ++ } ++ + event = kzalloc(sizeof(*event), GFP_KERNEL); + if (!event) + goto fail_unlock_irq; +@@ -1585,6 +1598,9 @@ static int __init acpi_gpio_setup_params(void) + if (ignore_wake == NULL && quirk && quirk->ignore_wake) + ignore_wake = quirk->ignore_wake; + ++ if (ignore_interrupt == NULL && quirk && quirk->ignore_interrupt) ++ ignore_interrupt = quirk->ignore_interrupt; ++ + return 0; + } + +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-012-gpiolib-acpi-Add-a-quirk-for-Asus-UM325UAZ.patch new/patches.kernel.org/6.0.1-012-gpiolib-acpi-Add-a-quirk-for-Asus-UM325UAZ.patch --- old/patches.kernel.org/6.0.1-012-gpiolib-acpi-Add-a-quirk-for-Asus-UM325UAZ.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-012-gpiolib-acpi-Add-a-quirk-for-Asus-UM325UAZ.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,56 @@ +From: Mario Limonciello <mario.limoncie...@amd.com> +Date: Tue, 2 Aug 2022 23:25:00 -0500 +Subject: [PATCH] gpiolib: acpi: Add a quirk for Asus UM325UAZ +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: 0ea76c401f9245ac209f1b1ce03a7e1fb9de36e5 + +commit 0ea76c401f9245ac209f1b1ce03a7e1fb9de36e5 upstream. + +Asus UM325UAZ has GPIO 18 programmed as both an interrupt and a wake +source, but confirmed with internal team on this design this pin is +floating and shouldn't have been programmed. This causes lots of +spurious IRQs on the system and horrendous battery life. + +Add a quirk to ignore attempts to program this pin on this system. + +Reported-by: Pavel Krc <reg....@pkrc.net> +Link: https://bugzilla.kernel.org/show_bug.cgi?id=216208 +Reviewed-by: Hans de Goede <hdego...@redhat.com> +Signed-off-by: Mario Limonciello <mario.limoncie...@amd.com> +Reviewed-by: Mika Westerberg <mika.westerb...@linux.intel.com> +Signed-off-by: Andy Shevchenko <andriy.shevche...@linux.intel.com> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + drivers/gpio/gpiolib-acpi.c | 14 ++++++++++++++ + 1 file changed, 14 insertions(+) + +diff --git a/drivers/gpio/gpiolib-acpi.c b/drivers/gpio/gpiolib-acpi.c +index 116faf8bda64..285ecbf107c9 100644 +--- a/drivers/gpio/gpiolib-acpi.c ++++ b/drivers/gpio/gpiolib-acpi.c +@@ -1576,6 +1576,20 @@ static const struct dmi_system_id gpiolib_acpi_quirks[] __initconst = { + .ignore_wake = "INT33FF:01@0", + }, + }, ++ { ++ /* ++ * Interrupt storm caused from edge triggered floating pin ++ * Found in BIOS UX325UAZ.300 ++ * https://bugzilla.kernel.org/show_bug.cgi?id=216208 ++ */ ++ .matches = { ++ DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), ++ DMI_MATCH(DMI_PRODUCT_NAME, "ZenBook UX325UAZ_UM325UAZ"), ++ }, ++ .driver_data = &(struct acpi_gpiolib_dmi_quirk) { ++ .ignore_interrupt = "AMDI0030:00@18", ++ }, ++ }, + {} /* Terminating entry */ + }; + +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-013-RISC-V-Print-SSTC-in-canonical-order.patch new/patches.kernel.org/6.0.1-013-RISC-V-Print-SSTC-in-canonical-order.patch --- old/patches.kernel.org/6.0.1-013-RISC-V-Print-SSTC-in-canonical-order.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-013-RISC-V-Print-SSTC-in-canonical-order.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,44 @@ +From: Palmer Dabbelt <pal...@rivosinc.com> +Date: Tue, 20 Sep 2022 13:45:18 -0700 +Subject: [PATCH] RISC-V: Print SSTC in canonical order +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: 61a41d16ad20657f93613229a8b17766c51dc849 + +commit 61a41d16ad20657f93613229a8b17766c51dc849 upstream. + +This got out of order during a merge conflict, fix it by putting the +entries in the correct order. + +Fixes: 7ab52f75a9cf ("RISC-V: Add Sstc extension support") +Signed-off-by: Palmer Dabbelt <pal...@rivosinc.com> +Reviewed-by: Conor Dooley <conor.doo...@microchip.com> +Reviewed-by: Heiko Stuebner <he...@sntech.de> +Cc: sta...@vger.kernel.org +Link: https://lore.kernel.org/r/20220920204518.10988-1-pal...@rivosinc.com/ +Signed-off-by: Palmer Dabbelt <pal...@rivosinc.com> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + arch/riscv/kernel/cpu.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/arch/riscv/kernel/cpu.c b/arch/riscv/kernel/cpu.c +index 0be8a2403212..87455d12970f 100644 +--- a/arch/riscv/kernel/cpu.c ++++ b/arch/riscv/kernel/cpu.c +@@ -92,10 +92,10 @@ int riscv_of_parent_hartid(struct device_node *node, unsigned long *hartid) + */ + static struct riscv_isa_ext_data isa_ext_arr[] = { + __RISCV_ISA_EXT_DATA(sscofpmf, RISCV_ISA_EXT_SSCOFPMF), ++ __RISCV_ISA_EXT_DATA(sstc, RISCV_ISA_EXT_SSTC), + __RISCV_ISA_EXT_DATA(svpbmt, RISCV_ISA_EXT_SVPBMT), + __RISCV_ISA_EXT_DATA(zicbom, RISCV_ISA_EXT_ZICBOM), + __RISCV_ISA_EXT_DATA(zihintpause, RISCV_ISA_EXT_ZIHINTPAUSE), +- __RISCV_ISA_EXT_DATA(sstc, RISCV_ISA_EXT_SSTC), + __RISCV_ISA_EXT_DATA("", RISCV_ISA_EXT_MAX), + }; + +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-014-bpf-Gate-dynptr-API-behind-CAP_BPF.patch new/patches.kernel.org/6.0.1-014-bpf-Gate-dynptr-API-behind-CAP_BPF.patch --- old/patches.kernel.org/6.0.1-014-bpf-Gate-dynptr-API-behind-CAP_BPF.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-014-bpf-Gate-dynptr-API-behind-CAP_BPF.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,86 @@ +From: Kumar Kartikeya Dwivedi <mem...@gmail.com> +Date: Wed, 21 Sep 2022 16:35:50 +0200 +Subject: [PATCH] bpf: Gate dynptr API behind CAP_BPF +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: 8addbfc7b308d591f8a5f2f6bb24d08d9d79dfbb + +commit 8addbfc7b308d591f8a5f2f6bb24d08d9d79dfbb upstream. + +This has been enabled for unprivileged programs for only one kernel +release, hence the expected annoyances due to this move are low. Users +using ringbuf can stick to non-dynptr APIs. The actual use cases dynptr +is meant to serve may not make sense in unprivileged BPF programs. + +Hence, gate these helpers behind CAP_BPF and limit use to privileged +BPF programs. + +Fixes: 263ae152e962 ("bpf: Add bpf_dynptr_from_mem for local dynptrs") +Fixes: bc34dee65a65 ("bpf: Dynptr support for ring buffers") +Fixes: 13bbbfbea759 ("bpf: Add bpf_dynptr_read and bpf_dynptr_write") +Fixes: 34d4ef5775f7 ("bpf: Add dynptr data slices") +Signed-off-by: Kumar Kartikeya Dwivedi <mem...@gmail.com> +Link: https://lore.kernel.org/r/20220921143550.30247-1-mem...@gmail.com +Acked-by: Andrii Nakryiko <and...@kernel.org> +Signed-off-by: Alexei Starovoitov <a...@kernel.org> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + kernel/bpf/helpers.c | 28 ++++++++++++++-------------- + 1 file changed, 14 insertions(+), 14 deletions(-) + +diff --git a/kernel/bpf/helpers.c b/kernel/bpf/helpers.c +index 1f961f9982d2..3814b0fd3a2c 100644 +--- a/kernel/bpf/helpers.c ++++ b/kernel/bpf/helpers.c +@@ -1627,26 +1627,12 @@ bpf_base_func_proto(enum bpf_func_id func_id) + return &bpf_ringbuf_discard_proto; + case BPF_FUNC_ringbuf_query: + return &bpf_ringbuf_query_proto; +- case BPF_FUNC_ringbuf_reserve_dynptr: +- return &bpf_ringbuf_reserve_dynptr_proto; +- case BPF_FUNC_ringbuf_submit_dynptr: +- return &bpf_ringbuf_submit_dynptr_proto; +- case BPF_FUNC_ringbuf_discard_dynptr: +- return &bpf_ringbuf_discard_dynptr_proto; + case BPF_FUNC_for_each_map_elem: + return &bpf_for_each_map_elem_proto; + case BPF_FUNC_loop: + return &bpf_loop_proto; + case BPF_FUNC_strncmp: + return &bpf_strncmp_proto; +- case BPF_FUNC_dynptr_from_mem: +- return &bpf_dynptr_from_mem_proto; +- case BPF_FUNC_dynptr_read: +- return &bpf_dynptr_read_proto; +- case BPF_FUNC_dynptr_write: +- return &bpf_dynptr_write_proto; +- case BPF_FUNC_dynptr_data: +- return &bpf_dynptr_data_proto; + default: + break; + } +@@ -1675,6 +1661,20 @@ bpf_base_func_proto(enum bpf_func_id func_id) + return &bpf_timer_cancel_proto; + case BPF_FUNC_kptr_xchg: + return &bpf_kptr_xchg_proto; ++ case BPF_FUNC_ringbuf_reserve_dynptr: ++ return &bpf_ringbuf_reserve_dynptr_proto; ++ case BPF_FUNC_ringbuf_submit_dynptr: ++ return &bpf_ringbuf_submit_dynptr_proto; ++ case BPF_FUNC_ringbuf_discard_dynptr: ++ return &bpf_ringbuf_discard_dynptr_proto; ++ case BPF_FUNC_dynptr_from_mem: ++ return &bpf_dynptr_from_mem_proto; ++ case BPF_FUNC_dynptr_read: ++ return &bpf_dynptr_read_proto; ++ case BPF_FUNC_dynptr_write: ++ return &bpf_dynptr_write_proto; ++ case BPF_FUNC_dynptr_data: ++ return &bpf_dynptr_data_proto; + default: + break; + } +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-015-net-ethernet-mtk_eth_soc-fix-state-in-__mtk_foe.patch new/patches.kernel.org/6.0.1-015-net-ethernet-mtk_eth_soc-fix-state-in-__mtk_foe.patch --- old/patches.kernel.org/6.0.1-015-net-ethernet-mtk_eth_soc-fix-state-in-__mtk_foe.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-015-net-ethernet-mtk_eth_soc-fix-state-in-__mtk_foe.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,48 @@ +From: Daniel Golle <dan...@makrotopia.org> +Date: Fri, 30 Sep 2022 01:56:53 +0100 +Subject: [PATCH] net: ethernet: mtk_eth_soc: fix state in + __mtk_foe_entry_clear +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: ae3ed15da5889263de372ff9df2e83e16acca4cb + +commit ae3ed15da5889263de372ff9df2e83e16acca4cb upstream. + +Setting ib1 state to MTK_FOE_STATE_UNBIND in __mtk_foe_entry_clear +routine as done by commit 0e80707d94e4c8 ("net: ethernet: mtk_eth_soc: +fix typo in __mtk_foe_entry_clear") breaks flow offloading, at least +on older MTK_NETSYS_V1 SoCs, OpenWrt users have confirmed the bug on +MT7622 and MT7621 systems. +Felix Fietkau suggested to use MTK_FOE_STATE_INVALID instead which +works well on both, MTK_NETSYS_V1 and MTK_NETSYS_V2. + +Tested on MT7622 (Linksys E8450) and MT7986 (BananaPi BPI-R3). + +Suggested-by: Felix Fietkau <n...@nbd.name> +Fixes: 0e80707d94e4c8 ("net: ethernet: mtk_eth_soc: fix typo in __mtk_foe_entry_clear") +Fixes: 33fc42de33278b ("net: ethernet: mtk_eth_soc: support creating mac address based offload entries") +Signed-off-by: Daniel Golle <dan...@makrotopia.org> +Link: https://lore.kernel.org/r/yzy+1yg0fbxcn...@makrotopia.org +Signed-off-by: Jakub Kicinski <k...@kernel.org> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + drivers/net/ethernet/mediatek/mtk_ppe.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/net/ethernet/mediatek/mtk_ppe.c b/drivers/net/ethernet/mediatek/mtk_ppe.c +index cfe804bc8d20..148ea636ef97 100644 +--- a/drivers/net/ethernet/mediatek/mtk_ppe.c ++++ b/drivers/net/ethernet/mediatek/mtk_ppe.c +@@ -412,7 +412,7 @@ __mtk_foe_entry_clear(struct mtk_ppe *ppe, struct mtk_flow_entry *entry) + if (entry->hash != 0xffff) { + ppe->foe_table[entry->hash].ib1 &= ~MTK_FOE_IB1_STATE; + ppe->foe_table[entry->hash].ib1 |= FIELD_PREP(MTK_FOE_IB1_STATE, +- MTK_FOE_STATE_UNBIND); ++ MTK_FOE_STATE_INVALID); + dma_wmb(); + } + entry->hash = 0xffff; +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-016-bpf-Fix-resetting-logic-for-unreferenced-kptrs.patch new/patches.kernel.org/6.0.1-016-bpf-Fix-resetting-logic-for-unreferenced-kptrs.patch --- old/patches.kernel.org/6.0.1-016-bpf-Fix-resetting-logic-for-unreferenced-kptrs.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-016-bpf-Fix-resetting-logic-for-unreferenced-kptrs.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,46 @@ +From: Jules Irenge <jbi.oct...@gmail.com> +Date: Wed, 7 Sep 2022 16:24:20 +0100 +Subject: [PATCH] bpf: Fix resetting logic for unreferenced kptrs +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: 9fad7fe5b29803584c7f17a2abe6c2936fec6828 + +commit 9fad7fe5b29803584c7f17a2abe6c2936fec6828 upstream. + +Sparse reported a warning at bpf_map_free_kptrs() +"warning: Using plain integer as NULL pointer" +During the process of fixing this warning, it was discovered that the current +code erroneously writes to the pointer variable instead of deferencing and +writing to the actual kptr. Hence, Sparse tool accidentally helped to uncover +this problem. Fix this by doing WRITE_ONCE(*p, 0) instead of WRITE_ONCE(p, 0). + +Note that the effect of this bug is that unreferenced kptrs will not be cleared +during check_and_free_fields. It is not a problem if the clearing is not done +during map_free stage, as there is nothing to free for them. + +Fixes: 14a324f6a67e ("bpf: Wire up freeing of referenced kptr") +Signed-off-by: Jules Irenge <jbi.oct...@gmail.com> +Link: https://lore.kernel.org/r/Yxi3pJaK6UDjVJSy@playground +Signed-off-by: Alexei Starovoitov <a...@kernel.org> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + kernel/bpf/syscall.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/kernel/bpf/syscall.c b/kernel/bpf/syscall.c +index 27760627370d..f798acd43a28 100644 +--- a/kernel/bpf/syscall.c ++++ b/kernel/bpf/syscall.c +@@ -598,7 +598,7 @@ void bpf_map_free_kptrs(struct bpf_map *map, void *map_value) + if (off_desc->type == BPF_KPTR_UNREF) { + u64 *p = (u64 *)btf_id_ptr; + +- WRITE_ONCE(p, 0); ++ WRITE_ONCE(*p, 0); + continue; + } + old_ptr = xchg(btf_id_ptr, 0); +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-017-Bluetooth-use-hdev-workqueue-when-queuing-hdev-.patch new/patches.kernel.org/6.0.1-017-Bluetooth-use-hdev-workqueue-when-queuing-hdev-.patch --- old/patches.kernel.org/6.0.1-017-Bluetooth-use-hdev-workqueue-when-queuing-hdev-.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-017-Bluetooth-use-hdev-workqueue-when-queuing-hdev-.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,100 @@ +From: Tetsuo Handa <penguin-ker...@i-love.sakura.ne.jp> +Date: Fri, 2 Sep 2022 20:23:48 +0900 +Subject: [PATCH] Bluetooth: use hdev->workqueue when queuing + hdev->{cmd,ncmd}_timer works +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: deee93d13d385103205879a8a0915036ecd83261 + +commit deee93d13d385103205879a8a0915036ecd83261 upstream. + +syzbot is reporting attempt to schedule hdev->cmd_work work from system_wq +WQ into hdev->workqueue WQ which is under draining operation [1], for +commit c8efcc2589464ac7 ("workqueue: allow chained queueing during +destruction") does not allow such operation. + +The check introduced by commit 877afadad2dce8aa ("Bluetooth: When HCI work +queue is drained, only queue chained work") was incomplete. + +Use hdev->workqueue WQ when queuing hdev->{cmd,ncmd}_timer works because +hci_{cmd,ncmd}_timeout() calls queue_work(hdev->workqueue). Also, protect +the queuing operation with RCU read lock in order to avoid calling +queue_delayed_work() after cancel_delayed_work() completed. + +Link: https://syzkaller.appspot.com/bug?extid=243b7d89777f90f7613b [1] +Reported-by: syzbot <syzbot+243b7d89777f90f76...@syzkaller.appspotmail.com> +Signed-off-by: Tetsuo Handa <penguin-ker...@i-love.sakura.ne.jp> +Fixes: 877afadad2dce8aa ("Bluetooth: When HCI work queue is drained, only queue chained work") +Signed-off-by: Luiz Augusto von Dentz <luiz.von.de...@intel.com> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + net/bluetooth/hci_core.c | 15 +++++++++++++-- + net/bluetooth/hci_event.c | 6 ++++-- + 2 files changed, 17 insertions(+), 4 deletions(-) + +diff --git a/net/bluetooth/hci_core.c b/net/bluetooth/hci_core.c +index b3a5a3cc9372..9873d2e67988 100644 +--- a/net/bluetooth/hci_core.c ++++ b/net/bluetooth/hci_core.c +@@ -597,6 +597,15 @@ static int hci_dev_do_reset(struct hci_dev *hdev) + + /* Cancel these to avoid queueing non-chained pending work */ + hci_dev_set_flag(hdev, HCI_CMD_DRAIN_WORKQUEUE); ++ /* Wait for ++ * ++ * if (!hci_dev_test_flag(hdev, HCI_CMD_DRAIN_WORKQUEUE)) ++ * queue_delayed_work(&hdev->{cmd,ncmd}_timer) ++ * ++ * inside RCU section to see the flag or complete scheduling. ++ */ ++ synchronize_rcu(); ++ /* Explicitly cancel works in case scheduled after setting the flag. */ + cancel_delayed_work(&hdev->cmd_timer); + cancel_delayed_work(&hdev->ncmd_timer); + +@@ -4056,12 +4065,14 @@ static void hci_cmd_work(struct work_struct *work) + if (res < 0) + __hci_cmd_sync_cancel(hdev, -res); + ++ rcu_read_lock(); + if (test_bit(HCI_RESET, &hdev->flags) || + hci_dev_test_flag(hdev, HCI_CMD_DRAIN_WORKQUEUE)) + cancel_delayed_work(&hdev->cmd_timer); + else +- schedule_delayed_work(&hdev->cmd_timer, +- HCI_CMD_TIMEOUT); ++ queue_delayed_work(hdev->workqueue, &hdev->cmd_timer, ++ HCI_CMD_TIMEOUT); ++ rcu_read_unlock(); + } else { + skb_queue_head(&hdev->cmd_q, skb); + queue_work(hdev->workqueue, &hdev->cmd_work); +diff --git a/net/bluetooth/hci_event.c b/net/bluetooth/hci_event.c +index 6643c9c20fa4..d6f0e6ca0e7e 100644 +--- a/net/bluetooth/hci_event.c ++++ b/net/bluetooth/hci_event.c +@@ -3766,16 +3766,18 @@ static inline void handle_cmd_cnt_and_timer(struct hci_dev *hdev, u8 ncmd) + { + cancel_delayed_work(&hdev->cmd_timer); + ++ rcu_read_lock(); + if (!test_bit(HCI_RESET, &hdev->flags)) { + if (ncmd) { + cancel_delayed_work(&hdev->ncmd_timer); + atomic_set(&hdev->cmd_cnt, 1); + } else { + if (!hci_dev_test_flag(hdev, HCI_CMD_DRAIN_WORKQUEUE)) +- schedule_delayed_work(&hdev->ncmd_timer, +- HCI_NCMD_TIMEOUT); ++ queue_delayed_work(hdev->workqueue, &hdev->ncmd_timer, ++ HCI_NCMD_TIMEOUT); + } + } ++ rcu_read_unlock(); + } + + static u8 hci_cc_le_read_buffer_size_v2(struct hci_dev *hdev, void *data, +-- +2.38.0 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.0.1-018-Linux-6.0.1.patch new/patches.kernel.org/6.0.1-018-Linux-6.0.1.patch --- old/patches.kernel.org/6.0.1-018-Linux-6.0.1.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.0.1-018-Linux-6.0.1.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,45 @@ +From: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Date: Wed, 12 Oct 2022 09:39:05 +0200 +Subject: [PATCH] Linux 6.0.1 +References: bsc#1012628 +Patch-mainline: 6.0.1 +Git-commit: fbd56ddcecab5a3623a89c8e941fdbcc55b41045 + +Link: https://lore.kernel.org/r/20221010070330.159911...@linuxfoundation.org +Tested-by: Luna Jernberg <droidbit...@gmail.com> +Tested-by: Fenil Jain <fkjai...@gmail.com> +Tested-by: Linux Kernel Functional Testing <l...@linaro.org> +Tested-by: Justin M. Forbes <jfor...@fedoraproject.org> +Tested-by: Florian Fainelli <f.faine...@gmail.com> +Tested-by: Ronald Warsow <rwar...@gmx.de> +Tested-by: Shuah Khan <sk...@linuxfoundation.org> +Tested-by: Zan Aziz <zanaziz...@gmail.com> +Tested-by: Slade Watkins <s...@sladewatkins.net> +Tested-by: Guenter Roeck <li...@roeck-us.net> +Tested-by: Rudi Heitbaum <r...@heitbaum.com> +Tested-by: Bagas Sanjaya <bagasdo...@gmail.com> +Tested-by: Jon Hunter <jonath...@nvidia.com> +Tested-by: Sudip Mukherjee <sudip.mukher...@codethink.co.uk> +Tested-by: Ron Economos <r...@w6rz.net> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby (SUSE) <jsl...@suse.cz> +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 345b066734c8..3193969f1eb3 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,7 +1,7 @@ + # SPDX-License-Identifier: GPL-2.0 + VERSION = 6 + PATCHLEVEL = 0 +-SUBLEVEL = 0 ++SUBLEVEL = 1 + EXTRAVERSION = + NAME = Hurr durr I'ma ninja sloth + +-- +2.38.0 + ++++++ patches.suse.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/ALSA-hda-realtek-Add-quirk-for-HP-Zbook-Firefly-14-G.patch new/patches.suse/ALSA-hda-realtek-Add-quirk-for-HP-Zbook-Firefly-14-G.patch --- old/patches.suse/ALSA-hda-realtek-Add-quirk-for-HP-Zbook-Firefly-14-G.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.suse/ALSA-hda-realtek-Add-quirk-for-HP-Zbook-Firefly-14-G.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,73 @@ +From 225f6e1bc151978041595c7d2acaded3aac41f54 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai <ti...@suse.de> +Date: Thu, 29 Sep 2022 08:14:55 +0200 +Subject: [PATCH] ALSA: hda/realtek: Add quirk for HP Zbook Firefly 14 G9 model +Git-commit: 225f6e1bc151978041595c7d2acaded3aac41f54 +Patch-mainline: v6.1-rc1 +References: bsc#1203699 + +HP Zbook Firefly 14 G9 model (103c:8abb) requires yet another binding +with CS35L41 codec, but with a slightly different configuration. It's +over spi1 instead of spi0. Create a new fixup entry for that. + +Cc: <sta...@vger.kernel.org> +Link: https://lore.kernel.org/r/20220929061455.13355-1-ti...@suse.de +Signed-off-by: Takashi Iwai <ti...@suse.de> + +--- + sound/pci/hda/patch_realtek.c | 18 ++++++++++++++++++ + 1 file changed, 18 insertions(+) + +diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c +index f9d46ae4c7b7..3dc19174670e 100644 +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -6741,6 +6741,11 @@ static void cs35l41_fixup_spi_two(struct hda_codec *codec, const struct hda_fixu + cs35l41_generic_fixup(codec, action, "spi0", "CSC3551", 2); + } + ++static void cs35l41_fixup_spi1_two(struct hda_codec *codec, const struct hda_fixup *fix, int action) ++{ ++ cs35l41_generic_fixup(codec, action, "spi1", "CSC3551", 2); ++} ++ + static void cs35l41_fixup_spi_four(struct hda_codec *codec, const struct hda_fixup *fix, int action) + { + cs35l41_generic_fixup(codec, action, "spi0", "CSC3551", 4); +@@ -7132,6 +7137,8 @@ enum { + ALC287_FIXUP_CS35L41_I2C_2_HP_GPIO_LED, + ALC245_FIXUP_CS35L41_SPI_2, + ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED, ++ ALC245_FIXUP_CS35L41_SPI1_2, ++ ALC245_FIXUP_CS35L41_SPI1_2_HP_GPIO_LED, + ALC245_FIXUP_CS35L41_SPI_4, + ALC245_FIXUP_CS35L41_SPI_4_HP_GPIO_LED, + ALC285_FIXUP_HP_SPEAKERS_MICMUTE_LED, +@@ -8979,6 +8986,16 @@ static const struct hda_fixup alc269_fixups[] = { + .chained = true, + .chain_id = ALC285_FIXUP_HP_GPIO_LED, + }, ++ [ALC245_FIXUP_CS35L41_SPI1_2] = { ++ .type = HDA_FIXUP_FUNC, ++ .v.func = cs35l41_fixup_spi1_two, ++ }, ++ [ALC245_FIXUP_CS35L41_SPI1_2_HP_GPIO_LED] = { ++ .type = HDA_FIXUP_FUNC, ++ .v.func = cs35l41_fixup_spi1_two, ++ .chained = true, ++ .chain_id = ALC285_FIXUP_HP_GPIO_LED, ++ }, + [ALC245_FIXUP_CS35L41_SPI_4] = { + .type = HDA_FIXUP_FUNC, + .v.func = cs35l41_fixup_spi_four, +@@ -9341,6 +9358,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { + SND_PCI_QUIRK(0x103c, 0x8aa3, "HP ProBook 450 G9 (MB 8AA1)", ALC236_FIXUP_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x8aa8, "HP EliteBook 640 G9 (MB 8AA6)", ALC236_FIXUP_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x8aab, "HP EliteBook 650 G9 (MB 8AA9)", ALC236_FIXUP_HP_GPIO_LED), ++ SND_PCI_QUIRK(0x103c, 0x8abb, "HP ZBook Firefly 14 G9", ALC245_FIXUP_CS35L41_SPI1_2_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x8ad1, "HP EliteBook 840 14 inch G9 Notebook PC", ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x8ad2, "HP EliteBook 860 16 inch G9 Notebook PC", ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED), + SND_PCI_QUIRK(0x1043, 0x103e, "ASUS X540SA", ALC256_FIXUP_ASUS_MIC), +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/ALSA-hda-realtek-More-robust-component-matching-for-.patch new/patches.suse/ALSA-hda-realtek-More-robust-component-matching-for-.patch --- old/patches.suse/ALSA-hda-realtek-More-robust-component-matching-for-.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.suse/ALSA-hda-realtek-More-robust-component-matching-for-.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,154 @@ +From 35a1744423743247026668e2323d1b932583fc2a Mon Sep 17 00:00:00 2001 +From: Takashi Iwai <ti...@suse.de> +Date: Fri, 30 Sep 2022 10:48:10 +0200 +Subject: [PATCH] ALSA: hda/realtek: More robust component matching for CS35L41 +Git-commit: 35a1744423743247026668e2323d1b932583fc2a +Patch-mainline: v6.1-rc1 +References: bsc#1203699 + +As the previous commit implies, a system may have a different SPI bus +number that is embedded in the device string. And, assuming the fixed +bus number is rather fragile; it may be assigned differently depending +on the configuration or on the boot environment. Once when a bus +number change happens, the binding fails, resulting in the silence. + +This patch tries to make the matching a bit more relaxed, allowing to +bind with a different bus number (or without it). So the previous +fix, the introduction of ALC245_FIXUP_CS35L41_SPI1_2 fixup became +superfluous, and this is unified to ALC245_FIXUP_CS35L41_SPI_2. + +Fixes: 225f6e1bc151 ("ALSA: hda/realtek: Add quirk for HP Zbook Firefly 14 G9 model") +Link: https://lore.kernel.org/r/20220930084810.10435-1-ti...@suse.de +Signed-off-by: Takashi Iwai <ti...@suse.de> + +--- + sound/pci/hda/patch_realtek.c | 62 +++++++++++++++++++++-------------- + 1 file changed, 37 insertions(+), 25 deletions(-) + +diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c +index 3dc19174670e..bce82b834cec 100644 +--- a/sound/pci/hda/patch_realtek.c ++++ b/sound/pci/hda/patch_realtek.c +@@ -18,6 +18,7 @@ + #include <linux/module.h> + #include <linux/input.h> + #include <linux/leds.h> ++#include <linux/ctype.h> + #include <sound/core.h> + #include <sound/jack.h> + #include <sound/hda_codec.h> +@@ -6704,23 +6705,51 @@ static void comp_generic_playback_hook(struct hda_pcm_stream *hinfo, struct hda_ + } + } + ++struct cs35l41_dev_name { ++ const char *bus; ++ const char *hid; ++ int index; ++}; ++ ++/* match the device name in a slightly relaxed manner */ ++static int comp_match_cs35l41_dev_name(struct device *dev, void *data) ++{ ++ struct cs35l41_dev_name *p = data; ++ const char *d = dev_name(dev); ++ int n = strlen(p->bus); ++ char tmp[32]; ++ ++ /* check the bus name */ ++ if (strncmp(d, p->bus, n)) ++ return 0; ++ /* skip the bus number */ ++ if (isdigit(d[n])) ++ n++; ++ /* the rest must be exact matching */ ++ snprintf(tmp, sizeof(tmp), "-%s:00-cs35l41-hda.%d", p->hid, p->index); ++ return !strcmp(d + n, tmp); ++} ++ + static void cs35l41_generic_fixup(struct hda_codec *cdc, int action, const char *bus, + const char *hid, int count) + { + struct device *dev = hda_codec_dev(cdc); + struct alc_spec *spec = cdc->spec; +- char *name; ++ struct cs35l41_dev_name *rec; + int ret, i; + + switch (action) { + case HDA_FIXUP_ACT_PRE_PROBE: + for (i = 0; i < count; i++) { +- name = devm_kasprintf(dev, GFP_KERNEL, +- "%s-%s:00-cs35l41-hda.%d", bus, hid, i); +- if (!name) ++ rec = devm_kmalloc(dev, sizeof(*rec), GFP_KERNEL); ++ if (!rec) + return; ++ rec->bus = bus; ++ rec->hid = hid; ++ rec->index = i; + spec->comps[i].codec = cdc; +- component_match_add(dev, &spec->match, component_compare_dev_name, name); ++ component_match_add(dev, &spec->match, ++ comp_match_cs35l41_dev_name, rec); + } + ret = component_master_add_with_match(dev, &comp_master_ops, spec->match); + if (ret) +@@ -6738,17 +6767,12 @@ static void cs35l41_fixup_i2c_two(struct hda_codec *cdc, const struct hda_fixup + + static void cs35l41_fixup_spi_two(struct hda_codec *codec, const struct hda_fixup *fix, int action) + { +- cs35l41_generic_fixup(codec, action, "spi0", "CSC3551", 2); +-} +- +-static void cs35l41_fixup_spi1_two(struct hda_codec *codec, const struct hda_fixup *fix, int action) +-{ +- cs35l41_generic_fixup(codec, action, "spi1", "CSC3551", 2); ++ cs35l41_generic_fixup(codec, action, "spi", "CSC3551", 2); + } + + static void cs35l41_fixup_spi_four(struct hda_codec *codec, const struct hda_fixup *fix, int action) + { +- cs35l41_generic_fixup(codec, action, "spi0", "CSC3551", 4); ++ cs35l41_generic_fixup(codec, action, "spi", "CSC3551", 4); + } + + static void alc287_fixup_legion_16achg6_speakers(struct hda_codec *cdc, const struct hda_fixup *fix, +@@ -7137,8 +7161,6 @@ enum { + ALC287_FIXUP_CS35L41_I2C_2_HP_GPIO_LED, + ALC245_FIXUP_CS35L41_SPI_2, + ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED, +- ALC245_FIXUP_CS35L41_SPI1_2, +- ALC245_FIXUP_CS35L41_SPI1_2_HP_GPIO_LED, + ALC245_FIXUP_CS35L41_SPI_4, + ALC245_FIXUP_CS35L41_SPI_4_HP_GPIO_LED, + ALC285_FIXUP_HP_SPEAKERS_MICMUTE_LED, +@@ -8986,16 +9008,6 @@ static const struct hda_fixup alc269_fixups[] = { + .chained = true, + .chain_id = ALC285_FIXUP_HP_GPIO_LED, + }, +- [ALC245_FIXUP_CS35L41_SPI1_2] = { +- .type = HDA_FIXUP_FUNC, +- .v.func = cs35l41_fixup_spi1_two, +- }, +- [ALC245_FIXUP_CS35L41_SPI1_2_HP_GPIO_LED] = { +- .type = HDA_FIXUP_FUNC, +- .v.func = cs35l41_fixup_spi1_two, +- .chained = true, +- .chain_id = ALC285_FIXUP_HP_GPIO_LED, +- }, + [ALC245_FIXUP_CS35L41_SPI_4] = { + .type = HDA_FIXUP_FUNC, + .v.func = cs35l41_fixup_spi_four, +@@ -9358,7 +9370,7 @@ static const struct snd_pci_quirk alc269_fixup_tbl[] = { + SND_PCI_QUIRK(0x103c, 0x8aa3, "HP ProBook 450 G9 (MB 8AA1)", ALC236_FIXUP_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x8aa8, "HP EliteBook 640 G9 (MB 8AA6)", ALC236_FIXUP_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x8aab, "HP EliteBook 650 G9 (MB 8AA9)", ALC236_FIXUP_HP_GPIO_LED), +- SND_PCI_QUIRK(0x103c, 0x8abb, "HP ZBook Firefly 14 G9", ALC245_FIXUP_CS35L41_SPI1_2_HP_GPIO_LED), ++ SND_PCI_QUIRK(0x103c, 0x8abb, "HP ZBook Firefly 14 G9", ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x8ad1, "HP EliteBook 840 14 inch G9 Notebook PC", ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED), + SND_PCI_QUIRK(0x103c, 0x8ad2, "HP EliteBook 860 16 inch G9 Notebook PC", ALC245_FIXUP_CS35L41_SPI_2_HP_GPIO_LED), + SND_PCI_QUIRK(0x1043, 0x103e, "ASUS X540SA", ALC256_FIXUP_ASUS_MIC), +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/misc-sgi-gru-fix-use-after-free-error-in-gru_set_con.patch new/patches.suse/misc-sgi-gru-fix-use-after-free-error-in-gru_set_con.patch --- old/patches.suse/misc-sgi-gru-fix-use-after-free-error-in-gru_set_con.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.suse/misc-sgi-gru-fix-use-after-free-error-in-gru_set_con.patch 2022-10-12 11:01:11.000000000 +0200 @@ -0,0 +1,144 @@ +From: Zheng Wang <zyytlz...@163.com> +Date: Thu, 6 Oct 2022 23:26:43 +0800 +Subject: [PATCH] misc: sgi-gru: fix use-after-free error in + gru_set_context_option, gru_fault and gru_handle_user_call_os +Message-Id: <20221006152643.1694235-1-zyytlz...@163.com> +Patch-mainline: Submitted, LKML +References: CVE-2022-3424 bsc#1204166 + +Gts may be freed in gru_check_chiplet_assignment. +The caller still use it after that, UAF happens. + +Fix it by introducing a return value to see if it's in error path or not. +Free the gts in caller if gru_check_chiplet_assignment check failed. + +Fixes: 55484c45dbec ("gru: allow users to specify gru chiplet 2") +Reported-by: Zheng Wang <hackerzheng...@gmail.com> +Signed-off-by: Zheng Wang <zyytlz...@163.com> +Signed-off-by: Takashi Iwai <ti...@suse.de> + +--- + drivers/misc/sgi-gru/grufault.c | 15 ++++++++++++--- + drivers/misc/sgi-gru/grumain.c | 17 +++++++++++++---- + drivers/misc/sgi-gru/grutables.h | 2 +- + 3 files changed, 26 insertions(+), 8 deletions(-) + +diff --git a/drivers/misc/sgi-gru/grufault.c b/drivers/misc/sgi-gru/grufault.c +index d7ef61e602ed..f1e5b96fef4b 100644 +--- a/drivers/misc/sgi-gru/grufault.c ++++ b/drivers/misc/sgi-gru/grufault.c +@@ -656,7 +656,9 @@ int gru_handle_user_call_os(unsigned long cb) + if (ucbnum >= gts->ts_cbr_au_count * GRU_CBR_AU_SIZE) + goto exit; + +- gru_check_context_placement(gts); ++ ret = gru_check_context_placement(gts); ++ if (ret) ++ goto err; + + /* + * CCH may contain stale data if ts_force_cch_reload is set. +@@ -677,6 +679,10 @@ int gru_handle_user_call_os(unsigned long cb) + exit: + gru_unlock_gts(gts); + return ret; ++err: ++ gru_unlock_gts(gts); ++ gru_unload_context(gts, 1); ++ return -EINVAL; + } + + /* +@@ -874,7 +880,7 @@ int gru_set_context_option(unsigned long arg) + } else { + gts->ts_user_blade_id = req.val1; + gts->ts_user_chiplet_id = req.val0; +- gru_check_context_placement(gts); ++ ret = gru_check_context_placement(gts); + } + break; + case sco_gseg_owner: +@@ -889,6 +895,9 @@ int gru_set_context_option(unsigned long arg) + ret = -EINVAL; + } + gru_unlock_gts(gts); +- ++ if (ret) { ++ gru_unload_context(gts, 1); ++ ret = -EINVAL; ++ } + return ret; + } +diff --git a/drivers/misc/sgi-gru/grumain.c b/drivers/misc/sgi-gru/grumain.c +index 9afda47efbf2..79903cf7e706 100644 +--- a/drivers/misc/sgi-gru/grumain.c ++++ b/drivers/misc/sgi-gru/grumain.c +@@ -716,9 +716,10 @@ static int gru_check_chiplet_assignment(struct gru_state *gru, + * chiplet. Misassignment can occur if the process migrates to a different + * blade or if the user changes the selected blade/chiplet. + */ +-void gru_check_context_placement(struct gru_thread_state *gts) ++int gru_check_context_placement(struct gru_thread_state *gts) + { + struct gru_state *gru; ++ int ret = 0; + + /* + * If the current task is the context owner, verify that the +@@ -727,14 +728,16 @@ void gru_check_context_placement(struct gru_thread_state *gts) + */ + gru = gts->ts_gru; + if (!gru || gts->ts_tgid_owner != current->tgid) +- return; ++ return ret; + + if (!gru_check_chiplet_assignment(gru, gts)) { + STAT(check_context_unload); +- gru_unload_context(gts, 1); ++ ret = -EINVAL; + } else if (gru_retarget_intr(gts)) { + STAT(check_context_retarget_intr); + } ++ ++ return ret; + } + + +@@ -919,6 +922,7 @@ vm_fault_t gru_fault(struct vm_fault *vmf) + struct gru_thread_state *gts; + unsigned long paddr, vaddr; + unsigned long expires; ++ int ret; + + vaddr = vmf->address; + gru_dbg(grudev, "vma %p, vaddr 0x%lx (0x%lx)\n", +@@ -934,7 +938,12 @@ vm_fault_t gru_fault(struct vm_fault *vmf) + mutex_lock(>s->ts_ctxlock); + preempt_disable(); + +- gru_check_context_placement(gts); ++ ret = gru_check_context_placement(gts); ++ if (ret) { ++ mutex_unlock(>s->ts_ctxlock); ++ gru_unload_context(gts, 1); ++ return ret; ++ } + + if (!gts->ts_gru) { + STAT(load_user_context); +diff --git a/drivers/misc/sgi-gru/grutables.h b/drivers/misc/sgi-gru/grutables.h +index 5efc869fe59a..f4a5a787685f 100644 +--- a/drivers/misc/sgi-gru/grutables.h ++++ b/drivers/misc/sgi-gru/grutables.h +@@ -632,7 +632,7 @@ extern int gru_user_flush_tlb(unsigned long arg); + extern int gru_user_unload_context(unsigned long arg); + extern int gru_get_exception_detail(unsigned long arg); + extern int gru_set_context_option(unsigned long address); +-extern void gru_check_context_placement(struct gru_thread_state *gts); ++extern int gru_check_context_placement(struct gru_thread_state *gts); + extern int gru_cpu_fault_map_id(void); + extern struct vm_area_struct *gru_find_vma(unsigned long vaddr); + extern void gru_flush_all_tlb(struct gru_state *gru); +-- +2.35.3 + ++++++ series.conf ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:14.779788856 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:14.783788863 +0200 @@ -27,6 +27,24 @@ # DO NOT MODIFY THEM! # Send separate patches upstream if you find a problem... ######################################################## + patches.kernel.org/6.0.1-001-xsk-Inherit-need_wakeup-flag-for-shared-sockets.patch + patches.kernel.org/6.0.1-002-fs-fix-UAF-GPF-bug-in-nilfs_mdt_destroy.patch + patches.kernel.org/6.0.1-003-fix-coredump-breakage.patch + patches.kernel.org/6.0.1-004-sparc-Unbreak-the-build.patch + patches.kernel.org/6.0.1-005-Makefile.extrawarn-Move-Wcast-function-type-str.patch + patches.kernel.org/6.0.1-006-hardening-Remove-Clang-s-enable-flag-for-ftrivi.patch + patches.kernel.org/6.0.1-007-docs-update-mediator-information-in-CoC-docs.patch + patches.kernel.org/6.0.1-008-hwmon-aquacomputer_d5next-Fix-Quadro-fan-speed-.patch + patches.kernel.org/6.0.1-009-usb-mon-make-mmapped-memory-read-only.patch + patches.kernel.org/6.0.1-010-USB-serial-ftdi_sio-fix-300-bps-rate-for-SIO.patch + patches.kernel.org/6.0.1-011-gpiolib-acpi-Add-support-to-ignore-programming-.patch + patches.kernel.org/6.0.1-012-gpiolib-acpi-Add-a-quirk-for-Asus-UM325UAZ.patch + patches.kernel.org/6.0.1-013-RISC-V-Print-SSTC-in-canonical-order.patch + patches.kernel.org/6.0.1-014-bpf-Gate-dynptr-API-behind-CAP_BPF.patch + patches.kernel.org/6.0.1-015-net-ethernet-mtk_eth_soc-fix-state-in-__mtk_foe.patch + patches.kernel.org/6.0.1-016-bpf-Fix-resetting-logic-for-unreferenced-kptrs.patch + patches.kernel.org/6.0.1-017-Bluetooth-use-hdev-workqueue-when-queuing-hdev-.patch + patches.kernel.org/6.0.1-018-Linux-6.0.1.patch ######################################################## # Build fixes that apply to the vanilla kernel too. @@ -53,6 +71,8 @@ ######################################################## # sorted patches ######################################################## + patches.suse/ALSA-hda-realtek-Add-quirk-for-HP-Zbook-Firefly-14-G.patch + patches.suse/ALSA-hda-realtek-More-robust-component-matching-for-.patch ######################################################## # end of sorted patches @@ -71,6 +91,7 @@ # to area specific sections below. ######################################################## patches.suse/watchdog-wdat_wdt-fix-min-max-timer-value.patch + patches.suse/misc-sgi-gru-fix-use-after-free-error-in-gru_set_con.patch ######################################################## # kbuild/module infrastructure fixes ++++++ source-timestamp ++++++ --- /var/tmp/diff_new_pack.8XTxO9/_old 2022-10-14 15:41:14.807788903 +0200 +++ /var/tmp/diff_new_pack.8XTxO9/_new 2022-10-14 15:41:14.811788909 +0200 @@ -1,4 +1,4 @@ -2022-10-03 05:22:49 +0000 -GIT Revision: 47c5c190085ac244fbca316e6944df1bf3c64167 +2022-10-12 09:01:29 +0000 +GIT Revision: 94ab0efe4974370734cc9b5717719c19eb4e2c26 GIT Branch: stable