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 2023-03-10 22:06:52 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kernel-source (Old) and /work/SRC/openSUSE:Factory/.kernel-source.new.31432 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kernel-source" Fri Mar 10 22:06:52 2023 rev:681 rq:1070329 version:6.2.2 Changes: -------- --- /work/SRC/openSUSE:Factory/kernel-source/dtb-aarch64.changes 2023-03-02 23:01:40.130666081 +0100 +++ /work/SRC/openSUSE:Factory/.kernel-source.new.31432/dtb-aarch64.changes 2023-03-10 22:06:53.933001102 +0100 @@ -1,0 +2,122 @@ +Thu Mar 9 07:01:29 CET 2023 - jsl...@suse.cz + +- Disable lockdown. (bsc#1209006) + This somehow doesn't play good wrt to external modules. + When all is ready again, we can revert this revert. +- commit 44ca817 + +------------------------------------------------------------------- +Tue Mar 7 15:24:22 CET 2023 - shung-hsi...@suse.com + +- rpm/group-source-files.pl: Deal with {pre,post}fixed / in location + When the source file location provided with -L is either prefixed or + postfixed with forward slash, the script get stuck in a infinite loop + inside calc_dirs() where $path is an empty string. + user@localhost:/tmp> perl "$HOME/group-source-files.pl" -D devel.files -N nondevel.files -L /usr/src/linux-5.14.21-150500.41/ + ... + path = /usr/src/linux-5.14.21-150500.41/Documentation/Kconfig + path = /usr/src/linux-5.14.21-150500.41/Documentation + path = /usr/src/linux-5.14.21-150500.41 + path = /usr/src + path = /usr + path = + path = + path = + ... # Stuck in an infinite loop + This workarounds the issue by breaking out the loop once path is an + empty string. For a proper fix we'd want something that + filesystem-aware, but this workaround should be enough for the rare + occation that this script is ran manually. + Link: http://mailman.suse.de/mlarch/SuSE/kernel/2023/kernel.2023.03/msg00024.html +- commit 6d65136 + +------------------------------------------------------------------- +Mon Mar 6 16:09:32 CET 2023 - msucha...@suse.de + +- kernel-module-subpackage: Fix expansion with -b parameter (bsc#1208179). + When -b is specified the script is prefixed with KMP_NEEDS_MKINITRD=1 + which sets the variable for a simple command. + However, the script is no longer a simple command. Export the variable + instead. +- commit 152a069 + +------------------------------------------------------------------- +Fri Mar 3 12:24:23 CET 2023 - jsl...@suse.cz + +- Linux 6.2.2 (bsc#1012628). +- USB: core: Don't hold device lock while reading the + "descriptors" sysfs file (bsc#1012628). +- usb: typec: pd: Remove usb_suspend_supported sysfs from sink + PDO (bsc#1012628). +- arm64: dts: uniphier: Fix property name in PXs3 USB node + (bsc#1012628). +- usb: gadget: u_serial: Add null pointer check in gserial_resume + (bsc#1012628). +- USB: serial: option: add support for VW/Skoda "Carstick LTE" + (bsc#1012628). +- usb: dwc3: pci: add support for the Intel Meteor Lake-M + (bsc#1012628). +- wifi: rtw88: usb: drop now unnecessary URB size check + (bsc#1012628). +- wifi: rtw88: usb: send Zero length packets if necessary + (bsc#1012628). +- wifi: rtw88: usb: Set qsel correctly (bsc#1012628). +- scripts/tags.sh: fix incompatibility with PCRE2 (bsc#1012628). +- drm/amd/display: Properly reuse completion structure + (bsc#1012628). +- drm/amd/display: Move DCN314 DOMAIN power control to DMCUB + (bsc#1012628). +- vc_screen: don't clobber return value in vcs_read (bsc#1012628). +- bpf: bpf_fib_lookup should not return neigh in NUD_FAILED state + (bsc#1012628). +- crypto: arm64/sm4-gcm - Fix possible crash in GCM cryption + (bsc#1012628). +- ALSA: hda: cs35l41: Correct error condition handling + (bsc#1012628). +- commit ec730fa + +------------------------------------------------------------------- +Wed Mar 1 13:02:45 CET 2023 - jsl...@suse.cz + +- Update config files. Disable old pcmcia drivers (bsc#1208780). +- commit 789fdf4 + +------------------------------------------------------------------- +Wed Mar 1 12:47:40 CET 2023 - jsl...@suse.cz + +- Update config files. Disable old pcmcia socket drivers (bsc#1208780). +- commit 27af844 + +------------------------------------------------------------------- +Wed Mar 1 09:27:05 CET 2023 - jsl...@suse.cz + +- Delete + patches.suse/char-pcmcia-cm4000_cs-Fix-use-after-free-in-cm4000_f.patch. +- Delete + patches.suse/char-pcmcia-cm4040_cs-Fix-use-after-free-in-reader_f.patch. +- Delete + patches.suse/char-pcmcia-scr24x_cs-Fix-use-after-free-in-scr24x_f.patch. + These drivers are now disabled, so remove the non-upstream patches. See + bsc#1208775. +- commit 03a39b9 + +------------------------------------------------------------------- +Wed Mar 1 09:26:23 CET 2023 - jsl...@suse.cz + +- Update config files. Disable char/pcmcia drivers (bsc#1208775). +- commit a2a5aac + +------------------------------------------------------------------- +Wed Mar 1 09:09:28 CET 2023 - jsl...@suse.cz + +- arm64: efi: Use SMBIOS processor ID to key off Altra quirk + (bsc#1208750). +- commit 533dcdd + +------------------------------------------------------------------- +Tue Feb 28 16:32:23 CET 2023 - sch...@suse.de + +- config: riscv64: enable SPI_SPIDEV and SPI_SLAVE +- commit 8cad76a + +------------------------------------------------------------------- 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.UPPK0x/_old 2023-03-10 22:07:04.465049050 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:04.469049068 +0100 @@ -17,7 +17,7 @@ %define srcversion 6.2 -%define patchversion 6.2.1 +%define patchversion 6.2.2 %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.2.1 +Version: 6.2.2 %if 0%{?is_kotd} -Release: <RELEASE>.g69e0e95 +Release: <RELEASE>.g44ca817 %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.UPPK0x/_old 2023-03-10 22:07:04.593049632 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:04.597049650 +0100 @@ -18,7 +18,7 @@ %define srcversion 6.2 -%define patchversion 6.2.1 +%define patchversion 6.2.2 %define variant %{nil} %define vanilla_only 0 %define compress_modules zstd @@ -111,9 +111,9 @@ Summary: Kernel with 64kb PAGE_SIZE License: GPL-2.0-only Group: System/Kernel -Version: 6.2.1 +Version: 6.2.2 %if 0%{?is_kotd} -Release: <RELEASE>.g69e0e95 +Release: <RELEASE>.g44ca817 %else Release: 0 %endif @@ -240,10 +240,10 @@ Conflicts: libc.so.6()(64bit) %endif Provides: kernel = %version-%source_rel -Provides: kernel-%build_flavor-base-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 -Provides: kernel-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: kernel-%build_flavor-base-srchash-44ca817f15b215421a4c788790dd5351c186d1df +Provides: kernel-srchash-44ca817f15b215421a4c788790dd5351c186d1df # END COMMON DEPS -Provides: %name-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: %name-srchash-44ca817f15b215421a4c788790dd5351c186d1df %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.UPPK0x/_old 2023-03-10 22:07:04.637049833 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:04.653049906 +0100 @@ -18,7 +18,7 @@ %define srcversion 6.2 -%define patchversion 6.2.1 +%define patchversion 6.2.2 %define variant %{nil} %define vanilla_only 0 %define compress_modules zstd @@ -111,9 +111,9 @@ Summary: A Debug Version of the Kernel License: GPL-2.0-only Group: System/Kernel -Version: 6.2.1 +Version: 6.2.2 %if 0%{?is_kotd} -Release: <RELEASE>.g69e0e95 +Release: <RELEASE>.g44ca817 %else Release: 0 %endif @@ -240,10 +240,10 @@ Conflicts: libc.so.6()(64bit) %endif Provides: kernel = %version-%source_rel -Provides: kernel-%build_flavor-base-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 -Provides: kernel-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: kernel-%build_flavor-base-srchash-44ca817f15b215421a4c788790dd5351c186d1df +Provides: kernel-srchash-44ca817f15b215421a4c788790dd5351c186d1df # END COMMON DEPS -Provides: %name-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: %name-srchash-44ca817f15b215421a4c788790dd5351c186d1df %ifarch ppc64 Provides: kernel-kdump = 2.6.28 Obsoletes: kernel-kdump <= 2.6.28 ++++++ kernel-default.spec ++++++ --- /var/tmp/diff_new_pack.UPPK0x/_old 2023-03-10 22:07:04.693050088 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:04.697050106 +0100 @@ -18,7 +18,7 @@ %define srcversion 6.2 -%define patchversion 6.2.1 +%define patchversion 6.2.2 %define variant %{nil} %define vanilla_only 0 %define compress_modules zstd @@ -111,9 +111,9 @@ Summary: The Standard Kernel License: GPL-2.0-only Group: System/Kernel -Version: 6.2.1 +Version: 6.2.2 %if 0%{?is_kotd} -Release: <RELEASE>.g69e0e95 +Release: <RELEASE>.g44ca817 %else Release: 0 %endif @@ -240,10 +240,10 @@ Conflicts: libc.so.6()(64bit) %endif Provides: kernel = %version-%source_rel -Provides: kernel-%build_flavor-base-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 -Provides: kernel-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: kernel-%build_flavor-base-srchash-44ca817f15b215421a4c788790dd5351c186d1df +Provides: kernel-srchash-44ca817f15b215421a4c788790dd5351c186d1df # END COMMON DEPS -Provides: %name-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: %name-srchash-44ca817f15b215421a4c788790dd5351c186d1df %ifarch %ix86 Provides: kernel-smp = 2.6.17 Obsoletes: kernel-smp <= 2.6.17 ++++++ kernel-docs.spec ++++++ --- /var/tmp/diff_new_pack.UPPK0x/_old 2023-03-10 22:07:04.733050270 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:04.737050288 +0100 @@ -17,7 +17,7 @@ %define srcversion 6.2 -%define patchversion 6.2.1 +%define patchversion 6.2.2 %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.2.1 +Version: 6.2.2 %if 0%{?is_kotd} -Release: <RELEASE>.g69e0e95 +Release: <RELEASE>.g44ca817 %else Release: 0 %endif @@ -67,7 +67,7 @@ %endif URL: https://www.kernel.org/ Provides: %name = %version-%source_rel -Provides: %name-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: %name-srchash-44ca817f15b215421a4c788790dd5351c186d1df 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.UPPK0x/_old 2023-03-10 22:07:04.769050433 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:04.773050451 +0100 @@ -18,7 +18,7 @@ %define srcversion 6.2 -%define patchversion 6.2.1 +%define patchversion 6.2.2 %define variant %{nil} %define vanilla_only 0 %define compress_modules zstd @@ -111,9 +111,9 @@ Summary: The Small Developer Kernel for KVM License: GPL-2.0-only Group: System/Kernel -Version: 6.2.1 +Version: 6.2.2 %if 0%{?is_kotd} -Release: <RELEASE>.g69e0e95 +Release: <RELEASE>.g44ca817 %else Release: 0 %endif @@ -240,10 +240,10 @@ Conflicts: libc.so.6()(64bit) %endif Provides: kernel = %version-%source_rel -Provides: kernel-%build_flavor-base-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 -Provides: kernel-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: kernel-%build_flavor-base-srchash-44ca817f15b215421a4c788790dd5351c186d1df +Provides: kernel-srchash-44ca817f15b215421a4c788790dd5351c186d1df # END COMMON DEPS -Provides: %name-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: %name-srchash-44ca817f15b215421a4c788790dd5351c186d1df %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.UPPK0x/_old 2023-03-10 22:07:04.837050743 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:04.841050761 +0100 @@ -19,7 +19,7 @@ #!BuildIgnore: post-build-checks -%define patchversion 6.2.1 +%define patchversion 6.2.2 %define variant %{nil} %define vanilla_only 0 @@ -45,7 +45,7 @@ %endif %endif %endif -BuildRequires: kernel%kernel_flavor-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +BuildRequires: kernel%kernel_flavor-srchash-44ca817f15b215421a4c788790dd5351c186d1df %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.2.1 +Version: 6.2.2 %if 0%{?is_kotd} -Release: <RELEASE>.g69e0e95 +Release: <RELEASE>.g44ca817 %else Release: 0 %endif ++++++ kernel-obs-qa.spec ++++++ --- /var/tmp/diff_new_pack.UPPK0x/_old 2023-03-10 22:07:04.861050853 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:04.865050871 +0100 @@ -17,7 +17,7 @@ # needsrootforbuild -%define patchversion 6.2.1 +%define patchversion 6.2.2 %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.2.1 +Version: 6.2.2 %if 0%{?is_kotd} -Release: <RELEASE>.g69e0e95 +Release: <RELEASE>.g44ca817 %else Release: 0 %endif ++++++ kernel-pae.spec ++++++ --- /var/tmp/diff_new_pack.UPPK0x/_old 2023-03-10 22:07:04.889050980 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:04.897051016 +0100 @@ -18,7 +18,7 @@ %define srcversion 6.2 -%define patchversion 6.2.1 +%define patchversion 6.2.2 %define variant %{nil} %define vanilla_only 0 %define compress_modules zstd @@ -111,9 +111,9 @@ Summary: Kernel with PAE Support License: GPL-2.0-only Group: System/Kernel -Version: 6.2.1 +Version: 6.2.2 %if 0%{?is_kotd} -Release: <RELEASE>.g69e0e95 +Release: <RELEASE>.g44ca817 %else Release: 0 %endif @@ -240,10 +240,10 @@ Conflicts: libc.so.6()(64bit) %endif Provides: kernel = %version-%source_rel -Provides: kernel-%build_flavor-base-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 -Provides: kernel-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: kernel-%build_flavor-base-srchash-44ca817f15b215421a4c788790dd5351c186d1df +Provides: kernel-srchash-44ca817f15b215421a4c788790dd5351c186d1df # END COMMON DEPS -Provides: %name-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: %name-srchash-44ca817f15b215421a4c788790dd5351c186d1df %ifarch %ix86 Provides: kernel-bigsmp = 2.6.17 Obsoletes: kernel-bigsmp <= 2.6.17 ++++++ kernel-source.spec ++++++ --- /var/tmp/diff_new_pack.UPPK0x/_old 2023-03-10 22:07:04.921051125 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:04.929051162 +0100 @@ -17,7 +17,7 @@ %define srcversion 6.2 -%define patchversion 6.2.1 +%define patchversion 6.2.2 %define variant %{nil} %define vanilla_only 0 @@ -31,9 +31,9 @@ %endif Name: kernel-source -Version: 6.2.1 +Version: 6.2.2 %if 0%{?is_kotd} -Release: <RELEASE>.g69e0e95 +Release: <RELEASE>.g44ca817 %else Release: 0 %endif @@ -50,7 +50,7 @@ BuildRequires: sed Requires(post): coreutils sed Provides: %name = %version-%source_rel -Provides: %name-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: %name-srchash-44ca817f15b215421a4c788790dd5351c186d1df 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.UPPK0x/_old 2023-03-10 22:07:04.969051344 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:04.973051362 +0100 @@ -24,10 +24,10 @@ Summary: Kernel Symbol Versions (modversions) License: GPL-2.0-only Group: Development/Sources -Version: 6.2.1 +Version: 6.2.2 %if %using_buildservice %if 0%{?is_kotd} -Release: <RELEASE>.g69e0e95 +Release: <RELEASE>.g44ca817 %else Release: 0 %endif @@ -52,7 +52,7 @@ %endif Requires: pesign-obs-integration Provides: %name = %version-%source_rel -Provides: %name-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: %name-srchash-44ca817f15b215421a4c788790dd5351c186d1df Provides: multiversion(kernel) Source: README.KSYMS Requires: kernel-devel%variant = %version-%source_rel ++++++ kernel-vanilla.spec ++++++ --- /var/tmp/diff_new_pack.UPPK0x/_old 2023-03-10 22:07:05.001051490 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:05.005051508 +0100 @@ -18,7 +18,7 @@ %define srcversion 6.2 -%define patchversion 6.2.1 +%define patchversion 6.2.2 %define variant %{nil} %define vanilla_only 0 %define compress_modules zstd @@ -111,9 +111,9 @@ Summary: The Standard Kernel - without any SUSE patches License: GPL-2.0-only Group: System/Kernel -Version: 6.2.1 +Version: 6.2.2 %if 0%{?is_kotd} -Release: <RELEASE>.g69e0e95 +Release: <RELEASE>.g44ca817 %else Release: 0 %endif @@ -240,10 +240,10 @@ Conflicts: libc.so.6()(64bit) %endif Provides: kernel = %version-%source_rel -Provides: kernel-%build_flavor-base-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 -Provides: kernel-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: kernel-%build_flavor-base-srchash-44ca817f15b215421a4c788790dd5351c186d1df +Provides: kernel-srchash-44ca817f15b215421a4c788790dd5351c186d1df # END COMMON DEPS -Provides: %name-srchash-69e0e95118afe307ac9da57c2cc7f80673a41423 +Provides: %name-srchash-44ca817f15b215421a4c788790dd5351c186d1df %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 ++++++ 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 2023-02-25 23:38:51.000000000 +0100 +++ new/config/arm64/default 2023-03-09 07:06:13.000000000 +0100 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm64 6.2.0 Kernel Configuration +# Linux/arm64 6.2.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -12194,7 +12194,6 @@ # CONFIG_SECURITY_SAFESETID is not set CONFIG_SECURITY_LOCKDOWN_LSM=y CONFIG_SECURITY_LOCKDOWN_LSM_EARLY=y -CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT=y CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y # CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set # CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY 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 2023-02-25 23:38:51.000000000 +0100 +++ new/config/armv6hl/default 2023-03-09 07:06:13.000000000 +0100 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 6.2.0 Kernel Configuration +# Linux/arm 6.2.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -8371,7 +8371,6 @@ # CONFIG_SECURITY_SAFESETID is not set CONFIG_SECURITY_LOCKDOWN_LSM=y CONFIG_SECURITY_LOCKDOWN_LSM_EARLY=y -# CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT is not set CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y # CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set # CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY 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 2023-02-25 23:38:51.000000000 +0100 +++ new/config/armv7hl/default 2023-03-09 07:06:13.000000000 +0100 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 6.2.0 Kernel Configuration +# Linux/arm 6.2.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -11765,7 +11765,6 @@ # CONFIG_SECURITY_SAFESETID is not set CONFIG_SECURITY_LOCKDOWN_LSM=y CONFIG_SECURITY_LOCKDOWN_LSM_EARLY=y -# CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT is not set CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y # CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set # CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY 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 2023-02-25 23:38:51.000000000 +0100 +++ new/config/i386/pae 2023-03-09 07:06:13.000000000 +0100 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/i386 6.2.0 Kernel Configuration +# Linux/i386 6.2.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -1928,8 +1928,8 @@ CONFIG_BT_HCIBCM4377=m CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBFUSB=m -CONFIG_BT_HCIDTL1=m -CONFIG_BT_HCIBT3C=m +# CONFIG_BT_HCIDTL1 is not set +# CONFIG_BT_HCIBT3C is not set CONFIG_BT_HCIBLUECARD=m CONFIG_BT_HCIVHCI=m CONFIG_BT_MRVL=m @@ -2188,8 +2188,8 @@ CONFIG_YENTA_TI=y CONFIG_YENTA_ENE_TUNE=y CONFIG_YENTA_TOSHIBA=y -CONFIG_PD6729=m -CONFIG_I82092=m +# CONFIG_PD6729 is not set +# CONFIG_I82092 is not set CONFIG_PCCARD_NONSTATIC=y CONFIG_RAPIDIO=m CONFIG_RAPIDIO_TSI721=m @@ -2544,7 +2544,7 @@ CONFIG_PARPORT_SERIAL=m CONFIG_PARPORT_PC_FIFO=y CONFIG_PARPORT_PC_SUPERIO=y -CONFIG_PARPORT_PC_PCMCIA=m +# CONFIG_PARPORT_PC_PCMCIA is not set # CONFIG_PARPORT_GSC is not set CONFIG_PARPORT_AX88796=m CONFIG_PARPORT_1284=y @@ -2875,10 +2875,10 @@ CONFIG_SCSI_VIRTIO=m CONFIG_SCSI_CHELSIO_FCOE=m CONFIG_SCSI_LOWLEVEL_PCMCIA=y -CONFIG_PCMCIA_AHA152X=m +# CONFIG_PCMCIA_AHA152X is not set # CONFIG_PCMCIA_FDOMAIN is not set CONFIG_PCMCIA_NINJA_SCSI=m -CONFIG_PCMCIA_QLOGIC=m +# CONFIG_PCMCIA_QLOGIC is not set CONFIG_PCMCIA_SYM53C500=m CONFIG_SCSI_DH=y CONFIG_SCSI_DH_RDAC=m @@ -3159,7 +3159,7 @@ CONFIG_MDIO=m CONFIG_NET_VENDOR_3COM=y CONFIG_PCMCIA_3C574=m -CONFIG_PCMCIA_3C589=m +# CONFIG_PCMCIA_3C589 is not set CONFIG_VORTEX=m CONFIG_TYPHOON=m CONFIG_NET_VENDOR_ADAPTEC=y @@ -3264,7 +3264,7 @@ CONFIG_NET_VENDOR_EZCHIP=y CONFIG_EZCHIP_NPS_MANAGEMENT_ENET=m CONFIG_NET_VENDOR_FUJITSU=y -CONFIG_PCMCIA_FMVJ18X=m +# CONFIG_PCMCIA_FMVJ18X is not set CONFIG_NET_VENDOR_FUNGIBLE=y CONFIG_FUN_CORE=m CONFIG_FUN_ETH=m @@ -3376,7 +3376,7 @@ CONFIG_NFP_NET_IPSEC=y # CONFIG_NFP_DEBUG is not set CONFIG_NET_VENDOR_8390=y -CONFIG_PCMCIA_AXNET=m +# CONFIG_PCMCIA_AXNET is not set CONFIG_NE2K_PCI=m CONFIG_PCMCIA_PCNET=m CONFIG_NET_VENDOR_NVIDIA=y @@ -3445,7 +3445,7 @@ CONFIG_SFC_SIENA_SRIOV=y CONFIG_SFC_SIENA_MCDI_LOGGING=y CONFIG_NET_VENDOR_SMSC=y -CONFIG_PCMCIA_SMC91C92=m +# CONFIG_PCMCIA_SMC91C92 is not set CONFIG_EPIC100=m CONFIG_SMSC911X=m # CONFIG_SMSC911X_ARCH_HOOKS is not set @@ -3489,7 +3489,7 @@ CONFIG_XILINX_AXI_EMAC=m CONFIG_XILINX_LL_TEMAC=m CONFIG_NET_VENDOR_XIRCOM=y -CONFIG_PCMCIA_XIRC2PS=m +# CONFIG_PCMCIA_XIRC2PS is not set CONFIG_FDDI=m CONFIG_DEFXX=m CONFIG_SKFP=m @@ -3784,7 +3784,7 @@ CONFIG_WLAN_VENDOR_ATMEL=y CONFIG_ATMEL=m CONFIG_PCI_ATMEL=m -CONFIG_PCMCIA_ATMEL=m +# CONFIG_PCMCIA_ATMEL is not set CONFIG_AT76C50X_USB=m CONFIG_WLAN_VENDOR_BROADCOM=y CONFIG_B43=m @@ -3829,7 +3829,7 @@ # CONFIG_BRCMDBG is not set CONFIG_WLAN_VENDOR_CISCO=y CONFIG_AIRO=m -CONFIG_AIRO_CS=m +# CONFIG_AIRO_CS is not set CONFIG_WLAN_VENDOR_INTEL=y CONFIG_IPW2100=m CONFIG_IPW2100_MONITOR=y @@ -3873,7 +3873,7 @@ CONFIG_HOSTAP_FIRMWARE_NVRAM=y CONFIG_HOSTAP_PLX=m CONFIG_HOSTAP_PCI=m -CONFIG_HOSTAP_CS=m +# CONFIG_HOSTAP_CS is not set CONFIG_HERMES=m CONFIG_HERMES_PRISM=y CONFIG_HERMES_CACHE_FW_ON_INIT=y @@ -3881,8 +3881,8 @@ CONFIG_TMD_HERMES=m CONFIG_NORTEL_HERMES=m CONFIG_PCI_HERMES=m -CONFIG_PCMCIA_HERMES=m -CONFIG_PCMCIA_SPECTRUM=m +# CONFIG_PCMCIA_HERMES is not set +# CONFIG_PCMCIA_SPECTRUM is not set CONFIG_ORINOCO_USB=m CONFIG_P54_COMMON=m CONFIG_P54_USB=m @@ -3892,7 +3892,7 @@ CONFIG_WLAN_VENDOR_MARVELL=y CONFIG_LIBERTAS=m CONFIG_LIBERTAS_USB=m -CONFIG_LIBERTAS_CS=m +# CONFIG_LIBERTAS_CS is not set CONFIG_LIBERTAS_SDIO=m # CONFIG_LIBERTAS_SPI is not set # CONFIG_LIBERTAS_DEBUG is not set @@ -4548,10 +4548,10 @@ # # PCMCIA character devices # -CONFIG_SYNCLINK_CS=m -CONFIG_CARDMAN_4000=m -CONFIG_CARDMAN_4040=m -CONFIG_SCR24X=m +# CONFIG_SYNCLINK_CS is not set +# CONFIG_CARDMAN_4000 is not set +# CONFIG_CARDMAN_4040 is not set +# CONFIG_SCR24X is not set CONFIG_IPWIRELESS=m # end of PCMCIA character devices @@ -7195,8 +7195,8 @@ CONFIG_SND_FIREWIRE_MOTU=m CONFIG_SND_FIREFACE=m CONFIG_SND_PCMCIA=y -CONFIG_SND_VXPOCKET=m -CONFIG_SND_PDAUDIOCF=m +# CONFIG_SND_VXPOCKET is not set +# CONFIG_SND_PDAUDIOCF is not set CONFIG_SND_SOC=m CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y CONFIG_SND_SOC_COMPRESS=y @@ -7877,7 +7877,7 @@ CONFIG_USB_U132_HCD=m CONFIG_USB_SL811_HCD=m # CONFIG_USB_SL811_HCD_ISO is not set -CONFIG_USB_SL811_CS=m +# CONFIG_USB_SL811_CS is not set CONFIG_USB_R8A66597_HCD=m CONFIG_USB_HCD_BCMA=m CONFIG_USB_HCD_SSB=m diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/ppc64/default new/config/ppc64/default --- old/config/ppc64/default 2023-02-25 23:38:51.000000000 +0100 +++ new/config/ppc64/default 2023-03-09 07:06:13.000000000 +0100 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/powerpc 6.2.0 Kernel Configuration +# Linux/powerpc 6.2.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/ppc64le/default new/config/ppc64le/default --- old/config/ppc64le/default 2023-02-25 23:38:51.000000000 +0100 +++ new/config/ppc64le/default 2023-03-09 07:06:13.000000000 +0100 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/powerpc 6.2.0 Kernel Configuration +# Linux/powerpc 6.2.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/riscv64/default new/config/riscv64/default --- old/config/riscv64/default 2023-02-25 23:38:51.000000000 +0100 +++ new/config/riscv64/default 2023-03-09 07:06:13.000000000 +0100 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/riscv 6.2.0 Kernel Configuration +# Linux/riscv 6.2.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -1607,8 +1607,8 @@ CONFIG_BT_HCIBCM4377=m CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBFUSB=m -CONFIG_BT_HCIDTL1=m -CONFIG_BT_HCIBT3C=m +# CONFIG_BT_HCIDTL1 is not set +# CONFIG_BT_HCIBT3C is not set CONFIG_BT_HCIBLUECARD=m CONFIG_BT_HCIVHCI=m CONFIG_BT_MRVL=m @@ -1855,8 +1855,8 @@ CONFIG_YENTA_TI=y CONFIG_YENTA_ENE_TUNE=y CONFIG_YENTA_TOSHIBA=y -CONFIG_PD6729=m -CONFIG_I82092=m +# CONFIG_PD6729 is not set +# CONFIG_I82092 is not set CONFIG_PCCARD_NONSTATIC=y CONFIG_RAPIDIO=m CONFIG_RAPIDIO_TSI721=m @@ -2489,9 +2489,9 @@ CONFIG_SCSI_VIRTIO=m CONFIG_SCSI_CHELSIO_FCOE=m CONFIG_SCSI_LOWLEVEL_PCMCIA=y -CONFIG_PCMCIA_AHA152X=m +# CONFIG_PCMCIA_AHA152X is not set CONFIG_PCMCIA_FDOMAIN=m -CONFIG_PCMCIA_QLOGIC=m +# CONFIG_PCMCIA_QLOGIC is not set CONFIG_PCMCIA_SYM53C500=m CONFIG_SCSI_DH=y CONFIG_SCSI_DH_RDAC=m @@ -2810,7 +2810,7 @@ CONFIG_MDIO=m CONFIG_NET_VENDOR_3COM=y CONFIG_PCMCIA_3C574=m -CONFIG_PCMCIA_3C589=m +# CONFIG_PCMCIA_3C589 is not set CONFIG_VORTEX=m CONFIG_TYPHOON=m CONFIG_NET_VENDOR_ADAPTEC=y @@ -2921,7 +2921,7 @@ CONFIG_NET_VENDOR_EZCHIP=y CONFIG_EZCHIP_NPS_MANAGEMENT_ENET=m CONFIG_NET_VENDOR_FUJITSU=y -CONFIG_PCMCIA_FMVJ18X=m +# CONFIG_PCMCIA_FMVJ18X is not set CONFIG_NET_VENDOR_FUNGIBLE=y CONFIG_FUN_CORE=m CONFIG_FUN_ETH=m @@ -3029,7 +3029,7 @@ CONFIG_NFP_NET_IPSEC=y # CONFIG_NFP_DEBUG is not set CONFIG_NET_VENDOR_8390=y -CONFIG_PCMCIA_AXNET=m +# CONFIG_PCMCIA_AXNET is not set CONFIG_NE2K_PCI=m CONFIG_PCMCIA_PCNET=m CONFIG_NET_VENDOR_NVIDIA=y @@ -3102,7 +3102,7 @@ CONFIG_SFC_SIENA_SRIOV=y CONFIG_SFC_SIENA_MCDI_LOGGING=y CONFIG_NET_VENDOR_SMSC=y -CONFIG_PCMCIA_SMC91C92=m +# CONFIG_PCMCIA_SMC91C92 is not set CONFIG_EPIC100=m CONFIG_SMSC911X=m # CONFIG_SMSC911X_ARCH_HOOKS is not set @@ -3148,7 +3148,7 @@ CONFIG_XILINX_AXI_EMAC=m CONFIG_XILINX_LL_TEMAC=m CONFIG_NET_VENDOR_XIRCOM=y -CONFIG_PCMCIA_XIRC2PS=m +# CONFIG_PCMCIA_XIRC2PS is not set CONFIG_FDDI=m CONFIG_DEFXX=m CONFIG_SKFP=m @@ -3447,7 +3447,7 @@ CONFIG_WLAN_VENDOR_ATMEL=y CONFIG_ATMEL=m CONFIG_PCI_ATMEL=m -CONFIG_PCMCIA_ATMEL=m +# CONFIG_PCMCIA_ATMEL is not set CONFIG_AT76C50X_USB=m CONFIG_WLAN_VENDOR_BROADCOM=y CONFIG_B43=m @@ -3491,7 +3491,7 @@ # CONFIG_BRCM_TRACING is not set # CONFIG_BRCMDBG is not set CONFIG_WLAN_VENDOR_CISCO=y -CONFIG_AIRO_CS=m +# CONFIG_AIRO_CS is not set CONFIG_WLAN_VENDOR_INTEL=y CONFIG_IPW2100=m CONFIG_IPW2100_MONITOR=y @@ -3535,7 +3535,7 @@ CONFIG_HOSTAP_FIRMWARE_NVRAM=y CONFIG_HOSTAP_PLX=m CONFIG_HOSTAP_PCI=m -CONFIG_HOSTAP_CS=m +# CONFIG_HOSTAP_CS is not set CONFIG_HERMES=m CONFIG_HERMES_PRISM=y CONFIG_HERMES_CACHE_FW_ON_INIT=y @@ -3543,8 +3543,8 @@ CONFIG_TMD_HERMES=m CONFIG_NORTEL_HERMES=m CONFIG_PCI_HERMES=m -CONFIG_PCMCIA_HERMES=m -CONFIG_PCMCIA_SPECTRUM=m +# CONFIG_PCMCIA_HERMES is not set +# CONFIG_PCMCIA_SPECTRUM is not set CONFIG_ORINOCO_USB=m CONFIG_P54_COMMON=m CONFIG_P54_USB=m @@ -3554,7 +3554,7 @@ CONFIG_WLAN_VENDOR_MARVELL=y CONFIG_LIBERTAS=m CONFIG_LIBERTAS_USB=m -CONFIG_LIBERTAS_CS=m +# CONFIG_LIBERTAS_CS is not set CONFIG_LIBERTAS_SDIO=m # CONFIG_LIBERTAS_SPI is not set # CONFIG_LIBERTAS_DEBUG is not set @@ -4186,10 +4186,10 @@ # # PCMCIA character devices # -CONFIG_SYNCLINK_CS=m -CONFIG_CARDMAN_4000=m -CONFIG_CARDMAN_4040=m -CONFIG_SCR24X=m +# CONFIG_SYNCLINK_CS is not set +# CONFIG_CARDMAN_4000 is not set +# CONFIG_CARDMAN_4040 is not set +# CONFIG_SCR24X is not set CONFIG_IPWIRELESS=m # end of PCMCIA character devices @@ -4383,10 +4383,12 @@ # # SPI Protocol Masters # -# CONFIG_SPI_SPIDEV is not set +CONFIG_SPI_SPIDEV=m CONFIG_SPI_LOOPBACK_TEST=m # CONFIG_SPI_TLE62X0 is not set -# CONFIG_SPI_SLAVE is not set +CONFIG_SPI_SLAVE=y +CONFIG_SPI_SLAVE_TIME=m +CONFIG_SPI_SLAVE_SYSTEM_CONTROL=m CONFIG_SPI_DYNAMIC=y CONFIG_SPMI=m # CONFIG_SPMI_HISI3670 is not set @@ -6511,8 +6513,8 @@ CONFIG_SND_FIREWIRE_MOTU=m CONFIG_SND_FIREFACE=m CONFIG_SND_PCMCIA=y -CONFIG_SND_VXPOCKET=m -CONFIG_SND_PDAUDIOCF=m +# CONFIG_SND_VXPOCKET is not set +# CONFIG_SND_PDAUDIOCF is not set CONFIG_SND_SOC=m CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y CONFIG_SND_SOC_COMPRESS=y @@ -6988,7 +6990,7 @@ CONFIG_USB_U132_HCD=m CONFIG_USB_SL811_HCD=m # CONFIG_USB_SL811_HCD_ISO is not set -CONFIG_USB_SL811_CS=m +# CONFIG_USB_SL811_CS is not set CONFIG_USB_R8A66597_HCD=m CONFIG_USB_HCD_BCMA=m CONFIG_USB_HCD_SSB=m @@ -9202,7 +9204,6 @@ # CONFIG_SECURITY_SAFESETID is not set CONFIG_SECURITY_LOCKDOWN_LSM=y CONFIG_SECURITY_LOCKDOWN_LSM_EARLY=y -# CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT is not set CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y # CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set # CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY 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 2023-02-25 23:38:51.000000000 +0100 +++ new/config/s390x/default 2023-03-09 07:06:13.000000000 +0100 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/s390 6.2.0 Kernel Configuration +# Linux/s390 6.2.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/s390x/zfcpdump new/config/s390x/zfcpdump --- old/config/s390x/zfcpdump 2023-02-25 23:38:51.000000000 +0100 +++ new/config/s390x/zfcpdump 2023-03-09 07:06:13.000000000 +0100 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/s390 6.2.0 Kernel Configuration +# Linux/s390 6.2.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y 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 2023-02-25 23:38:51.000000000 +0100 +++ new/config/x86_64/default 2023-03-09 07:06:13.000000000 +0100 @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86_64 6.2.0 Kernel Configuration +# Linux/x86_64 6.2.1 Kernel Configuration # CONFIG_CC_VERSION_TEXT="gcc (scripts/dummy-tools/gcc)" CONFIG_CC_IS_GCC=y @@ -2017,8 +2017,8 @@ CONFIG_BT_HCIBCM4377=m CONFIG_BT_HCIBPA10X=m CONFIG_BT_HCIBFUSB=m -CONFIG_BT_HCIDTL1=m -CONFIG_BT_HCIBT3C=m +# CONFIG_BT_HCIDTL1 is not set +# CONFIG_BT_HCIBT3C is not set CONFIG_BT_HCIBLUECARD=m CONFIG_BT_HCIVHCI=m CONFIG_BT_MRVL=m @@ -2268,8 +2268,8 @@ CONFIG_YENTA_TI=y CONFIG_YENTA_ENE_TUNE=y CONFIG_YENTA_TOSHIBA=y -CONFIG_PD6729=m -CONFIG_I82092=m +# CONFIG_PD6729 is not set +# CONFIG_I82092 is not set CONFIG_PCCARD_NONSTATIC=y CONFIG_RAPIDIO=m CONFIG_RAPIDIO_TSI721=m @@ -2607,7 +2607,7 @@ CONFIG_PARPORT_SERIAL=m CONFIG_PARPORT_PC_FIFO=y CONFIG_PARPORT_PC_SUPERIO=y -CONFIG_PARPORT_PC_PCMCIA=m +# CONFIG_PARPORT_PC_PCMCIA is not set # CONFIG_PARPORT_GSC is not set CONFIG_PARPORT_AX88796=m CONFIG_PARPORT_1284=y @@ -2933,9 +2933,9 @@ CONFIG_SCSI_VIRTIO=m CONFIG_SCSI_CHELSIO_FCOE=m CONFIG_SCSI_LOWLEVEL_PCMCIA=y -CONFIG_PCMCIA_AHA152X=m +# CONFIG_PCMCIA_AHA152X is not set # CONFIG_PCMCIA_FDOMAIN is not set -CONFIG_PCMCIA_QLOGIC=m +# CONFIG_PCMCIA_QLOGIC is not set CONFIG_PCMCIA_SYM53C500=m CONFIG_SCSI_DH=y CONFIG_SCSI_DH_RDAC=m @@ -3251,7 +3251,7 @@ CONFIG_MDIO=m CONFIG_NET_VENDOR_3COM=y CONFIG_PCMCIA_3C574=m -CONFIG_PCMCIA_3C589=m +# CONFIG_PCMCIA_3C589 is not set CONFIG_VORTEX=m CONFIG_TYPHOON=m CONFIG_NET_VENDOR_ADAPTEC=y @@ -3361,7 +3361,7 @@ # CONFIG_TSNEP_SELFTESTS is not set CONFIG_NET_VENDOR_EZCHIP=y CONFIG_NET_VENDOR_FUJITSU=y -CONFIG_PCMCIA_FMVJ18X=m +# CONFIG_PCMCIA_FMVJ18X is not set CONFIG_NET_VENDOR_FUNGIBLE=y CONFIG_FUN_CORE=m CONFIG_FUN_ETH=m @@ -3475,7 +3475,7 @@ CONFIG_NFP_NET_IPSEC=y # CONFIG_NFP_DEBUG is not set CONFIG_NET_VENDOR_8390=y -CONFIG_PCMCIA_AXNET=m +# CONFIG_PCMCIA_AXNET is not set CONFIG_NE2K_PCI=m CONFIG_PCMCIA_PCNET=m CONFIG_NET_VENDOR_NVIDIA=y @@ -3543,7 +3543,7 @@ CONFIG_SFC_SIENA_SRIOV=y CONFIG_SFC_SIENA_MCDI_LOGGING=y CONFIG_NET_VENDOR_SMSC=y -CONFIG_PCMCIA_SMC91C92=m +# CONFIG_PCMCIA_SMC91C92 is not set CONFIG_EPIC100=m CONFIG_SMSC911X=m # CONFIG_SMSC911X_ARCH_HOOKS is not set @@ -3587,7 +3587,7 @@ CONFIG_XILINX_AXI_EMAC=m CONFIG_XILINX_LL_TEMAC=m CONFIG_NET_VENDOR_XIRCOM=y -CONFIG_PCMCIA_XIRC2PS=m +# CONFIG_PCMCIA_XIRC2PS is not set CONFIG_FDDI=m CONFIG_DEFXX=m CONFIG_SKFP=m @@ -3872,7 +3872,7 @@ CONFIG_WLAN_VENDOR_ATMEL=y CONFIG_ATMEL=m CONFIG_PCI_ATMEL=m -CONFIG_PCMCIA_ATMEL=m +# CONFIG_PCMCIA_ATMEL is not set CONFIG_AT76C50X_USB=m CONFIG_WLAN_VENDOR_BROADCOM=y CONFIG_B43=m @@ -3917,7 +3917,7 @@ # CONFIG_BRCMDBG is not set CONFIG_WLAN_VENDOR_CISCO=y CONFIG_AIRO=m -CONFIG_AIRO_CS=m +# CONFIG_AIRO_CS is not set CONFIG_WLAN_VENDOR_INTEL=y CONFIG_IPW2100=m CONFIG_IPW2100_MONITOR=y @@ -3961,7 +3961,7 @@ CONFIG_HOSTAP_FIRMWARE_NVRAM=y CONFIG_HOSTAP_PLX=m CONFIG_HOSTAP_PCI=m -CONFIG_HOSTAP_CS=m +# CONFIG_HOSTAP_CS is not set CONFIG_HERMES=m CONFIG_HERMES_PRISM=y CONFIG_HERMES_CACHE_FW_ON_INIT=y @@ -3969,8 +3969,8 @@ CONFIG_TMD_HERMES=m CONFIG_NORTEL_HERMES=m CONFIG_PCI_HERMES=m -CONFIG_PCMCIA_HERMES=m -CONFIG_PCMCIA_SPECTRUM=m +# CONFIG_PCMCIA_HERMES is not set +# CONFIG_PCMCIA_SPECTRUM is not set CONFIG_ORINOCO_USB=m CONFIG_P54_COMMON=m CONFIG_P54_USB=m @@ -3980,7 +3980,7 @@ CONFIG_WLAN_VENDOR_MARVELL=y CONFIG_LIBERTAS=m CONFIG_LIBERTAS_USB=m -CONFIG_LIBERTAS_CS=m +# CONFIG_LIBERTAS_CS is not set CONFIG_LIBERTAS_SDIO=m # CONFIG_LIBERTAS_SPI is not set # CONFIG_LIBERTAS_DEBUG is not set @@ -4617,10 +4617,10 @@ # # PCMCIA character devices # -CONFIG_SYNCLINK_CS=m -CONFIG_CARDMAN_4000=m -CONFIG_CARDMAN_4040=m -CONFIG_SCR24X=m +# CONFIG_SYNCLINK_CS is not set +# CONFIG_CARDMAN_4000 is not set +# CONFIG_CARDMAN_4040 is not set +# CONFIG_SCR24X is not set CONFIG_IPWIRELESS=m # end of PCMCIA character devices @@ -7014,8 +7014,8 @@ CONFIG_SND_FIREWIRE_MOTU=m CONFIG_SND_FIREFACE=m CONFIG_SND_PCMCIA=y -CONFIG_SND_VXPOCKET=m -CONFIG_SND_PDAUDIOCF=m +# CONFIG_SND_VXPOCKET is not set +# CONFIG_SND_PDAUDIOCF is not set CONFIG_SND_SOC=m CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y CONFIG_SND_SOC_COMPRESS=y @@ -7710,7 +7710,7 @@ CONFIG_USB_U132_HCD=m CONFIG_USB_SL811_HCD=m # CONFIG_USB_SL811_HCD_ISO is not set -CONFIG_USB_SL811_CS=m +# CONFIG_USB_SL811_CS is not set CONFIG_USB_R8A66597_HCD=m CONFIG_USB_HCD_BCMA=m CONFIG_USB_HCD_SSB=m @@ -10281,7 +10281,6 @@ # CONFIG_SECURITY_SAFESETID is not set CONFIG_SECURITY_LOCKDOWN_LSM=y CONFIG_SECURITY_LOCKDOWN_LSM_EARLY=y -CONFIG_LOCK_DOWN_IN_EFI_SECURE_BOOT=y CONFIG_LOCK_DOWN_KERNEL_FORCE_NONE=y # CONFIG_LOCK_DOWN_KERNEL_FORCE_INTEGRITY is not set # CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY is not set ++++++ group-source-files.pl ++++++ --- /var/tmp/diff_new_pack.UPPK0x/_old 2023-03-10 22:07:05.693054640 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:05.697054658 +0100 @@ -66,7 +66,7 @@ do { $path =~ s{/[^/]+$}{}; $dirs{$path} = 1; - } while ($path ne $base); + } while ($path ne $base and $path ne ""); # This loop also makes sure that $base itself is included. } ++++++ kernel-module-subpackage ++++++ --- /var/tmp/diff_new_pack.UPPK0x/_old 2023-03-10 22:07:05.857055387 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:05.861055405 +0100 @@ -82,23 +82,28 @@ ' $spec ) %pre -n %{-n*}-kmp-%1 -%{-b:KMP_NEEDS_MKINITRD=1} /usr/lib/module-init-tools/kernel-scriptlets/kmp-pre --name "%{-n*}-kmp-%1" \ +%{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} +/usr/lib/module-init-tools/kernel-scriptlets/kmp-pre --name "%{-n*}-kmp-%1" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --flavor "%1" --usrmerged "0%{?usrmerged}" "$@" %post -n %{-n*}-kmp-%1 -%{-b:KMP_NEEDS_MKINITRD=1} /usr/lib/module-init-tools/kernel-scriptlets/kmp-post --name "%{-n*}-kmp-%1" \ +%{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} +/usr/lib/module-init-tools/kernel-scriptlets/kmp-post --name "%{-n*}-kmp-%1" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --flavor "%1" --usrmerged "0%{?usrmerged}" "$@" %preun -n %{-n*}-kmp-%1 -%{-b:KMP_NEEDS_MKINITRD=1} %run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-preun --name "%{-n*}-kmp-%1" \ +%{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} +%run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-preun --name "%{-n*}-kmp-%1" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --flavor "%1" --usrmerged "0%{?usrmerged}" "$@" %postun -n %{-n*}-kmp-%1 -%{-b:KMP_NEEDS_MKINITRD=1} %run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-postun --name "%{-n*}-kmp-%1" \ +%{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} +%run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-postun --name "%{-n*}-kmp-%1" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --flavor "%1" --usrmerged "0%{?usrmerged}" "$@" %posttrans -n %{-n*}-kmp-%1 -%{-b:KMP_NEEDS_MKINITRD=1} /usr/lib/module-init-tools/kernel-scriptlets/kmp-posttrans --name "%{-n*}-kmp-%1" \ +%{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} +/usr/lib/module-init-tools/kernel-scriptlets/kmp-posttrans --name "%{-n*}-kmp-%1" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --flavor "%1" --usrmerged "0%{?usrmerged}" "$@" %files -n %{-n*}-kmp-%1 ++++++ patches.kernel.org.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-001-ALSA-hda-cs35l41-Correct-error-condition-handli.patch new/patches.kernel.org/6.2.2-001-ALSA-hda-cs35l41-Correct-error-condition-handli.patch --- old/patches.kernel.org/6.2.2-001-ALSA-hda-cs35l41-Correct-error-condition-handli.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-001-ALSA-hda-cs35l41-Correct-error-condition-handli.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,45 @@ +From: Vitaly Rodionov <vita...@opensource.cirrus.com> +Date: Mon, 13 Feb 2023 14:50:06 +0000 +Subject: [PATCH] ALSA: hda: cs35l41: Correct error condition handling +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 943f4e64ee177cf44d7f2c235281fcda7c32bb28 + +commit 943f4e64ee177cf44d7f2c235281fcda7c32bb28 upstream. + +Function cs_dsp_coeff_write_ctrl() can return 3 possible values: +0 - no change, 1 - value has changed and -1 - error, so positive value +is not an error. +Fixes: 7406bdbc4fb8 ("ASoC: wm_adsp: Return whether changed when writing controls") + +Signed-off-by: Vitaly Rodionov <vita...@opensource.cirrus.com> +Signed-off-by: Stefan Binding <sbind...@opensource.cirrus.com> +Link: https://lore.kernel.org/r/20230213145008.1215849-2-sbind...@opensource.cirrus.com +Signed-off-by: Takashi Iwai <ti...@suse.de> +Cc: Richard Fitzgerald <r...@opensource.cirrus.com> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + sound/pci/hda/hda_cs_dsp_ctl.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/sound/pci/hda/hda_cs_dsp_ctl.c b/sound/pci/hda/hda_cs_dsp_ctl.c +index 5433f622..463ca060 100644 +--- a/sound/pci/hda/hda_cs_dsp_ctl.c ++++ b/sound/pci/hda/hda_cs_dsp_ctl.c +@@ -218,10 +218,10 @@ int hda_cs_dsp_write_ctl(struct cs_dsp *dsp, const char *name, int type, + cs_ctl = cs_dsp_get_ctl(dsp, name, type, alg); + ret = cs_dsp_coeff_write_ctrl(cs_ctl, 0, buf, len); + mutex_unlock(&dsp->pwr_lock); +- if (ret) ++ if (ret < 0) + return ret; + +- if (cs_ctl->flags & WMFW_CTL_FLAG_SYS) ++ if (ret == 0 || (cs_ctl->flags & WMFW_CTL_FLAG_SYS)) + return 0; + + ctl = cs_ctl->priv; +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-002-crypto-arm64-sm4-gcm-Fix-possible-crash-in-GCM-.patch new/patches.kernel.org/6.2.2-002-crypto-arm64-sm4-gcm-Fix-possible-crash-in-GCM-.patch --- old/patches.kernel.org/6.2.2-002-crypto-arm64-sm4-gcm-Fix-possible-crash-in-GCM-.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-002-crypto-arm64-sm4-gcm-Fix-possible-crash-in-GCM-.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,160 @@ +From: Herbert Xu <herb...@gondor.apana.org.au> +Date: Thu, 2 Feb 2023 16:33:47 +0800 +Subject: [PATCH] crypto: arm64/sm4-gcm - Fix possible crash in GCM cryption +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 4e4a08868f15897ca236528771c3733fded42c62 + +commit 4e4a08868f15897ca236528771c3733fded42c62 upstream. + +An often overlooked aspect of the skcipher walker API is that an +error is not just indicated by a non-zero return value, but by the +fact that walk->nbytes is zero. + +Thus it is an error to call skcipher_walk_done after getting back +walk->nbytes == 0 from the previous interaction with the walker. + +This is because when walk->nbytes is zero the walker is left in +an undefined state and any further calls to it may try to free +uninitialised stack memory. + +The sm4 arm64 ccm code gets this wrong and ends up calling +skcipher_walk_done even when walk->nbytes is zero. + +This patch rewrites the loop in a form that resembles other callers. + +Reported-by: Tianjia Zhang <tianjia.zh...@linux.alibaba.com> +Fixes: ae1b83c7d572 ("crypto: arm64/sm4 - add CE implementation for GCM mode") +Signed-off-by: Herbert Xu <herb...@gondor.apana.org.au> +Tested-by: Tianjia Zhang <tianjia.zh...@linux.alibaba.com> +Signed-off-by: Herbert Xu <herb...@gondor.apana.org.au> +Cc: Nathan Chancellor <nat...@kernel.org> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + arch/arm64/crypto/sm4-ce-gcm-glue.c | 51 ++++++++++++++--------------- + 1 file changed, 25 insertions(+), 26 deletions(-) + +diff --git a/arch/arm64/crypto/sm4-ce-gcm-glue.c b/arch/arm64/crypto/sm4-ce-gcm-glue.c +index c450a202..73bfb697 100644 +--- a/arch/arm64/crypto/sm4-ce-gcm-glue.c ++++ b/arch/arm64/crypto/sm4-ce-gcm-glue.c +@@ -135,22 +135,23 @@ static void gcm_calculate_auth_mac(struct aead_request *req, u8 ghash[]) + } + + static int gcm_crypt(struct aead_request *req, struct skcipher_walk *walk, +- struct sm4_gcm_ctx *ctx, u8 ghash[], ++ u8 ghash[], int err, + void (*sm4_ce_pmull_gcm_crypt)(const u32 *rkey_enc, + u8 *dst, const u8 *src, u8 *iv, + unsigned int nbytes, u8 *ghash, + const u8 *ghash_table, const u8 *lengths)) + { ++ struct crypto_aead *aead = crypto_aead_reqtfm(req); ++ struct sm4_gcm_ctx *ctx = crypto_aead_ctx(aead); + u8 __aligned(8) iv[SM4_BLOCK_SIZE]; + be128 __aligned(8) lengths; +- int err; + + memset(ghash, 0, SM4_BLOCK_SIZE); + + lengths.a = cpu_to_be64(req->assoclen * 8); + lengths.b = cpu_to_be64(walk->total * 8); + +- memcpy(iv, walk->iv, GCM_IV_SIZE); ++ memcpy(iv, req->iv, GCM_IV_SIZE); + put_unaligned_be32(2, iv + GCM_IV_SIZE); + + kernel_neon_begin(); +@@ -158,49 +159,51 @@ static int gcm_crypt(struct aead_request *req, struct skcipher_walk *walk, + if (req->assoclen) + gcm_calculate_auth_mac(req, ghash); + +- do { ++ while (walk->nbytes) { + unsigned int tail = walk->nbytes % SM4_BLOCK_SIZE; + const u8 *src = walk->src.virt.addr; + u8 *dst = walk->dst.virt.addr; + + if (walk->nbytes == walk->total) { +- tail = 0; +- + sm4_ce_pmull_gcm_crypt(ctx->key.rkey_enc, dst, src, iv, + walk->nbytes, ghash, + ctx->ghash_table, + (const u8 *)&lengths); +- } else if (walk->nbytes - tail) { +- sm4_ce_pmull_gcm_crypt(ctx->key.rkey_enc, dst, src, iv, +- walk->nbytes - tail, ghash, +- ctx->ghash_table, NULL); ++ ++ kernel_neon_end(); ++ ++ return skcipher_walk_done(walk, 0); + } + ++ sm4_ce_pmull_gcm_crypt(ctx->key.rkey_enc, dst, src, iv, ++ walk->nbytes - tail, ghash, ++ ctx->ghash_table, NULL); ++ + kernel_neon_end(); + + err = skcipher_walk_done(walk, tail); +- if (err) +- return err; +- if (walk->nbytes) +- kernel_neon_begin(); +- } while (walk->nbytes > 0); + +- return 0; ++ kernel_neon_begin(); ++ } ++ ++ sm4_ce_pmull_gcm_crypt(ctx->key.rkey_enc, NULL, NULL, iv, ++ walk->nbytes, ghash, ctx->ghash_table, ++ (const u8 *)&lengths); ++ ++ kernel_neon_end(); ++ ++ return err; + } + + static int gcm_encrypt(struct aead_request *req) + { + struct crypto_aead *aead = crypto_aead_reqtfm(req); +- struct sm4_gcm_ctx *ctx = crypto_aead_ctx(aead); + u8 __aligned(8) ghash[SM4_BLOCK_SIZE]; + struct skcipher_walk walk; + int err; + + err = skcipher_walk_aead_encrypt(&walk, req, false); +- if (err) +- return err; +- +- err = gcm_crypt(req, &walk, ctx, ghash, sm4_ce_pmull_gcm_enc); ++ err = gcm_crypt(req, &walk, ghash, err, sm4_ce_pmull_gcm_enc); + if (err) + return err; + +@@ -215,17 +218,13 @@ static int gcm_decrypt(struct aead_request *req) + { + struct crypto_aead *aead = crypto_aead_reqtfm(req); + unsigned int authsize = crypto_aead_authsize(aead); +- struct sm4_gcm_ctx *ctx = crypto_aead_ctx(aead); + u8 __aligned(8) ghash[SM4_BLOCK_SIZE]; + u8 authtag[SM4_BLOCK_SIZE]; + struct skcipher_walk walk; + int err; + + err = skcipher_walk_aead_decrypt(&walk, req, false); +- if (err) +- return err; +- +- err = gcm_crypt(req, &walk, ctx, ghash, sm4_ce_pmull_gcm_dec); ++ err = gcm_crypt(req, &walk, ghash, err, sm4_ce_pmull_gcm_dec); + if (err) + return err; + +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-003-bpf-bpf_fib_lookup-should-not-return-neigh-in-N.patch new/patches.kernel.org/6.2.2-003-bpf-bpf_fib_lookup-should-not-return-neigh-in-N.patch --- old/patches.kernel.org/6.2.2-003-bpf-bpf_fib_lookup-should-not-return-neigh-in-N.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-003-bpf-bpf_fib_lookup-should-not-return-neigh-in-N.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,55 @@ +From: Martin KaFai Lau <martin....@kernel.org> +Date: Thu, 16 Feb 2023 16:41:48 -0800 +Subject: [PATCH] bpf: bpf_fib_lookup should not return neigh in NUD_FAILED + state +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 1fe4850b34ab512ff911e2c035c75fb6438f7307 + +commit 1fe4850b34ab512ff911e2c035c75fb6438f7307 upstream. + +The bpf_fib_lookup() helper does not only look up the fib (ie. route) +but it also looks up the neigh. Before returning the neigh, the helper +does not check for NUD_VALID. When a neigh state (neigh->nud_state) +is in NUD_FAILED, its dmac (neigh->ha) could be all zeros. The helper +still returns SUCCESS instead of NO_NEIGH in this case. Because of the +SUCCESS return value, the bpf prog directly uses the returned dmac +and ends up filling all zero in the eth header. + +This patch checks for NUD_VALID and returns NO_NEIGH if the neigh is +not valid. + +Signed-off-by: Martin KaFai Lau <martin....@kernel.org> +Signed-off-by: Daniel Borkmann <dan...@iogearbox.net> +Link: https://lore.kernel.org/bpf/20230217004150.2980689-3-martin....@linux.dev +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + net/core/filter.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/net/core/filter.c b/net/core/filter.c +index 43cc1fe5..a00a4b54 100644 +--- a/net/core/filter.c ++++ b/net/core/filter.c +@@ -5816,7 +5816,7 @@ static int bpf_ipv4_fib_lookup(struct net *net, struct bpf_fib_lookup *params, + neigh = __ipv6_neigh_lookup_noref_stub(dev, dst); + } + +- if (!neigh) ++ if (!neigh || !(neigh->nud_state & NUD_VALID)) + return BPF_FIB_LKUP_RET_NO_NEIGH; + + return bpf_fib_set_fwd_params(params, neigh, dev, mtu); +@@ -5931,7 +5931,7 @@ static int bpf_ipv6_fib_lookup(struct net *net, struct bpf_fib_lookup *params, + * not needed here. + */ + neigh = __ipv6_neigh_lookup_noref_stub(dev, dst); +- if (!neigh) ++ if (!neigh || !(neigh->nud_state & NUD_VALID)) + return BPF_FIB_LKUP_RET_NO_NEIGH; + + return bpf_fib_set_fwd_params(params, neigh, dev, mtu); +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-004-vc_screen-don-t-clobber-return-value-in-vcs_rea.patch new/patches.kernel.org/6.2.2-004-vc_screen-don-t-clobber-return-value-in-vcs_rea.patch --- old/patches.kernel.org/6.2.2-004-vc_screen-don-t-clobber-return-value-in-vcs_rea.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-004-vc_screen-don-t-clobber-return-value-in-vcs_rea.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,62 @@ +From: =?UTF-8?q?Thomas=20Wei=C3=9Fschuh?= <li...@weissschuh.net> +Date: Mon, 20 Feb 2023 06:46:12 +0000 +Subject: [PATCH] vc_screen: don't clobber return value in vcs_read +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: ae3419fbac845b4d3f3a9fae4cc80c68d82cdf6e + +commit ae3419fbac845b4d3f3a9fae4cc80c68d82cdf6e upstream. + +Commit 226fae124b2d ("vc_screen: move load of struct vc_data pointer in +vcs_read() to avoid UAF") moved the call to vcs_vc() into the loop. + +While doing this it also moved the unconditional assignment of + + ret = -ENXIO; + +This unconditional assignment was valid outside the loop but within it +it clobbers the actual value of ret. + +To avoid this only assign "ret = -ENXIO" when actually needed. + +[ Also, the 'goto unlock_out" needs to be just a "break", so that it + does the right thing when it exits on later iterations when partial + success has happened - Linus ] + +Reported-by: Storm Dragon <stormdragon2...@gmail.com> +Link: https://lore.kernel.org/lkml/y%2fks6vdql2pis...@hotmail.com/ +Fixes: 226fae124b2d ("vc_screen: move load of struct vc_data pointer in vcs_read() to avoid UAF") +Signed-off-by: Thomas WeiÃschuh <li...@weissschuh.net> +Link: https://lore.kernel.org/lkml/64981d94-d00c-4b31-9063-43ad0a384...@t-8ch.de/ +Signed-off-by: Linus Torvalds <torva...@linux-foundation.org> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + drivers/tty/vt/vc_screen.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/drivers/tty/vt/vc_screen.c b/drivers/tty/vt/vc_screen.c +index f566eb18..71e091f8 100644 +--- a/drivers/tty/vt/vc_screen.c ++++ b/drivers/tty/vt/vc_screen.c +@@ -403,10 +403,11 @@ vcs_read(struct file *file, char __user *buf, size_t count, loff_t *ppos) + unsigned int this_round, skip = 0; + int size; + +- ret = -ENXIO; + vc = vcs_vc(inode, &viewed); +- if (!vc) +- goto unlock_out; ++ if (!vc) { ++ ret = -ENXIO; ++ break; ++ } + + /* Check whether we are above size each round, + * as copy_to_user at the end of this loop +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-005-drm-amd-display-Move-DCN314-DOMAIN-power-contro.patch new/patches.kernel.org/6.2.2-005-drm-amd-display-Move-DCN314-DOMAIN-power-contro.patch --- old/patches.kernel.org/6.2.2-005-drm-amd-display-Move-DCN314-DOMAIN-power-contro.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-005-drm-amd-display-Move-DCN314-DOMAIN-power-contro.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,146 @@ +From: Nicholas Kazlauskas <nicholas.kazlaus...@amd.com> +Date: Mon, 23 Jan 2023 14:59:28 -0500 +Subject: [PATCH] drm/amd/display: Move DCN314 DOMAIN power control to DMCUB +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: e383b12709e32d6494c948422070c2464b637e44 + +commit e383b12709e32d6494c948422070c2464b637e44 upstream. + +[Why] +DOMAIN power gating control is now required to be done via firmware +due to interlock with other power features. This is to avoid +intermittent issues in the LB memories. + +[How] +If the firmware supports the command then use the new firmware as +the sequence can avoid potential display corruption issues. + +The command will be ignored on firmware that does not support DOMAIN +power control and the pipes will remain always on - frequent PG cycling +can cause the issue to occur on the old sequence, so we should avoid it. + +Reviewed-by: Hansen Dsouza <hansen.dso...@amd.com> +Acked-by: Qingqing Zhuo <qingqing.z...@amd.com> +Signed-off-by: Nicholas Kazlauskas <nicholas.kazlaus...@amd.com> +Tested-by: Daniel Wheeler <daniel.whee...@amd.com> +Signed-off-by: Alex Deucher <alexander.deuc...@amd.com> +Cc: "Limonciello, Mario" <mario.limoncie...@amd.com> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + .../drm/amd/display/dc/dcn314/dcn314_hwseq.c | 24 ++++++++++++++++++ + .../drm/amd/display/dc/dcn314/dcn314_hwseq.h | 2 ++ + .../drm/amd/display/dc/dcn314/dcn314_init.c | 2 +- + .../gpu/drm/amd/display/dmub/inc/dmub_cmd.h | 25 +++++++++++++++++++ + 4 files changed, 52 insertions(+), 1 deletion(-) + +diff --git a/drivers/gpu/drm/amd/display/dc/dcn314/dcn314_hwseq.c b/drivers/gpu/drm/amd/display/dc/dcn314/dcn314_hwseq.c +index a0741794..8e824dc8 100644 +--- a/drivers/gpu/drm/amd/display/dc/dcn314/dcn314_hwseq.c ++++ b/drivers/gpu/drm/amd/display/dc/dcn314/dcn314_hwseq.c +@@ -391,3 +391,27 @@ void dcn314_set_pixels_per_cycle(struct pipe_ctx *pipe_ctx) + pipe_ctx->stream_res.stream_enc->funcs->set_input_mode(pipe_ctx->stream_res.stream_enc, + pix_per_cycle); + } ++ ++void dcn314_hubp_pg_control(struct dce_hwseq *hws, unsigned int hubp_inst, bool power_on) ++{ ++ struct dc_context *ctx = hws->ctx; ++ union dmub_rb_cmd cmd; ++ ++ if (hws->ctx->dc->debug.disable_hubp_power_gate) ++ return; ++ ++ PERF_TRACE(); ++ ++ memset(&cmd, 0, sizeof(cmd)); ++ cmd.domain_control.header.type = DMUB_CMD__VBIOS; ++ cmd.domain_control.header.sub_type = DMUB_CMD__VBIOS_DOMAIN_CONTROL; ++ cmd.domain_control.header.payload_bytes = sizeof(cmd.domain_control.data); ++ cmd.domain_control.data.inst = hubp_inst; ++ cmd.domain_control.data.power_gate = !power_on; ++ ++ dc_dmub_srv_cmd_queue(ctx->dmub_srv, &cmd); ++ dc_dmub_srv_cmd_execute(ctx->dmub_srv); ++ dc_dmub_srv_wait_idle(ctx->dmub_srv); ++ ++ PERF_TRACE(); ++} +diff --git a/drivers/gpu/drm/amd/display/dc/dcn314/dcn314_hwseq.h b/drivers/gpu/drm/amd/display/dc/dcn314/dcn314_hwseq.h +index 24428029..c419d3db 100644 +--- a/drivers/gpu/drm/amd/display/dc/dcn314/dcn314_hwseq.h ++++ b/drivers/gpu/drm/amd/display/dc/dcn314/dcn314_hwseq.h +@@ -41,4 +41,6 @@ unsigned int dcn314_calculate_dccg_k1_k2_values(struct pipe_ctx *pipe_ctx, unsig + + void dcn314_set_pixels_per_cycle(struct pipe_ctx *pipe_ctx); + ++void dcn314_hubp_pg_control(struct dce_hwseq *hws, unsigned int hubp_inst, bool power_on); ++ + #endif /* __DC_HWSS_DCN314_H__ */ +diff --git a/drivers/gpu/drm/amd/display/dc/dcn314/dcn314_init.c b/drivers/gpu/drm/amd/display/dc/dcn314/dcn314_init.c +index 31feb4b0..25f345ff 100644 +--- a/drivers/gpu/drm/amd/display/dc/dcn314/dcn314_init.c ++++ b/drivers/gpu/drm/amd/display/dc/dcn314/dcn314_init.c +@@ -137,7 +137,7 @@ static const struct hwseq_private_funcs dcn314_private_funcs = { + .plane_atomic_disable = dcn20_plane_atomic_disable, + .plane_atomic_power_down = dcn10_plane_atomic_power_down, + .enable_power_gating_plane = dcn314_enable_power_gating_plane, +- .hubp_pg_control = dcn31_hubp_pg_control, ++ .hubp_pg_control = dcn314_hubp_pg_control, + .program_all_writeback_pipes_in_tree = dcn30_program_all_writeback_pipes_in_tree, + .update_odm = dcn314_update_odm, + .dsc_pg_control = dcn314_dsc_pg_control, +diff --git a/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h b/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h +index 33907fee..8fea8e42 100644 +--- a/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h ++++ b/drivers/gpu/drm/amd/display/dmub/inc/dmub_cmd.h +@@ -457,6 +457,10 @@ enum dmub_cmd_vbios_type { + * Query DP alt status on a transmitter. + */ + DMUB_CMD__VBIOS_TRANSMITTER_QUERY_DP_ALT = 26, ++ /** ++ * Controls domain power gating ++ */ ++ DMUB_CMD__VBIOS_DOMAIN_CONTROL = 28, + }; + + //============================================================================== +@@ -1204,6 +1208,23 @@ struct dmub_rb_cmd_dig1_transmitter_control { + union dmub_cmd_dig1_transmitter_control_data transmitter_control; /**< payload */ + }; + ++/** ++ * struct dmub_rb_cmd_domain_control_data - Data for DOMAIN power control ++ */ ++struct dmub_rb_cmd_domain_control_data { ++ uint8_t inst : 6; /**< DOMAIN instance to control */ ++ uint8_t power_gate : 1; /**< 1=power gate, 0=power up */ ++ uint8_t reserved[3]; /**< Reserved for future use */ ++}; ++ ++/** ++ * struct dmub_rb_cmd_domain_control - Controls DOMAIN power gating ++ */ ++struct dmub_rb_cmd_domain_control { ++ struct dmub_cmd_header header; /**< header */ ++ struct dmub_rb_cmd_domain_control_data data; /**< payload */ ++}; ++ + /** + * DPIA tunnel command parameters. + */ +@@ -3231,6 +3252,10 @@ union dmub_rb_cmd { + * Definition of a DMUB_CMD__VBIOS_DIG1_TRANSMITTER_CONTROL command. + */ + struct dmub_rb_cmd_dig1_transmitter_control dig1_transmitter_control; ++ /** ++ * Definition of a DMUB_CMD__VBIOS_DOMAIN_CONTROL command. ++ */ ++ struct dmub_rb_cmd_domain_control domain_control; + /** + * Definition of a DMUB_CMD__PSR_SET_VERSION command. + */ +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-006-drm-amd-display-Properly-reuse-completion-struc.patch new/patches.kernel.org/6.2.2-006-drm-amd-display-Properly-reuse-completion-struc.patch --- old/patches.kernel.org/6.2.2-006-drm-amd-display-Properly-reuse-completion-struc.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-006-drm-amd-display-Properly-reuse-completion-struc.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,55 @@ +From: Stylon Wang <stylon.w...@amd.com> +Date: Tue, 10 Jan 2023 14:38:33 +0800 +Subject: [PATCH] drm/amd/display: Properly reuse completion structure +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 0cf8307adbc6beb5ff3b8a76afedc6e4e0b536a9 + +commit 0cf8307adbc6beb5ff3b8a76afedc6e4e0b536a9 upstream. + +[Why] +Connecting displays to TBT3 docks often produces invalid +replies for DPIA AUX requests. It turns out the completion +structure was not re-initialized before reusing it, resulting +in immature wake up to completion. + +[How] +Properly call reinit_completion() on reused completion structure. + +Cc: sta...@vger.kernel.org +Reviewed-by: Solomon Chiu <solomon.c...@amd.com> +Acked-by: Alan Liu <haoping....@amd.com> +Signed-off-by: Stylon Wang <stylon.w...@amd.com> +Tested-by: Daniel Wheeler <daniel.whee...@amd.com> +Signed-off-by: Alex Deucher <alexander.deuc...@amd.com> +Cc: "Limonciello, Mario" <mario.limoncie...@amd.com> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +index 9c7b69d3..af16d6bb 100644 +--- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c ++++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +@@ -10359,6 +10359,7 @@ int amdgpu_dm_process_dmub_aux_transfer_sync( + ret = p_notify->aux_reply.length; + *operation_result = p_notify->result; + out: ++ reinit_completion(&adev->dm.dmub_aux_transfer_done); + mutex_unlock(&adev->dm.dpia_aux_lock); + return ret; + } +@@ -10386,6 +10387,8 @@ int amdgpu_dm_process_dmub_set_config_sync( + *operation_result = SET_CONFIG_UNKNOWN_ERROR; + } + ++ if (!is_cmd_complete) ++ reinit_completion(&adev->dm.dmub_aux_transfer_done); + mutex_unlock(&adev->dm.dpia_aux_lock); + return ret; + } +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-007-scripts-tags.sh-fix-incompatibility-with-PCRE2.patch new/patches.kernel.org/6.2.2-007-scripts-tags.sh-fix-incompatibility-with-PCRE2.patch --- old/patches.kernel.org/6.2.2-007-scripts-tags.sh-fix-incompatibility-with-PCRE2.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-007-scripts-tags.sh-fix-incompatibility-with-PCRE2.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,59 @@ +From: Carlos Llamas <cmlla...@google.com> +Date: Wed, 15 Feb 2023 18:38:50 +0000 +Subject: [PATCH] scripts/tags.sh: fix incompatibility with PCRE2 +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 6ec363fc6142226b9ab5a6528f65333d729d2b6b + +commit 6ec363fc6142226b9ab5a6528f65333d729d2b6b upstream. + +Starting with release 10.38 PCRE2 drops default support for using \K in +lookaround patterns as described in [1]. Unfortunately, scripts/tags.sh +relies on such functionality to collect all_compiled_soures() leading to +the following error: + + $ make COMPILED_SOURCE=1 tags + GEN tags + grep: \K is not allowed in lookarounds (but see PCRE2_EXTRA_ALLOW_LOOKAROUND_BSK) + +The usage of \K for this pattern was introduced in commit 4f491bb6ea2a +("scripts/tags.sh: collect compiled source precisely") which speeds up +the generation of tags significantly. + +In order to fix this issue without compromising the performance we can +switch over to an equivalent sed expression. The same matching pattern +is preserved here except \K is replaced with a backreference \1. + +[1] https://www.pcre.org/current/doc/html/pcre2syntax.html#SEC11 + +Cc: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Cc: Cristian Ciocaltea <cristian.ciocal...@collabora.com> +Cc: Masahiro Yamada <masahi...@kernel.org> +Cc: Jialu Xu <xuji...@vimux.org> +Cc: Vipin Sharma <vipi...@google.com> +Cc: sta...@vger.kernel.org +Fixes: 4f491bb6ea2a ("scripts/tags.sh: collect compiled source precisely") +Signed-off-by: Carlos Llamas <cmlla...@google.com> +Link: https://lore.kernel.org/r/20230215183850.3353198-1-cmlla...@google.com +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + scripts/tags.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/scripts/tags.sh b/scripts/tags.sh +index e137cf15..0d045182 100755 +--- a/scripts/tags.sh ++++ b/scripts/tags.sh +@@ -91,7 +91,7 @@ all_compiled_sources() + { + echo include/generated/autoconf.h + find $ignore -name "*.cmd" -exec \ +- grep -Poh '(?(?=^source_.* \K).*|(?=^ \K\S).*(?= \\))' {} \+ | ++ sed -n -E 's/^source_.* (.*)/\1/p; s/^ (\S.*) \\/\1/p' {} \+ | + awk '!a[$0]++' + } | xargs realpath -esq $([ -z "$KBUILD_ABS_SRCTREE" ] && echo --relative-to=.) | + sort -u +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-008-wifi-rtw88-usb-Set-qsel-correctly.patch new/patches.kernel.org/6.2.2-008-wifi-rtw88-usb-Set-qsel-correctly.patch --- old/patches.kernel.org/6.2.2-008-wifi-rtw88-usb-Set-qsel-correctly.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-008-wifi-rtw88-usb-Set-qsel-correctly.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,41 @@ +From: Sascha Hauer <s.ha...@pengutronix.de> +Date: Fri, 10 Feb 2023 12:16:30 +0100 +Subject: [PATCH] wifi: rtw88: usb: Set qsel correctly +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 7869b834fb07c79933229840c98b02bbb7bd0d75 + +commit 7869b834fb07c79933229840c98b02bbb7bd0d75 upstream. + +We have to extract qsel from the skb before doing skb_push() on it, +otherwise qsel will always be 0. + +Fixes: a82dfd33d1237 ("wifi: rtw88: Add common USB chip support") +Signed-off-by: Sascha Hauer <s.ha...@pengutronix.de> +Reviewed-by: Ping-Ke Shih <pks...@realtek.com> +Signed-off-by: Kalle Valo <kv...@kernel.org> +Link: https://lore.kernel.org/r/20230210111632.1985205-2-s.ha...@pengutronix.de +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + drivers/net/wireless/realtek/rtw88/usb.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/drivers/net/wireless/realtek/rtw88/usb.c b/drivers/net/wireless/realtek/rtw88/usb.c +index 4ef38279..d9e99554 100644 +--- a/drivers/net/wireless/realtek/rtw88/usb.c ++++ b/drivers/net/wireless/realtek/rtw88/usb.c +@@ -471,9 +471,9 @@ static int rtw_usb_tx_write(struct rtw_dev *rtwdev, + u8 *pkt_desc; + int ep; + ++ pkt_info->qsel = rtw_usb_tx_queue_mapping_to_qsel(skb); + pkt_desc = skb_push(skb, chip->tx_pkt_desc_sz); + memset(pkt_desc, 0, chip->tx_pkt_desc_sz); +- pkt_info->qsel = rtw_usb_tx_queue_mapping_to_qsel(skb); + ep = qsel_to_ep(rtwusb, pkt_info->qsel); + rtw_tx_fill_tx_desc(pkt_info, skb); + rtw_tx_fill_txdesc_checksum(rtwdev, pkt_info, skb->data); +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-009-wifi-rtw88-usb-send-Zero-length-packets-if-nece.patch new/patches.kernel.org/6.2.2-009-wifi-rtw88-usb-send-Zero-length-packets-if-nece.patch --- old/patches.kernel.org/6.2.2-009-wifi-rtw88-usb-send-Zero-length-packets-if-nece.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-009-wifi-rtw88-usb-send-Zero-length-packets-if-nece.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,38 @@ +From: Sascha Hauer <s.ha...@pengutronix.de> +Date: Fri, 10 Feb 2023 12:16:31 +0100 +Subject: [PATCH] wifi: rtw88: usb: send Zero length packets if necessary +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 07ce9fa6ab0e5e4cb5516a1f7c754ab2758fe5cd + +commit 07ce9fa6ab0e5e4cb5516a1f7c754ab2758fe5cd upstream. + +Zero length packets are necessary when sending URBs with size +multiple of bulkout_size, otherwise the hardware just stalls. + +Fixes: a82dfd33d1237 ("wifi: rtw88: Add common USB chip support") +Signed-off-by: Sascha Hauer <s.ha...@pengutronix.de> +Reviewed-by: Ping-Ke Shih <pks...@realtek.com> +Signed-off-by: Kalle Valo <kv...@kernel.org> +Link: https://lore.kernel.org/r/20230210111632.1985205-3-s.ha...@pengutronix.de +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + drivers/net/wireless/realtek/rtw88/usb.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/drivers/net/wireless/realtek/rtw88/usb.c b/drivers/net/wireless/realtek/rtw88/usb.c +index d9e99554..1a09c928 100644 +--- a/drivers/net/wireless/realtek/rtw88/usb.c ++++ b/drivers/net/wireless/realtek/rtw88/usb.c +@@ -271,6 +271,7 @@ static int rtw_usb_write_port(struct rtw_dev *rtwdev, u8 qsel, struct sk_buff *s + return -ENOMEM; + + usb_fill_bulk_urb(urb, usbd, pipe, skb->data, skb->len, cb, context); ++ urb->transfer_flags |= URB_ZERO_PACKET; + ret = usb_submit_urb(urb, GFP_ATOMIC); + + usb_free_urb(urb); +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-010-wifi-rtw88-usb-drop-now-unnecessary-URB-size-ch.patch new/patches.kernel.org/6.2.2-010-wifi-rtw88-usb-drop-now-unnecessary-URB-size-ch.patch --- old/patches.kernel.org/6.2.2-010-wifi-rtw88-usb-drop-now-unnecessary-URB-size-ch.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-010-wifi-rtw88-usb-drop-now-unnecessary-URB-size-ch.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,56 @@ +From: Sascha Hauer <s.ha...@pengutronix.de> +Date: Fri, 10 Feb 2023 12:16:32 +0100 +Subject: [PATCH] wifi: rtw88: usb: drop now unnecessary URB size check +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 462c8db6a01160836c68e262d25566f2447148d9 + +commit 462c8db6a01160836c68e262d25566f2447148d9 upstream. + +Now that we send URBs with the URB_ZERO_PACKET flag set we no longer +need to make sure that the URB sizes are not multiple of the +bulkout_size. Drop the check. + +Signed-off-by: Sascha Hauer <s.ha...@pengutronix.de> +Reviewed-by: Ping-Ke Shih <pks...@realtek.com> +Signed-off-by: Kalle Valo <kv...@kernel.org> +Link: https://lore.kernel.org/r/20230210111632.1985205-4-s.ha...@pengutronix.de +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + drivers/net/wireless/realtek/rtw88/usb.c | 15 +-------------- + 1 file changed, 1 insertion(+), 14 deletions(-) + +diff --git a/drivers/net/wireless/realtek/rtw88/usb.c b/drivers/net/wireless/realtek/rtw88/usb.c +index 1a09c928..2a8336b1 100644 +--- a/drivers/net/wireless/realtek/rtw88/usb.c ++++ b/drivers/net/wireless/realtek/rtw88/usb.c +@@ -414,24 +414,11 @@ static int rtw_usb_write_data_rsvd_page(struct rtw_dev *rtwdev, u8 *buf, + u32 size) + { + const struct rtw_chip_info *chip = rtwdev->chip; +- struct rtw_usb *rtwusb; + struct rtw_tx_pkt_info pkt_info = {0}; +- u32 len, desclen; +- +- rtwusb = rtw_get_usb_priv(rtwdev); + + pkt_info.tx_pkt_size = size; + pkt_info.qsel = TX_DESC_QSEL_BEACON; +- +- desclen = chip->tx_pkt_desc_sz; +- len = desclen + size; +- if (len % rtwusb->bulkout_size == 0) { +- len += RTW_USB_PACKET_OFFSET_SZ; +- pkt_info.offset = desclen + RTW_USB_PACKET_OFFSET_SZ; +- pkt_info.pkt_offset = 1; +- } else { +- pkt_info.offset = desclen; +- } ++ pkt_info.offset = chip->tx_pkt_desc_sz; + + return rtw_usb_write_data(rtwdev, &pkt_info, buf); + } +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-011-usb-dwc3-pci-add-support-for-the-Intel-Meteor-L.patch new/patches.kernel.org/6.2.2-011-usb-dwc3-pci-add-support-for-the-Intel-Meteor-L.patch --- old/patches.kernel.org/6.2.2-011-usb-dwc3-pci-add-support-for-the-Intel-Meteor-L.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-011-usb-dwc3-pci-add-support-for-the-Intel-Meteor-L.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,46 @@ +From: Heikki Krogerus <heikki.kroge...@linux.intel.com> +Date: Wed, 15 Feb 2023 15:27:11 +0200 +Subject: [PATCH] usb: dwc3: pci: add support for the Intel Meteor Lake-M +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 8e5248c3a8778f3e394e9a19195bc7a48f567ca2 + +commit 8e5248c3a8778f3e394e9a19195bc7a48f567ca2 upstream. + +This patch adds the necessary PCI IDs for Intel Meteor Lake-M +devices. + +Signed-off-by: Heikki Krogerus <heikki.kroge...@linux.intel.com> +Cc: sta...@vger.kernel.org +Link: https://lore.kernel.org/r/20230215132711.35668-1-heikki.kroge...@linux.intel.com +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + drivers/usb/dwc3/dwc3-pci.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/drivers/usb/dwc3/dwc3-pci.c b/drivers/usb/dwc3/dwc3-pci.c +index 89c9ab2b..a23ddbb8 100644 +--- a/drivers/usb/dwc3/dwc3-pci.c ++++ b/drivers/usb/dwc3/dwc3-pci.c +@@ -47,6 +47,7 @@ + #define PCI_DEVICE_ID_INTEL_ADLS 0x7ae1 + #define PCI_DEVICE_ID_INTEL_RPL 0xa70e + #define PCI_DEVICE_ID_INTEL_RPLS 0x7a61 ++#define PCI_DEVICE_ID_INTEL_MTLM 0x7eb1 + #define PCI_DEVICE_ID_INTEL_MTLP 0x7ec1 + #define PCI_DEVICE_ID_INTEL_MTL 0x7e7e + #define PCI_DEVICE_ID_INTEL_TGL 0x9a15 +@@ -467,6 +468,9 @@ static const struct pci_device_id dwc3_pci_id_table[] = { + { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_RPLS), + (kernel_ulong_t) &dwc3_pci_intel_swnode, }, + ++ { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_MTLM), ++ (kernel_ulong_t) &dwc3_pci_intel_swnode, }, ++ + { PCI_VDEVICE(INTEL, PCI_DEVICE_ID_INTEL_MTLP), + (kernel_ulong_t) &dwc3_pci_intel_swnode, }, + +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-012-USB-serial-option-add-support-for-VW-Skoda-Cars.patch new/patches.kernel.org/6.2.2-012-USB-serial-option-add-support-for-VW-Skoda-Cars.patch --- old/patches.kernel.org/6.2.2-012-USB-serial-option-add-support-for-VW-Skoda-Cars.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-012-USB-serial-option-add-support-for-VW-Skoda-Cars.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,58 @@ +From: Florian Zumbiehl <fl...@florz.de> +Date: Mon, 6 Feb 2023 02:04:28 +0100 +Subject: [PATCH] USB: serial: option: add support for VW/Skoda "Carstick LTE" +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 617c331d91077f896111044628c096802551dc66 + +commit 617c331d91077f896111044628c096802551dc66 upstream. + +Add support for VW/Skoda "Carstick LTE" + +D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 +P: Vendor=1c9e ProdID=7605 Rev=02.00 +S: Manufacturer=USB Modem +S: Product=USB Modem +C: #Ifs= 4 Cfg#= 1 Atr=e0 MxPwr=500mA +I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) +I: If#=0x1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) +I: If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) +I: If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=(none) + +The stick has AT command interfaces on interfaces 1, 2, and 3, and does PPP +on interface 3. + +Signed-off-by: Florian Zumbiehl <fl...@florz.de> +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 <jsl...@suse.cz> +--- + drivers/usb/serial/option.c | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c +index ee5ac4ef..e6d8d9b3 100644 +--- a/drivers/usb/serial/option.c ++++ b/drivers/usb/serial/option.c +@@ -402,6 +402,8 @@ static void option_instat_callback(struct urb *urb); + #define LONGCHEER_VENDOR_ID 0x1c9e + + /* 4G Systems products */ ++/* This one was sold as the VW and Skoda "Carstick LTE" */ ++#define FOUR_G_SYSTEMS_PRODUCT_CARSTICK_LTE 0x7605 + /* This is the 4G XS Stick W14 a.k.a. Mobilcom Debitel Surf-Stick * + * It seems to contain a Qualcomm QSC6240/6290 chipset */ + #define FOUR_G_SYSTEMS_PRODUCT_W14 0x9603 +@@ -1976,6 +1978,8 @@ static const struct usb_device_id option_ids[] = { + .driver_info = RSVD(2) }, + { USB_DEVICE(AIRPLUS_VENDOR_ID, AIRPLUS_PRODUCT_MCD650) }, + { USB_DEVICE(TLAYTECH_VENDOR_ID, TLAYTECH_PRODUCT_TEU800) }, ++ { USB_DEVICE(LONGCHEER_VENDOR_ID, FOUR_G_SYSTEMS_PRODUCT_CARSTICK_LTE), ++ .driver_info = RSVD(0) }, + { USB_DEVICE(LONGCHEER_VENDOR_ID, FOUR_G_SYSTEMS_PRODUCT_W14), + .driver_info = NCTRL(0) | NCTRL(1) }, + { USB_DEVICE(LONGCHEER_VENDOR_ID, FOUR_G_SYSTEMS_PRODUCT_W100), +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-013-usb-gadget-u_serial-Add-null-pointer-check-in-g.patch new/patches.kernel.org/6.2.2-013-usb-gadget-u_serial-Add-null-pointer-check-in-g.patch --- old/patches.kernel.org/6.2.2-013-usb-gadget-u_serial-Add-null-pointer-check-in-g.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-013-usb-gadget-u_serial-Add-null-pointer-check-in-g.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,91 @@ +From: Prashanth K <quic_pra...@quicinc.com> +Date: Mon, 13 Feb 2023 23:00:38 +0530 +Subject: [PATCH] usb: gadget: u_serial: Add null pointer check in + gserial_resume +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 5ec63fdbca604568890c577753c6f66c5b3ef0b5 + +commit 5ec63fdbca604568890c577753c6f66c5b3ef0b5 upstream. + +Consider a case where gserial_disconnect has already cleared +gser->ioport. And if a wakeup interrupt triggers afterwards, +gserial_resume gets called, which will lead to accessing of +gser->ioport and thus causing null pointer dereference.Add +a null pointer check to prevent this. + +Added a static spinlock to prevent gser->ioport from becoming +null after the newly added check. + +Fixes: aba3a8d01d62 ("usb: gadget: u_serial: add suspend resume callbacks") +Cc: stable <sta...@kernel.org> +Signed-off-by: Prashanth K <quic_pra...@quicinc.com> +Acked-by: Alan Stern <st...@rowland.harvard.edu> +Link: https://lore.kernel.org/r/1676309438-14922-1-git-send-email-quic_pra...@quicinc.com +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + drivers/usb/gadget/function/u_serial.c | 23 +++++++++++++++++++---- + 1 file changed, 19 insertions(+), 4 deletions(-) + +diff --git a/drivers/usb/gadget/function/u_serial.c b/drivers/usb/gadget/function/u_serial.c +index 840626e0..a0ca47fb 100644 +--- a/drivers/usb/gadget/function/u_serial.c ++++ b/drivers/usb/gadget/function/u_serial.c +@@ -82,6 +82,9 @@ + #define WRITE_BUF_SIZE 8192 /* TX only */ + #define GS_CONSOLE_BUF_SIZE 8192 + ++/* Prevents race conditions while accessing gser->ioport */ ++static DEFINE_SPINLOCK(serial_port_lock); ++ + /* console info */ + struct gs_console { + struct console console; +@@ -1375,8 +1378,10 @@ void gserial_disconnect(struct gserial *gser) + if (!port) + return; + ++ spin_lock_irqsave(&serial_port_lock, flags); ++ + /* tell the TTY glue not to do I/O here any more */ +- spin_lock_irqsave(&port->port_lock, flags); ++ spin_lock(&port->port_lock); + + gs_console_disconnect(port); + +@@ -1391,7 +1396,8 @@ void gserial_disconnect(struct gserial *gser) + tty_hangup(port->port.tty); + } + port->suspended = false; +- spin_unlock_irqrestore(&port->port_lock, flags); ++ spin_unlock(&port->port_lock); ++ spin_unlock_irqrestore(&serial_port_lock, flags); + + /* disable endpoints, aborting down any active I/O */ + usb_ep_disable(gser->out); +@@ -1425,10 +1431,19 @@ EXPORT_SYMBOL_GPL(gserial_suspend); + + void gserial_resume(struct gserial *gser) + { +- struct gs_port *port = gser->ioport; ++ struct gs_port *port; + unsigned long flags; + +- spin_lock_irqsave(&port->port_lock, flags); ++ spin_lock_irqsave(&serial_port_lock, flags); ++ port = gser->ioport; ++ ++ if (!port) { ++ spin_unlock_irqrestore(&serial_port_lock, flags); ++ return; ++ } ++ ++ spin_lock(&port->port_lock); ++ spin_unlock(&serial_port_lock); + port->suspended = false; + if (!port->start_delayed) { + spin_unlock_irqrestore(&port->port_lock, flags); +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-014-arm64-dts-uniphier-Fix-property-name-in-PXs3-US.patch new/patches.kernel.org/6.2.2-014-arm64-dts-uniphier-Fix-property-name-in-PXs3-US.patch --- old/patches.kernel.org/6.2.2-014-arm64-dts-uniphier-Fix-property-name-in-PXs3-US.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-014-arm64-dts-uniphier-Fix-property-name-in-PXs3-US.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,53 @@ +From: Kunihiko Hayashi <hayashi.kunih...@socionext.com> +Date: Tue, 7 Feb 2023 11:14:29 +0900 +Subject: [PATCH] arm64: dts: uniphier: Fix property name in PXs3 USB node +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 2508d5efd7a588d07915a762e1731173854525f9 + +commit 2508d5efd7a588d07915a762e1731173854525f9 upstream. + +The property "snps,usb2_gadget_lpm_disable" is wrong. +It should be fixed to "snps,usb2-gadget-lpm-disable". + +Cc: sta...@vger.kernel.org +Fixes: 19fee1a1096d ("arm64: dts: uniphier: Add USB-device support for PXs3 reference board") +Signed-off-by: Kunihiko Hayashi <hayashi.kunih...@socionext.com> +Link: https://lore.kernel.org/r/20230207021429.28925-1-hayashi.kunih...@socionext.com +Signed-off-by: Arnd Bergmann <a...@arndb.de> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget0.dts | 2 +- + arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget1.dts | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget0.dts b/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget0.dts +index 7069f51b..99136adb 100644 +--- a/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget0.dts ++++ b/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget0.dts +@@ -24,7 +24,7 @@ &usb0 { + snps,dis_enblslpm_quirk; + snps,dis_u2_susphy_quirk; + snps,dis_u3_susphy_quirk; +- snps,usb2_gadget_lpm_disable; ++ snps,usb2-gadget-lpm-disable; + phy-names = "usb2-phy", "usb3-phy"; + phys = <&usb0_hsphy0>, <&usb0_ssphy0>; + }; +diff --git a/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget1.dts b/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget1.dts +index a3cfa811..4c960f45 100644 +--- a/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget1.dts ++++ b/arch/arm64/boot/dts/socionext/uniphier-pxs3-ref-gadget1.dts +@@ -24,7 +24,7 @@ &usb1 { + snps,dis_enblslpm_quirk; + snps,dis_u2_susphy_quirk; + snps,dis_u3_susphy_quirk; +- snps,usb2_gadget_lpm_disable; ++ snps,usb2-gadget-lpm-disable; + phy-names = "usb2-phy", "usb3-phy"; + phys = <&usb1_hsphy0>, <&usb1_ssphy0>; + }; +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-015-usb-typec-pd-Remove-usb_suspend_supported-sysfs.patch new/patches.kernel.org/6.2.2-015-usb-typec-pd-Remove-usb_suspend_supported-sysfs.patch --- old/patches.kernel.org/6.2.2-015-usb-typec-pd-Remove-usb_suspend_supported-sysfs.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-015-usb-typec-pd-Remove-usb_suspend_supported-sysfs.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,42 @@ +From: Saranya Gopal <saranya.go...@intel.com> +Date: Tue, 14 Feb 2023 17:15:42 +0530 +Subject: [PATCH] usb: typec: pd: Remove usb_suspend_supported sysfs from sink + PDO +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: e4e7b2dc27c4bb877d850eaff69d41410b2f4237 + +commit e4e7b2dc27c4bb877d850eaff69d41410b2f4237 upstream. + +As per USB PD specification, 28th bit of fixed supply sink PDO +represents "higher capability" attribute and not "usb suspend +supported" attribute. So, this patch removes the usb_suspend_supported +attribute from sink PDO. + +Fixes: 662a60102c12 ("usb: typec: Separate USB Power Delivery from USB Type-C") +Cc: stable <sta...@kernel.org> +Reported-by: Rajaram Regupathy <rajaram.regupa...@intel.com> +Signed-off-by: Saranya Gopal <saranya.go...@intel.com> +Reviewed-by: Heikki Krogerus <heikki.kroge...@linux.intel.com> +Link: https://lore.kernel.org/r/20230214114543.205103-1-saranya.go...@intel.com +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + drivers/usb/typec/pd.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/drivers/usb/typec/pd.c b/drivers/usb/typec/pd.c +index dc72005d..b5ab2642 100644 +--- a/drivers/usb/typec/pd.c ++++ b/drivers/usb/typec/pd.c +@@ -161,7 +161,6 @@ static struct device_type source_fixed_supply_type = { + + static struct attribute *sink_fixed_supply_attrs[] = { + &dev_attr_dual_role_power.attr, +- &dev_attr_usb_suspend_supported.attr, + &dev_attr_unconstrained_power.attr, + &dev_attr_usb_communication_capable.attr, + &dev_attr_dual_role_data.attr, +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-016-USB-core-Don-t-hold-device-lock-while-reading-t.patch new/patches.kernel.org/6.2.2-016-USB-core-Don-t-hold-device-lock-while-reading-t.patch --- old/patches.kernel.org/6.2.2-016-USB-core-Don-t-hold-device-lock-while-reading-t.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-016-USB-core-Don-t-hold-device-lock-while-reading-t.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,81 @@ +From: Alan Stern <st...@rowland.harvard.edu> +Date: Tue, 31 Jan 2023 15:49:04 -0500 +Subject: [PATCH] USB: core: Don't hold device lock while reading the + "descriptors" sysfs file +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 45bf39f8df7f05efb83b302c65ae3b9bc92b7065 + +commit 45bf39f8df7f05efb83b302c65ae3b9bc92b7065 upstream. + +Ever since commit 83e83ecb79a8 ("usb: core: get config and string +descriptors for unauthorized devices") was merged in 2013, there has +been no mechanism for reallocating the rawdescriptors buffers in +struct usb_device after the initial enumeration. Before that commit, +the buffers would be deallocated when a device was deauthorized and +reallocated when it was authorized and enumerated. + +This means that the locking in the read_descriptors() routine is not +needed, since the buffers it reads will never be reallocated while the +routine is running. This locking can interfere with user programs +trying to read a hub's descriptors via sysfs while new child devices +of the hub are being initialized, since the hub is locked during this +procedure. + +Since the locking in read_descriptors() hasn't been needed for over +nine years, we can remove it. + +Reported-and-tested-by: Troels Liebe Bentsen <tro...@connectedcars.dk> +Signed-off-by: Alan Stern <st...@rowland.harvard.edu> +CC: sta...@vger.kernel.org +Link: https://lore.kernel.org/r/y9l+wdtrbuzab...@rowland.harvard.edu +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + drivers/usb/core/hub.c | 5 ++--- + drivers/usb/core/sysfs.c | 5 ----- + 2 files changed, 2 insertions(+), 8 deletions(-) + +diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c +index 9eca403a..97a0f8fa 100644 +--- a/drivers/usb/core/hub.c ++++ b/drivers/usb/core/hub.c +@@ -2389,9 +2389,8 @@ static int usb_enumerate_device_otg(struct usb_device *udev) + * usb_enumerate_device - Read device configs/intfs/otg (usbcore-internal) + * @udev: newly addressed device (in ADDRESS state) + * +- * This is only called by usb_new_device() and usb_authorize_device() +- * and FIXME -- all comments that apply to them apply here wrt to +- * environment. ++ * This is only called by usb_new_device() -- all comments that apply there ++ * apply here wrt to environment. + * + * If the device is WUSB and not authorized, we don't attempt to read + * the string descriptors, as they will be errored out by the device +diff --git a/drivers/usb/core/sysfs.c b/drivers/usb/core/sysfs.c +index 8217032d..b63f78e4 100644 +--- a/drivers/usb/core/sysfs.c ++++ b/drivers/usb/core/sysfs.c +@@ -869,11 +869,7 @@ read_descriptors(struct file *filp, struct kobject *kobj, + size_t srclen, n; + int cfgno; + void *src; +- int retval; + +- retval = usb_lock_device_interruptible(udev); +- if (retval < 0) +- return -EINTR; + /* The binary attribute begins with the device descriptor. + * Following that are the raw descriptor entries for all the + * configurations (config plus subsidiary descriptors). +@@ -898,7 +894,6 @@ read_descriptors(struct file *filp, struct kobject *kobj, + off -= srclen; + } + } +- usb_unlock_device(udev); + return count - nleft; + } + +-- +2.35.3 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.kernel.org/6.2.2-017-Linux-6.2.2.patch new/patches.kernel.org/6.2.2-017-Linux-6.2.2.patch --- old/patches.kernel.org/6.2.2-017-Linux-6.2.2.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.kernel.org/6.2.2-017-Linux-6.2.2.patch 2023-03-03 12:25:17.000000000 +0100 @@ -0,0 +1,43 @@ +From: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Date: Fri, 3 Mar 2023 11:56:18 +0100 +Subject: [PATCH] Linux 6.2.2 +References: bsc#1012628 +Patch-mainline: 6.2.2 +Git-commit: 6ab3eda153b603d578a83e75dd1a58270ebfe3f2 + +Link: https://lore.kernel.org/r/20230301180653.263532...@linuxfoundation.org +Tested-by: Ronald Warsow <rwar...@gmx.de> +Tested-by: Luna Jernberg <droidbit...@gmail.com> +Tested-by: Florian Fainelli <f.faine...@gmail.com> +Tested-by: Justin M. Forbes <jfor...@fedoraproject.org> +Tested-by: Shuah Khan <sk...@linuxfoundation.org> +Tested-by: Bagas Sanjaya <bagasdo...@gmail.com> +Tested-by: Jon Hunter <jonath...@nvidia.com> +Tested-by: Conor Dooley <conor.doo...@microchip.com> +Tested-by: Sudip Mukherjee <sudip.mukher...@codethink.co.uk> +Tested-by: Ron Economos <r...@w6rz.net> +Tested-by: Linux Kernel Functional Testing <l...@linaro.org> +Tested-by: Slade Watkins <s...@sladewatkins.net> +Tested-by: Guenter Roeck <li...@roeck-us.net> +Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index f26824f3..1836ddaf 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,7 +1,7 @@ + # SPDX-License-Identifier: GPL-2.0 + VERSION = 6 + PATCHLEVEL = 2 +-SUBLEVEL = 1 ++SUBLEVEL = 2 + EXTRAVERSION = + NAME = Hurr durr I'ma ninja sloth + +-- +2.35.3 + ++++++ patches.suse.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/arm64-efi-Use-SMBIOS-processor-ID-to-key-off-Altra-q.patch new/patches.suse/arm64-efi-Use-SMBIOS-processor-ID-to-key-off-Altra-q.patch --- old/patches.suse/arm64-efi-Use-SMBIOS-processor-ID-to-key-off-Altra-q.patch 1970-01-01 01:00:00.000000000 +0100 +++ new/patches.suse/arm64-efi-Use-SMBIOS-processor-ID-to-key-off-Altra-q.patch 2023-03-02 08:02:57.000000000 +0100 @@ -0,0 +1,132 @@ +From: Ard Biesheuvel <a...@kernel.org> +Date: Tue, 28 Feb 2023 17:00:49 +0100 +Subject: arm64: efi: Use SMBIOS processor ID to key off Altra quirk +Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/efi/efi.git#urgent +Git-commit: 22d9e53df5aa26f775d96222fbb049569720349f +Patch-mainline: Queued in subsystem maintainer repository +References: bsc#1208750 + +Instead of using the SMBIOS type 1 record 'family' field, which is often +modified by OEMs, use the type 4 'processor ID' field, which is always +set to the same value on all known Altra EFI systems in the field, and +is more likely to be left alone, given that it is based on the SOC id +SMCCC API call which is implemented in secure firmware. + +Fixes: 550b33cfd4452968 ("arm64: efi: Force the use of ...") +Signed-off-by: Ard Biesheuvel <a...@kernel.org> +Signed-off-by: Jiri Slaby <jsl...@suse.cz> +--- + drivers/firmware/efi/libstub/arm64.c | 12 +++++------ + drivers/firmware/efi/libstub/efistub.h | 34 +++++++++++++++++++++++++++++++++ + drivers/firmware/efi/libstub/smbios.c | 14 +++++++++++-- + 3 files changed, 52 insertions(+), 8 deletions(-) + +--- a/drivers/firmware/efi/libstub/arm64.c ++++ b/drivers/firmware/efi/libstub/arm64.c +@@ -16,16 +16,16 @@ + + static bool system_needs_vamap(void) + { +- const u8 *type1_family = efi_get_smbios_string(1, family); ++ const struct efi_smbios_type4_record *record; + + /* + * Ampere eMAG, Altra, and Altra Max machines crash in SetTime() if +- * SetVirtualAddressMap() has not been called prior. ++ * SetVirtualAddressMap() has not been called prior. These systems can ++ * be identified by the SMCCC soc ID, which is conveniently exposed via ++ * the type 4 SMBIOS records. + */ +- if (!type1_family || ( +- strcmp(type1_family, "eMAG") && +- strcmp(type1_family, "Altra") && +- strcmp(type1_family, "Altra Max"))) ++ record = (struct efi_smbios_type4_record *)efi_get_smbios_record(4); ++ if (!record || memcmp(record->processor_id, "\x1\0\x16\xA\xA1\0\0\0", 8)) + return false; + + efi_warn("Working around broken SetVirtualAddressMap()\n"); +--- a/drivers/firmware/efi/libstub/efistub.h ++++ b/drivers/firmware/efi/libstub/efistub.h +@@ -1054,6 +1054,8 @@ struct efi_smbios_record { + u16 handle; + }; + ++const struct efi_smbios_record *efi_get_smbios_record(u8 type); ++ + struct efi_smbios_type1_record { + struct efi_smbios_record header; + +@@ -1067,6 +1069,38 @@ struct efi_smbios_type1_record { + u8 family; + }; + ++struct efi_smbios_type4_record { ++ struct efi_smbios_record header; ++ ++ u8 socket; ++ u8 processor_type; ++ u8 processor_family; ++ u8 processor_manufacturer; ++ u8 processor_id[8]; ++ u8 processor_version; ++ u8 voltage; ++ u16 external_clock; ++ u16 max_speed; ++ u16 current_speed; ++ u8 status; ++ u8 processor_upgrade; ++ u16 l1_cache_handle; ++ u16 l2_cache_handle; ++ u16 l3_cache_handle; ++ u8 serial_number; ++ u8 asset_tag; ++ u8 part_number; ++ u8 core_count; ++ u8 enabled_core_count; ++ u8 thread_count; ++ u16 processor_characteristics; ++ u16 processor_family2; ++ u16 core_count2; ++ u16 enabled_core_count2; ++ u16 thread_count2; ++ u16 thread_enabled; ++}; ++ + #define efi_get_smbios_string(__type, __name) ({ \ + int size = sizeof(struct efi_smbios_type ## __type ## _record); \ + int off = offsetof(struct efi_smbios_type ## __type ## _record, \ +--- a/drivers/firmware/efi/libstub/smbios.c ++++ b/drivers/firmware/efi/libstub/smbios.c +@@ -22,19 +22,29 @@ struct efi_smbios_protocol { + u8 minor_version; + }; + +-const u8 *__efi_get_smbios_string(u8 type, int offset, int recsize) ++const struct efi_smbios_record *efi_get_smbios_record(u8 type) + { + struct efi_smbios_record *record; + efi_smbios_protocol_t *smbios; + efi_status_t status; + u16 handle = 0xfffe; +- const u8 *strtable; + + status = efi_bs_call(locate_protocol, &EFI_SMBIOS_PROTOCOL_GUID, NULL, + (void **)&smbios) ?: + efi_call_proto(smbios, get_next, &handle, &type, &record, NULL); + if (status != EFI_SUCCESS) + return NULL; ++ return record; ++} ++ ++const u8 *__efi_get_smbios_string(u8 type, int offset, int recsize) ++{ ++ const struct efi_smbios_record *record; ++ const u8 *strtable; ++ ++ record = efi_get_smbios_record(type); ++ if (!record) ++ return NULL; + + strtable = (u8 *)record + recsize; + for (int i = 1; i < ((u8 *)record)[offset]; i++) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/char-pcmcia-cm4000_cs-Fix-use-after-free-in-cm4000_f.patch new/patches.suse/char-pcmcia-cm4000_cs-Fix-use-after-free-in-cm4000_f.patch --- old/patches.suse/char-pcmcia-cm4000_cs-Fix-use-after-free-in-cm4000_f.patch 2023-02-23 04:31:08.000000000 +0100 +++ new/patches.suse/char-pcmcia-cm4000_cs-Fix-use-after-free-in-cm4000_f.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,147 +0,0 @@ -From: Hyunwoo Kim <imv4...@gmail.com> -Date: Sun, 18 Sep 2022 21:07:01 -0700 -Subject: char: pcmcia: cm4000_cs: Fix use-after-free in cm4000_fops -Patch-mainline: Submitted, 20220919040701.GA302806@ubuntu -References: bsc#1204894 CVE-2022-44032 - -A race condition may occur if the user physically removes the pcmcia -device while calling open() for this char device node. - -This is a race condition between the cmm_open() function and the -cm4000_detach() function, which may eventually result in UAF. - -So, add a refcount check to cm4000_detach() to free the "dev" structure -after the char device node is close()d. - -Signed-off-by: Hyunwoo Kim <imv4...@gmail.com> -Signed-off-by: Jiri Slaby <jsl...@suse.cz> ---- - drivers/char/pcmcia/cm4000_cs.c | 58 ++++++++++++++++++++++++++++------------ - 1 file changed, 41 insertions(+), 17 deletions(-) - ---- a/drivers/char/pcmcia/cm4000_cs.c -+++ b/drivers/char/pcmcia/cm4000_cs.c -@@ -55,6 +55,7 @@ - } while (0) - - static DEFINE_MUTEX(cmm_mutex); -+static DEFINE_MUTEX(remove_mutex); - - #define T_1SEC (HZ) - #define T_10MSEC msecs_to_jiffies(10) -@@ -103,7 +104,8 @@ static int major; /* major number we ge - #define REG_STOPBITS(x) (x + 7) - - struct cm4000_dev { -- struct pcmcia_device *p_dev; -+ struct pcmcia_device *p_dev; -+ struct kref refcnt; - - unsigned char atr[MAX_ATR]; - unsigned char rbuf[512]; -@@ -146,6 +148,9 @@ struct cm4000_dev { - - #define ZERO_DEV(dev) memset(&((dev)->init), 0, sizeof((dev)->init)) - -+static void stop_monitor(struct cm4000_dev *dev); -+static void cm4000_delete(struct kref *kref); -+ - static struct pcmcia_device *dev_table[CM4000_MAX_DEV]; - static struct class *cmm_class; - -@@ -416,6 +421,30 @@ static struct card_fixup card_fixups[] = - }, - }; - -+ -+static void cm4000_delete(struct kref *kref) -+{ -+ struct cm4000_dev *dev = container_of(kref, struct cm4000_dev, refcnt); -+ struct pcmcia_device *link = dev->p_dev; -+ int devno; -+ -+ /* find device */ -+ for (devno = 0; devno < CM4000_MAX_DEV; devno++) -+ if (dev_table[devno] == link) -+ break; -+ if (devno == CM4000_MAX_DEV) -+ return; -+ -+ stop_monitor(dev); -+ -+ cm4000_release(link); -+ -+ dev_table[devno] = NULL; -+ kfree(dev); -+ -+ device_destroy(cmm_class, MKDEV(major, devno)); -+} -+ - static void set_cardparameter(struct cm4000_dev *dev) - { - int i; -@@ -1629,6 +1658,7 @@ static int cmm_open(struct inode *inode, - if (minor >= CM4000_MAX_DEV) - return -ENODEV; - -+ mutex_lock(&remove_mutex); - mutex_lock(&cmm_mutex); - link = dev_table[minor]; - if (link == NULL || !pcmcia_dev_present(link)) { -@@ -1673,8 +1703,12 @@ static int cmm_open(struct inode *inode, - - DEBUGP(2, dev, "<- cmm_open\n"); - ret = stream_open(inode, filp); -+ -+ kref_get(&dev->refcnt); - out: - mutex_unlock(&cmm_mutex); -+ mutex_unlock(&remove_mutex); -+ - return ret; - } - -@@ -1703,6 +1737,8 @@ static int cmm_close(struct inode *inode - link->open = 0; /* only one open per device */ - wake_up(&dev->devq); /* socket removed? */ - -+ kref_put(&dev->refcnt, cm4000_delete); -+ - DEBUGP(2, dev, "cmm_close\n"); - return 0; - } -@@ -1808,6 +1844,7 @@ static int cm4000_probe(struct pcmcia_de - init_waitqueue_head(&dev->ioq); - init_waitqueue_head(&dev->atrq); - init_waitqueue_head(&dev->readq); -+ kref_init(&dev->refcnt); - - ret = cm4000_config(link, i); - if (ret) { -@@ -1824,23 +1861,10 @@ static int cm4000_probe(struct pcmcia_de - static void cm4000_detach(struct pcmcia_device *link) - { - struct cm4000_dev *dev = link->priv; -- int devno; -- -- /* find device */ -- for (devno = 0; devno < CM4000_MAX_DEV; devno++) -- if (dev_table[devno] == link) -- break; -- if (devno == CM4000_MAX_DEV) -- return; -- -- stop_monitor(dev); -- -- cm4000_release(link); - -- dev_table[devno] = NULL; -- kfree(dev); -- -- device_destroy(cmm_class, MKDEV(major, devno)); -+ mutex_lock(&remove_mutex); -+ kref_put(&dev->refcnt, cm4000_delete); -+ mutex_unlock(&remove_mutex); - - return; - } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/char-pcmcia-cm4040_cs-Fix-use-after-free-in-reader_f.patch new/patches.suse/char-pcmcia-cm4040_cs-Fix-use-after-free-in-reader_f.patch --- old/patches.suse/char-pcmcia-cm4040_cs-Fix-use-after-free-in-reader_f.patch 2023-02-23 04:31:08.000000000 +0100 +++ new/patches.suse/char-pcmcia-cm4040_cs-Fix-use-after-free-in-reader_f.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,132 +0,0 @@ -From: Hyunwoo Kim <imv4...@gmail.com> -Date: Sun, 18 Sep 2022 21:04:57 -0700 -Subject: char: pcmcia: cm4040_cs: Fix use-after-free in reader_fops -Patch-mainline: Submitted, 20220919040457.GA302681@ubuntu -References: bsc#1204922 CVE-2022-44033 - -A race condition may occur if the user physically removes the pcmcia -device while calling open() for this char device node. - -This is a race condition between the cm4040_open() function and the -reader_detach() function, which may eventually result in UAF. - -So, add a refcount check to reader_detach() to free the "dev" structure -after the char device node is close()d. - -Signed-off-by: Hyunwoo Kim <imv4...@gmail.com> -Signed-off-by: Jiri Slaby <jsl...@suse.cz> ---- - drivers/char/pcmcia/cm4040_cs.c | 50 ++++++++++++++++++++++++++++------------ - 1 file changed, 35 insertions(+), 15 deletions(-) - ---- a/drivers/char/pcmcia/cm4040_cs.c -+++ b/drivers/char/pcmcia/cm4040_cs.c -@@ -59,6 +59,7 @@ static DEFINE_MUTEX(cm4040_mutex); - /* how often to poll for fifo status change */ - #define POLL_PERIOD msecs_to_jiffies(10) - -+static void cm4040_delete(struct kref *kref); - static void reader_release(struct pcmcia_device *link); - - static int major; -@@ -73,6 +74,7 @@ struct reader_dev { - wait_queue_head_t poll_wait; - wait_queue_head_t read_wait; - wait_queue_head_t write_wait; -+ struct kref refcnt; - unsigned long buffer_status; - unsigned long timeout; - unsigned char s_buf[READ_WRITE_BUFFER_SIZE]; -@@ -102,6 +104,28 @@ static inline unsigned char xinb(unsigne - } - #endif - -+static void cm4040_delete(struct kref *kref) -+{ -+ struct reader_dev *dev = container_of(kref, struct reader_dev, refcnt); -+ struct pcmcia_device *link = dev->p_dev; -+ int devno; -+ -+ /* find device */ -+ for (devno = 0; devno < CM_MAX_DEV; devno++) { -+ if (dev_table[devno] == link) -+ break; -+ } -+ if (devno == CM_MAX_DEV) -+ return; -+ -+ reader_release(link); -+ -+ dev_table[devno] = NULL; -+ kfree(dev); -+ -+ device_destroy(cmx_class, MKDEV(major, devno)); -+} -+ - /* poll the device fifo status register. not to be confused with - * the poll syscall. */ - static void cm4040_do_poll(struct timer_list *t) -@@ -442,6 +466,7 @@ static int cm4040_open(struct inode *ino - return -ENODEV; - - mutex_lock(&cm4040_mutex); -+ - link = dev_table[minor]; - if (link == NULL || !pcmcia_dev_present(link)) { - ret = -ENODEV; -@@ -468,8 +493,11 @@ static int cm4040_open(struct inode *ino - - DEBUGP(2, dev, "<- cm4040_open (successfully)\n"); - ret = nonseekable_open(inode, filp); -+ -+ kref_get(&dev->refcnt); - out: - mutex_unlock(&cm4040_mutex); -+ - return ret; - } - -@@ -495,6 +523,9 @@ static int cm4040_close(struct inode *in - wake_up(&dev->devq); - - DEBUGP(2, dev, "<- cm4040_close\n"); -+ -+ kref_put(&dev->refcnt, cm4040_delete); -+ - return 0; - } - -@@ -584,6 +615,7 @@ static int reader_probe(struct pcmcia_de - init_waitqueue_head(&dev->read_wait); - init_waitqueue_head(&dev->write_wait); - timer_setup(&dev->poll_timer, cm4040_do_poll, 0); -+ kref_init(&dev->refcnt); - - ret = reader_config(link, i); - if (ret) { -@@ -600,22 +632,10 @@ static int reader_probe(struct pcmcia_de - static void reader_detach(struct pcmcia_device *link) - { - struct reader_dev *dev = link->priv; -- int devno; -- -- /* find device */ -- for (devno = 0; devno < CM_MAX_DEV; devno++) { -- if (dev_table[devno] == link) -- break; -- } -- if (devno == CM_MAX_DEV) -- return; -- -- reader_release(link); -- -- dev_table[devno] = NULL; -- kfree(dev); - -- device_destroy(cmx_class, MKDEV(major, devno)); -+ mutex_lock(&cm4040_mutex); -+ kref_put(&dev->refcnt, cm4040_delete); -+ mutex_unlock(&cm4040_mutex); - - return; - } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/char-pcmcia-scr24x_cs-Fix-use-after-free-in-scr24x_f.patch new/patches.suse/char-pcmcia-scr24x_cs-Fix-use-after-free-in-scr24x_f.patch --- old/patches.suse/char-pcmcia-scr24x_cs-Fix-use-after-free-in-scr24x_f.patch 2023-02-23 04:31:08.000000000 +0100 +++ new/patches.suse/char-pcmcia-scr24x_cs-Fix-use-after-free-in-scr24x_f.patch 1970-01-01 01:00:00.000000000 +0100 @@ -1,161 +0,0 @@ -From: Hyunwoo Kim <imv4...@gmail.com> -Date: Mon, 19 Sep 2022 03:18:25 -0700 -Subject: char: pcmcia: scr24x_cs: Fix use-after-free in scr24x_fops -Patch-mainline: Submitted, 20220919101825.GA313940@ubuntu -References: bsc#1204901 CVE-2022-44034 - -A race condition may occur if the user physically removes the -pcmcia device while calling open() for this char device node. - -This is a race condition between the scr24x_open() function and -the scr24x_remove() function, which may eventually result in UAF. - -So, add a mutex to the scr24x_open() and scr24x_remove() functions -to avoid race contidion of krefs. - -Signed-off-by: Hyunwoo Kim <imv4...@gmail.com> -Reported-by: kernel test robot <l...@intel.com> -Signed-off-by: Jiri Slaby <jsl...@suse.cz> ---- - drivers/char/pcmcia/scr24x_cs.c | 73 ++++++++++++++++++++++++++++------------ - 1 file changed, 52 insertions(+), 21 deletions(-) - ---- a/drivers/char/pcmcia/scr24x_cs.c -+++ b/drivers/char/pcmcia/scr24x_cs.c -@@ -33,6 +33,7 @@ - - struct scr24x_dev { - struct device *dev; -+ struct pcmcia_device *p_dev; - struct cdev c_dev; - unsigned char buf[CCID_MAX_LEN]; - int devno; -@@ -42,15 +43,31 @@ struct scr24x_dev { - }; - - #define SCR24X_DEVS 8 --static DECLARE_BITMAP(scr24x_minors, SCR24X_DEVS); -+static struct pcmcia_device *dev_table[SCR24X_DEVS]; -+static DEFINE_MUTEX(remove_mutex); - - static struct class *scr24x_class; - static dev_t scr24x_devt; - - static void scr24x_delete(struct kref *kref) - { -- struct scr24x_dev *dev = container_of(kref, struct scr24x_dev, -- refcnt); -+ struct scr24x_dev *dev = container_of(kref, struct scr24x_dev, refcnt); -+ struct pcmcia_device *link = dev->p_dev; -+ int devno; -+ -+ for (devno = 0; devno < SCR24X_DEVS; devno++) { -+ if (dev_table[devno] == link) -+ break; -+ } -+ if (devno == SCR24X_DEVS) -+ return; -+ -+ device_destroy(scr24x_class, MKDEV(MAJOR(scr24x_devt), dev->devno)); -+ mutex_lock(&dev->lock); -+ pcmcia_disable_device(link); -+ cdev_del(&dev->c_dev); -+ dev->dev = NULL; -+ mutex_unlock(&dev->lock); - - kfree(dev); - } -@@ -73,11 +90,24 @@ static int scr24x_wait_ready(struct scr2 - - static int scr24x_open(struct inode *inode, struct file *filp) - { -- struct scr24x_dev *dev = container_of(inode->i_cdev, -- struct scr24x_dev, c_dev); -+ struct scr24x_dev *dev; -+ struct pcmcia_device *link; -+ int minor = iminor(inode); -+ -+ if (minor >= SCR24X_DEVS) -+ return -ENODEV; -+ -+ mutex_lock(&remove_mutex); -+ link = dev_table[minor]; -+ if (link == NULL) { -+ mutex_unlock(&remove_mutex); -+ return -ENODEV; -+ } - -+ dev = link->priv; - kref_get(&dev->refcnt); - filp->private_data = dev; -+ mutex_unlock(&remove_mutex); - - return stream_open(inode, filp); - } -@@ -232,24 +262,31 @@ static int scr24x_config_check(struct pc - static int scr24x_probe(struct pcmcia_device *link) - { - struct scr24x_dev *dev; -- int ret; -+ int i, ret; -+ -+ for (i = 0; i < SCR24X_DEVS; i++) { -+ if (dev_table[i] == NULL) -+ break; -+ } -+ -+ if (i == SCR24X_DEVS) -+ return -ENODEV; - - dev = kzalloc(sizeof(*dev), GFP_KERNEL); - if (!dev) - return -ENOMEM; - -- dev->devno = find_first_zero_bit(scr24x_minors, SCR24X_DEVS); -- if (dev->devno >= SCR24X_DEVS) { -- ret = -EBUSY; -- goto err; -- } -+ dev->devno = i; - - mutex_init(&dev->lock); - kref_init(&dev->refcnt); - - link->priv = dev; -+ dev->p_dev = link; - link->config_flags |= CONF_ENABLE_IRQ | CONF_AUTO_SET_IO; - -+ dev_table[i] = link; -+ - ret = pcmcia_loop_config(link, scr24x_config_check, NULL); - if (ret < 0) - goto err; -@@ -282,8 +319,8 @@ static int scr24x_probe(struct pcmcia_de - return 0; - - err: -- if (dev->devno < SCR24X_DEVS) -- clear_bit(dev->devno, scr24x_minors); -+ dev_table[i] = NULL; -+ - kfree (dev); - return ret; - } -@@ -292,15 +329,9 @@ static void scr24x_remove(struct pcmcia_ - { - struct scr24x_dev *dev = (struct scr24x_dev *)link->priv; - -- device_destroy(scr24x_class, MKDEV(MAJOR(scr24x_devt), dev->devno)); -- mutex_lock(&dev->lock); -- pcmcia_disable_device(link); -- cdev_del(&dev->c_dev); -- clear_bit(dev->devno, scr24x_minors); -- dev->dev = NULL; -- mutex_unlock(&dev->lock); -- -+ mutex_lock(&remove_mutex); - kref_put(&dev->refcnt, scr24x_delete); -+ mutex_unlock(&remove_mutex); - } - - static const struct pcmcia_device_id scr24x_ids[] = { ++++++ series.conf ++++++ --- /var/tmp/diff_new_pack.UPPK0x/_old 2023-03-10 22:07:06.369057718 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:06.373057736 +0100 @@ -40,6 +40,23 @@ patches.kernel.org/6.2.1-011-randstruct-disable-Clang-15-support.patch patches.kernel.org/6.2.1-012-bpf-add-missing-header-file-include.patch patches.kernel.org/6.2.1-013-Linux-6.2.1.patch + patches.kernel.org/6.2.2-001-ALSA-hda-cs35l41-Correct-error-condition-handli.patch + patches.kernel.org/6.2.2-002-crypto-arm64-sm4-gcm-Fix-possible-crash-in-GCM-.patch + patches.kernel.org/6.2.2-003-bpf-bpf_fib_lookup-should-not-return-neigh-in-N.patch + patches.kernel.org/6.2.2-004-vc_screen-don-t-clobber-return-value-in-vcs_rea.patch + patches.kernel.org/6.2.2-005-drm-amd-display-Move-DCN314-DOMAIN-power-contro.patch + patches.kernel.org/6.2.2-006-drm-amd-display-Properly-reuse-completion-struc.patch + patches.kernel.org/6.2.2-007-scripts-tags.sh-fix-incompatibility-with-PCRE2.patch + patches.kernel.org/6.2.2-008-wifi-rtw88-usb-Set-qsel-correctly.patch + patches.kernel.org/6.2.2-009-wifi-rtw88-usb-send-Zero-length-packets-if-nece.patch + patches.kernel.org/6.2.2-010-wifi-rtw88-usb-drop-now-unnecessary-URB-size-ch.patch + patches.kernel.org/6.2.2-011-usb-dwc3-pci-add-support-for-the-Intel-Meteor-L.patch + patches.kernel.org/6.2.2-012-USB-serial-option-add-support-for-VW-Skoda-Cars.patch + patches.kernel.org/6.2.2-013-usb-gadget-u_serial-Add-null-pointer-check-in-g.patch + patches.kernel.org/6.2.2-014-arm64-dts-uniphier-Fix-property-name-in-PXs3-US.patch + patches.kernel.org/6.2.2-015-usb-typec-pd-Remove-usb_suspend_supported-sysfs.patch + patches.kernel.org/6.2.2-016-USB-core-Don-t-hold-device-lock-while-reading-t.patch + patches.kernel.org/6.2.2-017-Linux-6.2.2.patch ######################################################## # Build fixes that apply to the vanilla kernel too. @@ -86,9 +103,7 @@ # to get into mainline any time soon (or ever) belong # to area specific sections below. ######################################################## - patches.suse/char-pcmcia-cm4000_cs-Fix-use-after-free-in-cm4000_f.patch - patches.suse/char-pcmcia-cm4040_cs-Fix-use-after-free-in-reader_f.patch - patches.suse/char-pcmcia-scr24x_cs-Fix-use-after-free-in-scr24x_f.patch + patches.suse/arm64-efi-Use-SMBIOS-processor-ID-to-key-off-Altra-q.patch ######################################################## # kbuild/module infrastructure fixes @@ -162,11 +177,11 @@ # Bug 1198101 - VUL-0: shim: openSUSE tumbleweed not fully locked down? Add opensuse-cert-prompt back to openSUSE shim # Lock down functions for secure boot - patches.suse/0001-security-lockdown-expose-a-hook-to-lock-the-kernel-down.patch - patches.suse/0002-efi-Add-an-EFI_SECURE_BOOT-flag-to-indicate-secure-boot-mode.patch - patches.suse/0003-efi-Lock-down-the-kernel-if-booted-in-secure-boot-mode.patch - patches.suse/0004-efi-Lock-down-the-kernel-at-the-integrity-level-if-b.patch - patches.suse/arm64-lock-down-kernel-in-secure-boot-mode.patch ++jlee patches.suse/0001-security-lockdown-expose-a-hook-to-lock-the-kernel-down.patch ++jlee patches.suse/0002-efi-Add-an-EFI_SECURE_BOOT-flag-to-indicate-secure-boot-mode.patch ++jlee patches.suse/0003-efi-Lock-down-the-kernel-if-booted-in-secure-boot-mode.patch ++jlee patches.suse/0004-efi-Lock-down-the-kernel-at-the-integrity-level-if-b.patch ++jlee patches.suse/arm64-lock-down-kernel-in-secure-boot-mode.patch # crypto ++++++ source-timestamp ++++++ --- /var/tmp/diff_new_pack.UPPK0x/_old 2023-03-10 22:07:06.405057882 +0100 +++ /var/tmp/diff_new_pack.UPPK0x/_new 2023-03-10 22:07:06.409057900 +0100 @@ -1,4 +1,4 @@ -2023-02-27 11:39:51 +0000 -GIT Revision: 69e0e95118afe307ac9da57c2cc7f80673a41423 +2023-03-09 06:06:13 +0000 +GIT Revision: 44ca817f15b215421a4c788790dd5351c186d1df GIT Branch: stable