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 2024-01-26 22:46:50 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/kernel-source (Old) and /work/SRC/openSUSE:Factory/.kernel-source.new.1815 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "kernel-source" Fri Jan 26 22:46:50 2024 rev:718 rq:1141663 version:6.7.1 Changes: -------- --- /work/SRC/openSUSE:Factory/kernel-source/dtb-aarch64.changes 2024-01-23 22:55:04.290061819 +0100 +++ /work/SRC/openSUSE:Factory/.kernel-source.new.1815/dtb-aarch64.changes 2024-01-26 22:46:57.883544336 +0100 @@ -1,0 +2,84 @@ +Fri Jan 26 07:27:41 CET 2024 - jsl...@suse.cz + +- rpm/constraints.in: add static multibuild packages + Commit 841012b049a5 (rpm/mkspec: use kernel-source: prefix for + constraints on multibuild) added "kernel-source:" prefix to the + dynamically generated kernels. But there are also static ones like + kernel-docs. Those fail to build as the constraints are still not + applied. + So add the prefix also to the static ones. + Note kernel-docs-rt is given kernel-source-rt prefix. I am not sure it + will ever be multibuilt... +- commit c2e0681 + +------------------------------------------------------------------- +Thu Jan 25 12:41:57 CET 2024 - msucha...@suse.de + +- Revert "Limit kernel-source build to architectures for which the kernel binary" + This reverts commit 08a9e44c00758b5f3f3b641830ab6affff041132. + The fix for bsc#1108281 directly causes bsc#1218768, revert. +- commit 2943b8a + +------------------------------------------------------------------- +Thu Jan 25 12:39:11 CET 2024 - msucha...@suse.de + +- mkspec: Include constraints for both multibuild and plain package always + There is no need to check for multibuild flag, the constraints can be + always generated for both cases. +- commit 308ea09 + +------------------------------------------------------------------- +Thu Jan 25 11:53:37 CET 2024 - jsl...@suse.cz + +- rpm/mkspec: use kernel-source: prefix for constraints on multibuild + Otherwise the constraints are not applied with multibuild enabled. +- commit 841012b + +------------------------------------------------------------------- +Wed Jan 24 14:40:23 CET 2024 - jsl...@suse.cz + +- rpm/kernel-source.rpmlintrc: add action-ebpf + Upstream commit a79d8ba734bd (selftests: tc-testing: remove buildebpf + plugin) added this precompiled binary blob. Adapt rpmlintrc for + kernel-source. +- commit b5ccb33 + +------------------------------------------------------------------- +Tue Jan 23 12:39:45 CET 2024 - ti...@suse.de + +- scripts/tar-up.sh: don't add spurious entry from kernel-sources.changes.old + The previous change added the manual entry from kernel-sources.change.old + to old_changelog.txt unnecessarily. Let's fix it. +- commit fb033e8 + +------------------------------------------------------------------- +Tue Jan 23 07:35:27 CET 2024 - jsl...@suse.cz + +- rpm/kernel-docs.spec.in: fix build with 6.8 + Since upstream commit f061c9f7d058 (Documentation: Document each netlink + family), the build needs python yaml. +- commit 6a7ece3 + +------------------------------------------------------------------- +Mon Jan 22 08:46:41 CET 2024 - jsl...@suse.cz + +- futex: Prevent the reuse of stale pi_state (bsc#1218841). + Update upstream status (Queued in subsystem maintainer repository). +- commit a3ee207 + +------------------------------------------------------------------- +Mon Jan 22 08:40:52 CET 2024 - jsl...@suse.cz + +- Refresh + patches.rpmify/media-solo6x10-replace-max-a-min-b-c-by-clamp-b-a-c.patch. + Update usptream status. +- commit 589bdfa + +------------------------------------------------------------------- +Sun Jan 21 12:27:18 CET 2024 - col...@suse.de + +- Update config files, enable CONFIG_IMA_DISABLE_HTABLE in all archs for + Tumbleweed as SLE15-SP6 kernel does (bsc#1218400). +- commit 020caa6 + +------------------------------------------------------------------- @@ -546,0 +631,6 @@ +Wed Jan 3 11:44:52 CET 2024 - msucha...@suse.de + +- rpm/config.sh: Enable multibuild. +- commit 7b72f91 + +------------------------------------------------------------------- @@ -5708 +5798 @@ -- commit 06e7b0d +- commit d8da3f8 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 New: ---- _multibuild ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dtb-aarch64.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.271846420 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.271846420 +0100 @@ -27,7 +27,7 @@ Name: dtb-aarch64 Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %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.hf8DyH/_old 2024-01-26 22:47:06.395850885 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.395850885 +0100 @@ -19,7 +19,7 @@ %define srcversion 6.7 %define patchversion 6.7.1 -%define git_commit 4959dd8dad49eb4f1644953682e53c1d966d6eb3 +%define git_commit 6aca25404404e4f72fa252563503b29fe5828cca %define variant %{nil} %define compress_modules zstd %define compress_vmlinux xz @@ -115,7 +115,7 @@ Group: System/Kernel Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif ++++++ kernel-debug.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.435852326 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.439852470 +0100 @@ -19,7 +19,7 @@ %define srcversion 6.7 %define patchversion 6.7.1 -%define git_commit 4959dd8dad49eb4f1644953682e53c1d966d6eb3 +%define git_commit 6aca25404404e4f72fa252563503b29fe5828cca %define variant %{nil} %define compress_modules zstd %define compress_vmlinux xz @@ -115,7 +115,7 @@ Group: System/Kernel Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif @@ -299,7 +299,7 @@ NoSource: 120 NoSource: 121 %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} -ExclusiveArch: aarch64 %ix86 ppc64le powerpc64le x86_64 +ExclusiveArch: aarch64 %ix86 ppc64le x86_64 %else ExclusiveArch: do_not_build %endif ++++++ kernel-default.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.467853478 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.471853622 +0100 @@ -19,7 +19,7 @@ %define srcversion 6.7 %define patchversion 6.7.1 -%define git_commit 4959dd8dad49eb4f1644953682e53c1d966d6eb3 +%define git_commit 6aca25404404e4f72fa252563503b29fe5828cca %define variant %{nil} %define compress_modules zstd %define compress_vmlinux xz @@ -115,7 +115,7 @@ Group: System/Kernel Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif @@ -299,7 +299,7 @@ NoSource: 120 NoSource: 121 %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} -ExclusiveArch: aarch64 armv6hl armv7hl %ix86 ppc64le powerpc64le riscv64 s390x x86_64 +ExclusiveArch: aarch64 armv6hl armv7hl %ix86 ppc64le riscv64 s390x x86_64 %else ExclusiveArch: do_not_build %endif ++++++ kernel-docs.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.495854487 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.499854631 +0100 @@ -18,7 +18,7 @@ %define srcversion 6.7 %define patchversion 6.7.1 -%define git_commit 4959dd8dad49eb4f1644953682e53c1d966d6eb3 +%define git_commit 6aca25404404e4f72fa252563503b29fe5828cca %define variant %{nil} %define build_html 1 %define build_pdf 0 @@ -33,7 +33,7 @@ Group: Documentation/Man Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif @@ -52,6 +52,7 @@ BuildRequires: graphviz-gnome %if ! 0%{?suse_version} || 0%{?suse_version} > 1500 BuildRequires: python3-base +BuildRequires: python3-PyYAML BuildRequires: python3-Sphinx BuildRequires: texlive-amscls %else @@ -86,7 +87,6 @@ Provides: %name = %version-%source_rel Provides: %name-srchash-%git_commit %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} -ExclusiveArch: noarch %ix86 aarch64 armv6hl armv7hl ppc64le powerpc64le riscv64 s390x x86_64 BuildArch: noarch %else ExclusiveArch: do_not_build ++++++ kernel-kvmsmall.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.527855639 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.531855783 +0100 @@ -19,7 +19,7 @@ %define srcversion 6.7 %define patchversion 6.7.1 -%define git_commit 4959dd8dad49eb4f1644953682e53c1d966d6eb3 +%define git_commit 6aca25404404e4f72fa252563503b29fe5828cca %define variant %{nil} %define compress_modules zstd %define compress_vmlinux xz @@ -115,7 +115,7 @@ Group: System/Kernel Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif @@ -299,7 +299,7 @@ NoSource: 120 NoSource: 121 %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} -ExclusiveArch: aarch64 ppc64le powerpc64le x86_64 +ExclusiveArch: aarch64 ppc64le x86_64 %else ExclusiveArch: do_not_build %endif ++++++ kernel-lpae.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.559856792 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.563856936 +0100 @@ -19,7 +19,7 @@ %define srcversion 6.7 %define patchversion 6.7.1 -%define git_commit 4959dd8dad49eb4f1644953682e53c1d966d6eb3 +%define git_commit 6aca25404404e4f72fa252563503b29fe5828cca %define variant %{nil} %define compress_modules zstd %define compress_vmlinux xz @@ -115,7 +115,7 @@ Group: System/Kernel Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif ++++++ kernel-obs-build.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.603858376 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.603858376 +0100 @@ -44,7 +44,7 @@ %endif %endif %endif -BuildRequires: kernel%kernel_flavor-srchash-4959dd8dad49eb4f1644953682e53c1d966d6eb3 +BuildRequires: kernel%kernel_flavor-srchash-6aca25404404e4f72fa252563503b29fe5828cca %if 0%{?rhel_version} BuildRequires: kernel @@ -52,7 +52,7 @@ %endif %if ! 0%{?is_kotd} || %{?is_kotd_qa}%{!?is_kotd_qa:0} -ExclusiveArch: aarch64 armv6hl armv7hl ppc64le powerpc64le riscv64 s390x x86_64 +ExclusiveArch: aarch64 armv6hl armv7hl ppc64le riscv64 s390x x86_64 %else ExclusiveArch: do_not_build %endif @@ -62,7 +62,7 @@ Group: SLES Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif ++++++ kernel-obs-qa.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.643859817 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.643859817 +0100 @@ -29,7 +29,7 @@ BuildRequires: kernel-obs-build BuildRequires: modutils %if ! 0%{?is_kotd} || %{?is_kotd_qa}%{!?is_kotd_qa:0} -ExclusiveArch: aarch64 armv6hl armv7hl ppc64le powerpc64le riscv64 s390x x86_64 +ExclusiveArch: aarch64 armv6hl armv7hl ppc64le riscv64 s390x x86_64 %else ExclusiveArch: do_not_build %endif @@ -38,7 +38,7 @@ Group: SLES Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif ++++++ kernel-pae.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.679861114 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.683861258 +0100 @@ -19,7 +19,7 @@ %define srcversion 6.7 %define patchversion 6.7.1 -%define git_commit 4959dd8dad49eb4f1644953682e53c1d966d6eb3 +%define git_commit 6aca25404404e4f72fa252563503b29fe5828cca %define variant %{nil} %define compress_modules zstd %define compress_vmlinux xz @@ -115,7 +115,7 @@ Group: System/Kernel Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif ++++++ kernel-source.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.731862986 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.735863130 +0100 @@ -18,7 +18,7 @@ %define srcversion 6.7 %define patchversion 6.7.1 -%define git_commit 4959dd8dad49eb4f1644953682e53c1d966d6eb3 +%define git_commit 6aca25404404e4f72fa252563503b29fe5828cca %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -33,7 +33,7 @@ Name: kernel-source Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif @@ -123,7 +123,6 @@ Source120: kabi.tar.bz2 Source121: sysctl.tar.bz2 %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} -ExclusiveArch: noarch %ix86 aarch64 armv6hl armv7hl ppc64le powerpc64le riscv64 s390x x86_64 BuildArch: noarch %else ExclusiveArch: do_not_build ++++++ kernel-syms.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.775864571 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.779864714 +0100 @@ -16,7 +16,7 @@ # -%define git_commit 4959dd8dad49eb4f1644953682e53c1d966d6eb3 +%define git_commit 6aca25404404e4f72fa252563503b29fe5828cca %define variant %{nil} %include %_sourcedir/kernel-spec-macros @@ -28,7 +28,7 @@ Version: 6.7.1 %if %using_buildservice %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif @@ -42,7 +42,7 @@ %ifarch aarch64 Requires: kernel-64kb-devel = %version-%source_rel %endif -%ifarch aarch64 armv6hl armv7hl %ix86 ppc64le powerpc64le riscv64 s390x x86_64 +%ifarch aarch64 armv6hl armv7hl %ix86 ppc64le riscv64 s390x x86_64 Requires: kernel-default-devel = %version-%source_rel %endif %ifarch armv7hl @@ -58,7 +58,7 @@ Source: README.KSYMS Requires: kernel-devel%variant = %version-%source_rel %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} -ExclusiveArch: %ix86 aarch64 armv6hl armv7hl ppc64le powerpc64le riscv64 s390x x86_64 +ExclusiveArch: %ix86 aarch64 armv6hl armv7hl ppc64le riscv64 s390x x86_64 %else ExclusiveArch: do_not_build %endif ++++++ kernel-vanilla.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.811865867 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.811865867 +0100 @@ -19,7 +19,7 @@ %define srcversion 6.7 %define patchversion 6.7.1 -%define git_commit 4959dd8dad49eb4f1644953682e53c1d966d6eb3 +%define git_commit 6aca25404404e4f72fa252563503b29fe5828cca %define variant %{nil} %define compress_modules zstd %define compress_vmlinux xz @@ -115,7 +115,7 @@ Group: System/Kernel Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif @@ -299,7 +299,7 @@ NoSource: 120 NoSource: 121 %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} -ExclusiveArch: aarch64 armv6hl armv7hl %ix86 ppc64le powerpc64le riscv64 s390x x86_64 +ExclusiveArch: aarch64 armv6hl armv7hl %ix86 ppc64le riscv64 s390x x86_64 %else ExclusiveArch: do_not_build %endif ++++++ kernel-zfcpdump.spec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.843867020 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.847867164 +0100 @@ -19,7 +19,7 @@ %define srcversion 6.7 %define patchversion 6.7.1 -%define git_commit 4959dd8dad49eb4f1644953682e53c1d966d6eb3 +%define git_commit 6aca25404404e4f72fa252563503b29fe5828cca %define variant %{nil} %define compress_modules zstd %define compress_vmlinux xz @@ -115,7 +115,7 @@ Group: System/Kernel Version: 6.7.1 %if 0%{?is_kotd} -Release: <RELEASE>.g4959dd8 +Release: <RELEASE>.g6aca254 %else Release: 0 %endif ++++++ _constraints ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:06.979871918 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:06.979871918 +0100 @@ -3,13 +3,21 @@ <overwrite> <conditions> <package>kernel-64kb</package> +<package>kernel-source:kernel-64kb</package> <package>kernel-debug</package> +<package>kernel-source:kernel-debug</package> <package>kernel-default</package> +<package>kernel-source:kernel-default</package> <package>kernel-kvmsmall</package> +<package>kernel-source:kernel-kvmsmall</package> <package>kernel-lpae</package> +<package>kernel-source:kernel-lpae</package> <package>kernel-pae</package> +<package>kernel-source:kernel-pae</package> <package>kernel-vanilla</package> +<package>kernel-source:kernel-vanilla</package> <package>kernel-zfcpdump</package> +<package>kernel-source:kernel-zfcpdump</package> </conditions> <hardware> <disk> @@ -25,6 +33,7 @@ <overwrite> <conditions> <package>kernel-syzkaller</package> + <package>kernel-source:kernel-syzkaller</package> </conditions> <hardware> <physicalmemory> @@ -53,6 +62,8 @@ <conditions> <package>kernel-docs</package> <package>kernel-docs-rt</package> + <package>kernel-source:kernel-docs</package> + <package>kernel-source-rt:kernel-docs-rt</package> </conditions> <hardware> <physicalmemory> @@ -67,13 +78,21 @@ <arch>armv7l</arch> <arch>armv6l</arch> <package>kernel-64kb</package> +<package>kernel-source:kernel-64kb</package> <package>kernel-debug</package> +<package>kernel-source:kernel-debug</package> <package>kernel-default</package> +<package>kernel-source:kernel-default</package> <package>kernel-kvmsmall</package> +<package>kernel-source:kernel-kvmsmall</package> <package>kernel-lpae</package> +<package>kernel-source:kernel-lpae</package> <package>kernel-pae</package> +<package>kernel-source:kernel-pae</package> <package>kernel-vanilla</package> +<package>kernel-source:kernel-vanilla</package> <package>kernel-zfcpdump</package> +<package>kernel-source:kernel-zfcpdump</package> </conditions> <hardware> <disk> @@ -87,13 +106,21 @@ <conditions> <arch>s390x</arch> <package>kernel-64kb</package> +<package>kernel-source:kernel-64kb</package> <package>kernel-debug</package> +<package>kernel-source:kernel-debug</package> <package>kernel-default</package> +<package>kernel-source:kernel-default</package> <package>kernel-kvmsmall</package> +<package>kernel-source:kernel-kvmsmall</package> <package>kernel-lpae</package> +<package>kernel-source:kernel-lpae</package> <package>kernel-pae</package> +<package>kernel-source:kernel-pae</package> <package>kernel-vanilla</package> +<package>kernel-source:kernel-vanilla</package> <package>kernel-zfcpdump</package> +<package>kernel-source:kernel-zfcpdump</package> </conditions> <hardware> <disk> @@ -111,13 +138,21 @@ <arch>i586</arch> <arch>x86_64</arch> <package>kernel-64kb</package> +<package>kernel-source:kernel-64kb</package> <package>kernel-debug</package> +<package>kernel-source:kernel-debug</package> <package>kernel-default</package> +<package>kernel-source:kernel-default</package> <package>kernel-kvmsmall</package> +<package>kernel-source:kernel-kvmsmall</package> <package>kernel-lpae</package> +<package>kernel-source:kernel-lpae</package> <package>kernel-pae</package> +<package>kernel-source:kernel-pae</package> <package>kernel-vanilla</package> +<package>kernel-source:kernel-vanilla</package> <package>kernel-zfcpdump</package> +<package>kernel-source:kernel-zfcpdump</package> </conditions> <hardware> <jobs>8</jobs> @@ -131,13 +166,21 @@ <arch>ppc64</arch> <arch>ppc64le</arch> <package>kernel-64kb</package> +<package>kernel-source:kernel-64kb</package> <package>kernel-debug</package> +<package>kernel-source:kernel-debug</package> <package>kernel-default</package> +<package>kernel-source:kernel-default</package> <package>kernel-kvmsmall</package> +<package>kernel-source:kernel-kvmsmall</package> <package>kernel-lpae</package> +<package>kernel-source:kernel-lpae</package> <package>kernel-pae</package> +<package>kernel-source:kernel-pae</package> <package>kernel-vanilla</package> +<package>kernel-source:kernel-vanilla</package> <package>kernel-zfcpdump</package> +<package>kernel-source:kernel-zfcpdump</package> </conditions> <hardware> <jobs>4</jobs> @@ -151,13 +194,21 @@ <arch>armv6l</arch> <arch>armv7l</arch> <package>kernel-64kb</package> +<package>kernel-source:kernel-64kb</package> <package>kernel-debug</package> +<package>kernel-source:kernel-debug</package> <package>kernel-default</package> +<package>kernel-source:kernel-default</package> <package>kernel-kvmsmall</package> +<package>kernel-source:kernel-kvmsmall</package> <package>kernel-lpae</package> +<package>kernel-source:kernel-lpae</package> <package>kernel-pae</package> +<package>kernel-source:kernel-pae</package> <package>kernel-vanilla</package> +<package>kernel-source:kernel-vanilla</package> <package>kernel-zfcpdump</package> +<package>kernel-source:kernel-zfcpdump</package> </conditions> <hardware> <jobs>2</jobs> @@ -182,13 +233,21 @@ <arch>aarch64</arch> <arch>x86_64</arch> <package>kernel-64kb</package> +<package>kernel-source:kernel-64kb</package> <package>kernel-debug</package> +<package>kernel-source:kernel-debug</package> <package>kernel-default</package> +<package>kernel-source:kernel-default</package> <package>kernel-kvmsmall</package> +<package>kernel-source:kernel-kvmsmall</package> <package>kernel-lpae</package> +<package>kernel-source:kernel-lpae</package> <package>kernel-pae</package> +<package>kernel-source:kernel-pae</package> <package>kernel-vanilla</package> +<package>kernel-source:kernel-vanilla</package> <package>kernel-zfcpdump</package> +<package>kernel-source:kernel-zfcpdump</package> </conditions> <hardware> <disk> @@ -202,13 +261,21 @@ <conditions> <arch>riscv64</arch> <package>kernel-64kb</package> +<package>kernel-source:kernel-64kb</package> <package>kernel-debug</package> +<package>kernel-source:kernel-debug</package> <package>kernel-default</package> +<package>kernel-source:kernel-default</package> <package>kernel-kvmsmall</package> +<package>kernel-source:kernel-kvmsmall</package> <package>kernel-lpae</package> +<package>kernel-source:kernel-lpae</package> <package>kernel-pae</package> +<package>kernel-source:kernel-pae</package> <package>kernel-vanilla</package> +<package>kernel-source:kernel-vanilla</package> <package>kernel-zfcpdump</package> +<package>kernel-source:kernel-zfcpdump</package> </conditions> <hardware> <disk> @@ -222,6 +289,7 @@ <arch>i586</arch> <arch>x86_64</arch> <package>kernel-obs-qa</package> + <package>kernel-source:kernel-obs-qa</package> </conditions> <sandbox>kvm</sandbox> </overwrite> @@ -231,6 +299,7 @@ <arch>i586</arch> <arch>x86_64</arch> <package>kernel-obs-qa-xen</package> + <package>kernel-source:kernel-obs-qa-xen</package> </conditions> <sandbox>xen</sandbox> </overwrite> ++++++ _multibuild ++++++ <multibuild> <package>kernel-syms</package> <package>kernel-obs-qa</package> <package>kernel-vanilla</package> <package>kernel-docs</package> <package>kernel-kvmsmall</package> <package>kernel-default</package> <package>kernel-zfcpdump</package> <package>kernel-obs-build</package> <package>kernel-lpae</package> <package>kernel-64kb</package> <package>kernel-pae</package> <package>dtb-aarch64</package> <package>dtb-armv6l</package> <package>dtb-armv7l</package> <package>kernel-debug</package> <package>dtb-riscv64</package> </multibuild> ++++++ config.sh ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:07.151878112 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:07.167878688 +0100 @@ -7,6 +7,8 @@ COMPRESS_VMLINUX="xz" # Compile binary devicetrees on master and stable branches. BUILD_DTBS="Yes" +# Generate a _multibuild file +MULTIBUILD="Yes" # Use new style livepatch package names LIVEPATCH=livepatch # buildservice projects to build the kernel against ++++++ 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 2024-01-07 22:02:40.000000000 +0100 +++ new/config/arm64/default 2024-01-22 10:24:11.000000000 +0100 @@ -10772,9 +10772,9 @@ # end of Generic IOMMU Pagetable Support # CONFIG_IOMMU_DEBUGFS is not set -# CONFIG_IOMMU_DEFAULT_DMA_STRICT is not set +CONFIG_IOMMU_DEFAULT_DMA_STRICT=y # CONFIG_IOMMU_DEFAULT_DMA_LAZY is not set -CONFIG_IOMMU_DEFAULT_PASSTHROUGH=y +# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set CONFIG_OF_IOMMU=y CONFIG_IOMMU_DMA=y CONFIG_IOMMU_SVA=y @@ -12767,7 +12767,7 @@ CONFIG_IMA_MEASURE_ASYMMETRIC_KEYS=y CONFIG_IMA_QUEUE_EARLY_BOOT_KEYS=y CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT=y -# CONFIG_IMA_DISABLE_HTABLE is not set +CONFIG_IMA_DISABLE_HTABLE=y CONFIG_EVM=y CONFIG_EVM_ATTR_FSUUID=y CONFIG_EVM_ADD_XATTRS=y diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/armv6hl/default new/config/armv6hl/default --- old/config/armv6hl/default 2024-01-07 22:02:40.000000000 +0100 +++ new/config/armv6hl/default 2024-01-22 10:24:11.000000000 +0100 @@ -8561,7 +8561,7 @@ # CONFIG_IMA_LOAD_X509 is not set CONFIG_IMA_MEASURE_ASYMMETRIC_KEYS=y CONFIG_IMA_QUEUE_EARLY_BOOT_KEYS=y -# CONFIG_IMA_DISABLE_HTABLE is not set +CONFIG_IMA_DISABLE_HTABLE=y CONFIG_EVM=y CONFIG_EVM_ATTR_FSUUID=y CONFIG_EVM_ADD_XATTRS=y diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/armv7hl/default new/config/armv7hl/default --- old/config/armv7hl/default 2024-01-07 22:02:40.000000000 +0100 +++ new/config/armv7hl/default 2024-01-22 10:24:11.000000000 +0100 @@ -12045,7 +12045,7 @@ # CONFIG_IMA_LOAD_X509 is not set CONFIG_IMA_MEASURE_ASYMMETRIC_KEYS=y CONFIG_IMA_QUEUE_EARLY_BOOT_KEYS=y -# CONFIG_IMA_DISABLE_HTABLE is not set +CONFIG_IMA_DISABLE_HTABLE=y CONFIG_EVM=y CONFIG_EVM_ATTR_FSUUID=y CONFIG_EVM_ADD_XATTRS=y diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/i386/pae new/config/i386/pae --- old/config/i386/pae 2024-01-07 22:02:40.000000000 +0100 +++ new/config/i386/pae 2024-01-22 10:24:11.000000000 +0100 @@ -10614,7 +10614,7 @@ CONFIG_IMA_MEASURE_ASYMMETRIC_KEYS=y CONFIG_IMA_QUEUE_EARLY_BOOT_KEYS=y # CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set -# CONFIG_IMA_DISABLE_HTABLE is not set +CONFIG_IMA_DISABLE_HTABLE=y CONFIG_EVM=y CONFIG_EVM_ATTR_FSUUID=y CONFIG_EVM_ADD_XATTRS=y diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/riscv64/default new/config/riscv64/default --- old/config/riscv64/default 2024-01-07 22:02:40.000000000 +0100 +++ new/config/riscv64/default 2024-01-22 10:24:11.000000000 +0100 @@ -9870,7 +9870,7 @@ # CONFIG_IMA_LOAD_X509 is not set CONFIG_IMA_MEASURE_ASYMMETRIC_KEYS=y CONFIG_IMA_QUEUE_EARLY_BOOT_KEYS=y -# CONFIG_IMA_DISABLE_HTABLE is not set +CONFIG_IMA_DISABLE_HTABLE=y CONFIG_EVM=y CONFIG_EVM_ATTR_FSUUID=y CONFIG_EVM_ADD_XATTRS=y diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/config/s390x/default new/config/s390x/default --- old/config/s390x/default 2024-01-07 22:02:40.000000000 +0100 +++ new/config/s390x/default 2024-01-22 10:24:11.000000000 +0100 @@ -4216,7 +4216,7 @@ CONFIG_IMA_MEASURE_ASYMMETRIC_KEYS=y CONFIG_IMA_QUEUE_EARLY_BOOT_KEYS=y # CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT is not set -# CONFIG_IMA_DISABLE_HTABLE is not set +CONFIG_IMA_DISABLE_HTABLE=y CONFIG_EVM=y CONFIG_EVM_ATTR_FSUUID=y CONFIG_EVM_ADD_XATTRS=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 2024-01-07 22:02:40.000000000 +0100 +++ new/config/x86_64/default 2024-01-22 10:24:11.000000000 +0100 @@ -10583,7 +10583,7 @@ CONFIG_IMA_MEASURE_ASYMMETRIC_KEYS=y CONFIG_IMA_QUEUE_EARLY_BOOT_KEYS=y CONFIG_IMA_SECURE_AND_OR_TRUSTED_BOOT=y -# CONFIG_IMA_DISABLE_HTABLE is not set +CONFIG_IMA_DISABLE_HTABLE=y CONFIG_EVM=y CONFIG_EVM_ATTR_FSUUID=y CONFIG_EVM_ADD_XATTRS=y ++++++ constraints.in ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:07.847903178 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:07.863903754 +0100 @@ -18,6 +18,7 @@ <overwrite> <conditions> <package>kernel-syzkaller</package> + <package>kernel-source:kernel-syzkaller</package> </conditions> <hardware> <physicalmemory> @@ -46,6 +47,8 @@ <conditions> <package>kernel-docs</package> <package>kernel-docs-rt</package> + <package>kernel-source:kernel-docs</package> + <package>kernel-source-rt:kernel-docs-rt</package> </conditions> <hardware> <physicalmemory> @@ -166,6 +169,7 @@ <arch>i586</arch> <arch>x86_64</arch> <package>kernel-obs-qa</package> + <package>kernel-source:kernel-obs-qa</package> </conditions> <sandbox>kvm</sandbox> </overwrite> @@ -175,6 +179,7 @@ <arch>i586</arch> <arch>x86_64</arch> <package>kernel-obs-qa-xen</package> + <package>kernel-source:kernel-obs-qa-xen</package> </conditions> <sandbox>xen</sandbox> </overwrite> ++++++ kernel-docs.spec.in ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:08.055910668 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:08.059910812 +0100 @@ -52,6 +52,7 @@ BuildRequires: graphviz-gnome %if ! 0%{?suse_version} || 0%{?suse_version} > 1500 BuildRequires: python3-base +BuildRequires: python3-PyYAML BuildRequires: python3-Sphinx BuildRequires: texlive-amscls %else @@ -86,7 +87,6 @@ Provides: %name = %version-%source_rel Provides: %name-srchash-%git_commit %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} -ExclusiveArch: noarch @ARCHS@ BuildArch: noarch %else ExclusiveArch: do_not_build ++++++ kernel-source.rpmlintrc ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:08.315920032 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:08.339920897 +0100 @@ -10,4 +10,6 @@ addFilter("hidden-file-or-dir /usr/src/linux-.*-obj/.*/.config") addFilter("hidden-file-or-dir /usr/src/linux-.*-obj/.*/.kernel-binary.spec.buildenv") addFilter("hidden-file-or-dir /boot/\..*\.hmac") +# a precompiled eBPF test +addFilter("arch-independent-package-contains-binary-or-object /usr/src/linux-.*/.*/action-ebpf") ++++++ kernel-source.spec.in ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:08.519927379 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:08.547928387 +0100 @@ -123,7 +123,6 @@ Source120: kabi.tar.bz2 Source121: sysctl.tar.bz2 %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} -ExclusiveArch: noarch @ARCHS@ BuildArch: noarch %else ExclusiveArch: do_not_build ++++++ mkspec ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:09.355957486 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:09.383958495 +0100 @@ -196,13 +196,11 @@ ); } # kernel-source.spec -do_spec('source', "kernel-source$variant.spec", %macros, - ARCHS => $all_archs); +do_spec('source', "kernel-source$variant.spec", %macros); if ($variant eq "") { # kernel-docs.spec - do_spec('docs', "kernel-docs$variant.spec", %macros, - ARCHS => $all_archs); + do_spec('docs', "kernel-docs$variant.spec", %macros); } # kernel-syms.spec @@ -262,7 +260,7 @@ # _constraints { - my @packages = map { "<package>kernel-$_</package>" } sort keys(%flavor_archs); + my @packages = map { "<package>kernel-$_</package>\n<package>kernel-source:kernel-$_</package>" } sort keys(%flavor_archs); my $packages = join("\n", @packages); do_spec('constraints', "_constraints", BINARY_PACKAGES_XML => $packages); @@ -473,8 +471,6 @@ my $arch = shift; return "\%ix86" if $arch eq "i386"; return "aarch64" if $arch eq "arm64"; - # ppc64le src rpms are built as powerpc64le - return "ppc64le powerpc64le" if $arch eq "ppc64le"; return $arch; } ++++++ patches.rpmify.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.rpmify/media-solo6x10-replace-max-a-min-b-c-by-clamp-b-a-c.patch new/patches.rpmify/media-solo6x10-replace-max-a-min-b-c-by-clamp-b-a-c.patch --- old/patches.rpmify/media-solo6x10-replace-max-a-min-b-c-by-clamp-b-a-c.patch 2024-01-19 07:57:28.000000000 +0100 +++ new/patches.rpmify/media-solo6x10-replace-max-a-min-b-c-by-clamp-b-a-c.patch 2024-01-22 08:40:52.000000000 +0100 @@ -1,15 +1,19 @@ From: Aurelien Jarno <aurel...@aurel32.net> Date: Sat, 13 Jan 2024 19:33:31 +0100 Subject: media: solo6x10: replace max(a, min(b, c)) by clamp(b, a, c) -Patch-mainline: submitted 20240113183334.1690740-1-aurel...@aurel32.net +Git-commit: 31e97d7c9ae3de072d7b424b2cf706a03ec10720 +Patch-mainline: 6.8-rc1 References: fix build and make it faster This patch replaces max(a, min(b, c)) by clamp(b, a, c) in the solo6x10 -driver. This improves the readability and more importantly, for the +driver. This improves the readability and more importantly, for the solo6x10-p2m.c file, this reduces on my system (x86-64, gcc 13): -- the preprocessed size from 121 MiB to 4.5 MiB; -- the build CPU time from 46.8 s to 1.6 s; -- the build memory from 2786 MiB to 98MiB. + + - the preprocessed size from 121 MiB to 4.5 MiB; + + - the build CPU time from 46.8 s to 1.6 s; + + - the build memory from 2786 MiB to 98MiB. In fine, this allows this relatively simple C file to be built on a 32-bit system. @@ -21,6 +25,7 @@ Signed-off-by: Aurelien Jarno <aurel...@aurel32.net> Reviewed-by: David Laight <david.lai...@aculab.com> Reviewed-by: Hans Verkuil <hverkuil-ci...@xs4all.nl> +Signed-off-by: Linus Torvalds <torva...@linux-foundation.org> Signed-off-by: Jiri Slaby <jsl...@suse.cz> --- drivers/media/pci/solo6x10/solo6x10-offsets.h | 10 +++++----- ++++++ patches.suse.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/patches.suse/futex-Avoid-reusing-outdated-pi_state.patch new/patches.suse/futex-Avoid-reusing-outdated-pi_state.patch --- old/patches.suse/futex-Avoid-reusing-outdated-pi_state.patch 2024-01-19 07:46:51.000000000 +0100 +++ new/patches.suse/futex-Avoid-reusing-outdated-pi_state.patch 2024-01-22 08:46:41.000000000 +0100 @@ -1,75 +1,88 @@ From: Sebastian Andrzej Siewior <bige...@linutronix.de> Date: Thu, 18 Jan 2024 12:54:51 +0100 -Subject: futex: Avoid reusing outdated pi_state. -Patch-mainline: submitted 20240118115451.0tkd_...@linutronix.de +Subject: futex: Prevent the reuse of stale pi_state +Git-repo: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git#locking/urgent +Git-commit: e626cb02ee8399fd42c415e542d031d185783903 +Patch-mainline: Queued in subsystem maintainer repository References: bsc#1218841 -Jiri Slaby reported a futex state inconsistency resulting in -EINVAL -during a lock operation for a PI futex. A requirement is that the lock -process is interrupted by a timeout or signal: - -T1 Owns the futex in userland. - -T2 Tries to acquire the futex in kernel (futex_lock_pi()). Allocates a - pi_state and attaches itself to it. - -T2 Times out and removes its rt_waiter from the rt_mutex. - -T1 Unlocks the futex (futex_unlock_pi()). Finds a futex_q but no - rt_waiter. Unlocks the futex (do_uncontended) and makes it available - to userland. - -T3 Acquires the futex in userland. - -T4 Tries to acquire the futex in kernel (futex_lock_pi()). Finds the - existing futex_q and tries to attach itself to the existing pi_state. - This (attach_to_pi_state()) fails with -EINVAL because uval contains - the pid of T3 but pi_state points to T1. - -We must not unlock the futex and make it available for userland as long -as there is still an existing state in kernel. It can be used by further -futex_lock_pi() caller and observe inconsistent state. - -The lock can not be handed over to T1 because it already gave up and -started to clean up. -All futex_q entries point to the same pi_state and the pi_mutex has no -waiters. A waiter can not be enqueued because hb->lock + -pi_mutex.wait_lock is acquired (by the unlock operation) and the same -ordering is used by futex_lock_pi() during locking. - -Remove all futex_q entries from the hb list which point to the futex if -no waiter has been observed in the futex_unlock_pi() path. This closes -the race window by removing all pointer to the previous in-kernel state. - -The leaving futex_lock_pi() caller can clean up the pi-state once it -acquires hb->lock. During the process futex_unqueue_pi() must remove -the futex_q item from the hb list only if not yet happened. +Jiri Slaby reported a futex state inconsistency resulting in -EINVAL during +a lock operation for a PI futex. It requires that the a lock process is +interrupted by a timeout or signal: + + T1 Owns the futex in user space. + + T2 Tries to acquire the futex in kernel (futex_lock_pi()). Allocates a + pi_state and attaches itself to it. + + T2 Times out and removes its rt_waiter from the rt_mutex. Drops the + rtmutex lock and tries to acquire the hash bucket lock to remove + the futex_q. The lock is contended and T2 schedules out. + + T1 Unlocks the futex (futex_unlock_pi()). Finds a futex_q but no + rt_waiter. Unlocks the futex (do_uncontended) and makes it available + to user space. + + T3 Acquires the futex in user space. + + T4 Tries to acquire the futex in kernel (futex_lock_pi()). Finds the + existing futex_q of T2 and tries to attach itself to the existing + pi_state. This (attach_to_pi_state()) fails with -EINVAL because uval + contains the TID of T3 but pi_state points to T1. + +It's incorrect to unlock the futex and make it available for user space to +acquire as long as there is still an existing state attached to it in the +kernel. + +T1 cannot hand over the futex to T2 because T2 already gave up and started +to clean up and is blocked on the hash bucket lock, so T2's futex_q with +the pi_state pointing to T1 is still queued. + +T2 observes the futex_q, but ignores it as there is no waiter on the +corresponding rt_mutex and takes the uncontended path which allows the +subsequent caller of futex_lock_pi() (T4) to observe that stale state. + +To prevent this the unlock path must dequeue all futex_q entries which +point to the same pi_state when there is no waiter on the rt mutex. This +requires obviously to make the dequeue conditional in the locking path to +prevent a double dequeue. With that it's guaranteed that user space cannot +observe an uncontended futex which has kernel state attached. Fixes: fbeb558b0dd0d ("futex/pi: Fix recursive rt_mutex waiter state") Reported-by: Jiri Slaby <jirisl...@kernel.org> -Closes: https://lore.kernel.org/all/4611bcf2-44d0-4c34-9b84-17406f881...@kernel.org Signed-off-by: Sebastian Andrzej Siewior <bige...@linutronix.de> +Signed-off-by: Thomas Gleixner <t...@linutronix.de> Tested-by: Jiri Slaby <jirisl...@kernel.org> +Link: https://lore.kernel.org/r/20240118115451.0tkd_...@linutronix.de +Closes: https://lore.kernel.org/all/4611bcf2-44d0-4c34-9b84-17406f881...@kernel.org Signed-off-by: Jiri Slaby <jsl...@suse.cz> --- - kernel/futex/core.c | 7 ++++++- + kernel/futex/core.c | 15 ++++++++++++--- kernel/futex/pi.c | 11 ++++++++--- - 2 files changed, 14 insertions(+), 4 deletions(-) + 2 files changed, 20 insertions(+), 6 deletions(-) --- a/kernel/futex/core.c +++ b/kernel/futex/core.c -@@ -628,10 +628,15 @@ retry: +@@ -626,12 +626,21 @@ retry: + } + /* - * PI futexes can not be requeued and must remove themselves from the - * hash bucket. The hash bucket lock (i.e. lock_ptr) is held. -+ * If the lock was not acquired (due to timeout or signal) then the rt_waiter -+ * is removed before futex_q is. If this is observed by unlocker then it will -+ * remove futex_q from the hash bucket list. Thefore the removal here is -+ * optional. +- * PI futexes can not be requeued and must remove themselves from the +- * hash bucket. The hash bucket lock (i.e. lock_ptr) is held. ++ * PI futexes can not be requeued and must remove themselves from the hash ++ * bucket. The hash bucket lock (i.e. lock_ptr) is held. */ void futex_unqueue_pi(struct futex_q *q) { - __futex_unqueue(q); ++ /* ++ * If the lock was not acquired (due to timeout or signal) then the ++ * rt_waiter is removed before futex_q is. If this is observed by ++ * an unlocker after dropping the rtmutex wait lock and before ++ * acquiring the hash bucket lock, then the unlocker dequeues the ++ * futex_q from the hash bucket list to guarantee consistent state ++ * vs. userspace. Therefore the dequeue here must be conditional. ++ */ + if (!plist_node_empty(&q->list)) + __futex_unqueue(q); @@ -91,8 +104,8 @@ * waiters even though futex thinks there are, then the waiter - * is leaving and the uncontended path is safe to take. + * is leaving. The entry needs to be removed from the list so a -+ * new futex_lock_pi() is not using this outdated PI-state while -+ * the futex is available in userland again. ++ * new futex_lock_pi() is not using this stale PI-state while ++ * the futex is available in user space again. + * There can be more than one task on its way out so it needs + * to retry. */ ++++++ source-timestamp ++++++ --- /var/tmp/diff_new_pack.hf8DyH/_old 2024-01-26 22:47:10.267990331 +0100 +++ /var/tmp/diff_new_pack.hf8DyH/_new 2024-01-26 22:47:10.271990475 +0100 @@ -1,4 +1,4 @@ -2024-01-20 15:39:39 +0000 -GIT Revision: 4959dd8dad49eb4f1644953682e53c1d966d6eb3 +2024-01-26 06:32:58 +0000 +GIT Revision: 6aca25404404e4f72fa252563503b29fe5828cca GIT Branch: stable