kernel/kernel.spec
CKI KWF Bot bf218d5368 kernel-5.14.0-693.el9
* Mon Apr 13 2026 CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> [5.14.0-693.el9]
- x86/msr: Rename 'wrmsrl_on_cpu()' to 'wrmsrq_on_cpu()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'rdmsrl_on_cpu()' to 'rdmsrq_on_cpu()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'wrmsrl_safe_on_cpu()' to 'wrmsrq_safe_on_cpu()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'rdmsrl_safe_on_cpu()' to 'rdmsrq_safe_on_cpu()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'wrmsrl_safe()' to 'wrmsrq_safe()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'rdmsrl_safe()' to 'rdmsrq_safe()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'wrmsrl()' to 'wrmsrq()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'rdmsrl()' to 'rdmsrq()' [partial] (David Arcari) [RHEL-128565]
- platform/x86: intel-hid: disable wakeup_mode during hibernation (David Arcari) [RHEL-128565]
- platform/x86: intel-hid: Enable 5-button array on ThinkPad X1 Fold 16 Gen 1 (David Arcari) [RHEL-128565]
- platform/x86: intel-hid: Add Dell 16 Plus 2-in-1 to dmi_vgbs_allow_list (David Arcari) [RHEL-128565]
- platform/x86: intel-hid: Add Dell 14 Plus 2-in-1 to dmi_vgbs_allow_list (David Arcari) [RHEL-128565]
- platform/x86/intel/hid: Add Dell Pro Rugged 10/12 tablet to VGBS DMI quirks (David Arcari) [RHEL-128565]
- platform/x86: int0002: Remove IRQF_ONESHOT from request_irq() (David Arcari) [RHEL-128565]
- platform/x86/intel/tpmi/plr: Make the file domain<n>/status writeable (David Arcari) [RHEL-128565]
- platform/x86: intel_telemetry: Fix PSS event register mask (David Arcari) [RHEL-128565]
- platform/x86: intel_telemetry: Fix swapped arrays in PSS output (David Arcari) [RHEL-128565]
- platform/x86/intel/vsec: Add Nova Lake PUNIT support (David Arcari) [RHEL-128565]
- platform/x86/intel/pmc: Remove double empty line (David Arcari) [RHEL-128565]
- platform/x86/intel/pmc: Enable substate residencies for multiple PMCs (David Arcari) [RHEL-128565]
- platform/x86/intel/pmc: Move LPM mode attributes to PMC (David Arcari) [RHEL-128565]
- platform/x86/intel/pmc: Change LPM mode fields to u8 (David Arcari) [RHEL-128565]
- platform/x86/intel/uncore-freq: Replace sprintf() with sysfs_emit() (David Arcari) [RHEL-128565]
- platform/x86/intel/uncore-freq: Replace sprintf() with scnprintf() (David Arcari) [RHEL-128565]
- platform/x86/intel/pmt/discovery: use valid device pointer in dev_err_probe (David Arcari) [RHEL-128565]
- platform/x86/intel/pmt: Fix kobject memory leak on init failure (David Arcari) [RHEL-128565]
- platform/x86: intel/pmt: Replace sprintf() with sysfs_emit() (David Arcari) [RHEL-128565]
- platform/x86: intel: punit_ipc: fix memory corruption (David Arcari) [RHEL-128565]
- New configs in drivers/platform (David Arcari) [RHEL-128565]
- platform/x86/intel: Introduce Intel Elkhart Lake PSE I/O (David Arcari) [RHEL-128565]
- platform/x86/intel/speed_select_if: Convert PCIBIOS_* return codes to errnos (David Arcari) [RHEL-128565]
- platform/x86/intel/hid: Add Nova Lake support (David Arcari) [RHEL-128565]
- gfs2: Clean up SDF_JOURNAL_LIVE flag handling (Andreas Gruenbacher) [RHEL-65700]
- gfs2: No longer thaw filesystems during a withdraw (Andreas Gruenbacher) [RHEL-65700]
- gfs2: gfs2_freeze_unlock cleanup (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Refcounting fix in gfs2_thaw_super (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Minor gfs2_{freeze,thaw}_super cleanup (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Withdraw immediately in gfs2_trans_add_meta (Andreas Gruenbacher) [RHEL-65700]
- gfs2: New gfs2_withdraw_helper (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Clean up properly during a withdraw (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Rename gfs2_{gl_dq_holders => withdraw_glocks} (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: fix infinite loop when checking ail item count before go_inval" (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Allow some glocks to be used during withdraw" (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Check for log write errors before telling dlm to unlock" (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: fix a deadlock on withdraw-during-mount" (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Force withdraw to replay journals and wait for it to finish" (6/6) (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Force withdraw to replay journals and wait for it to finish" (5/6) (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Force withdraw to replay journals and wait for it to finish" (4/6) (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Force withdraw to replay journals and wait for it to finish" (3/6) (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Force withdraw to replay journals and wait for it to finish" (2/6) (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Force withdraw to replay journals and wait for it to finish" (1/6) (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Follow-up to flag rename in sysfs status file (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: don't stop reads while withdraw in progress" (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Rename LM_FLAG_{NOEXP -> RECOVER} (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Kill gfs2_io_error_bh_wd (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Withdraw immediately on log write errors (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Rename gfs2_{withdrawing_or_ => }withdrawn (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Fix freeze consistency check in log_write_header (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Get rid of delayed withdraws (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Fix usage of bio->bi_status in gfs2_end_log_write (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Asynchronous withdraw (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Add clean argument to lm_unmount hook (Andreas Gruenbacher) [RHEL-65700]
Resolves: RHEL-128565, RHEL-65700

Signed-off-by: CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com>
2026-04-13 13:36:49 +00:00

5089 lines
256 KiB
RPMSpec

# All Global changes to build and install go here.
# Per the below section about __spec_install_pre, any rpm
# environment changes that affect %%install need to go
# here before the %%install macro is pre-built.
# Disable LTO in userspace packages.
%global _lto_cflags %{nil}
# Option to enable compiling with clang instead of gcc.
%bcond_with toolchain_clang
%if %{with toolchain_clang}
%global toolchain clang
%endif
# Compile the kernel with LTO (only supported when building with clang).
%bcond_with clang_lto
%if %{with clang_lto} && %{without toolchain_clang}
{error:clang_lto requires --with toolchain_clang}
%endif
# Cross compile on copr for arm
# See https://bugzilla.redhat.com/1879599
%if 0%{?_with_cross_arm:1}
%global _target_cpu armv7hl
%global _arch arm
%global _build_arch arm
%global _with_cross 1
%endif
# RPM macros strip everything in BUILDROOT, either with __strip
# or find-debuginfo.sh. Make use of __spec_install_post override
# and save/restore binaries we want to package as unstripped.
%define buildroot_unstripped %{_builddir}/root_unstripped
%define buildroot_save_unstripped() \
(cd %{buildroot}; cp -rav --parents -t %{buildroot_unstripped}/ %1 || true) \
%{nil}
%define __restore_unstripped_root_post \
echo "Restoring unstripped artefacts %{buildroot_unstripped} -> %{buildroot}" \
cp -rav %{buildroot_unstripped}/. %{buildroot}/ \
%{nil}
# The kernel's %%install section is special
# Normally the %%install section starts by cleaning up the BUILD_ROOT
# like so:
#
# %%__spec_install_pre %%{___build_pre}\
# [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "${RPM_BUILD_ROOT}"\
# mkdir -p `dirname "$RPM_BUILD_ROOT"`\
# mkdir "$RPM_BUILD_ROOT"\
# %%{nil}
#
# But because of kernel variants, the %%build section, specifically
# BuildKernel(), moves each variant to its final destination as the
# variant is built. This violates the expectation of the %%install
# section. As a result we snapshot the current env variables and
# purposely leave out the removal section. All global wide changes
# should be added above this line otherwise the %%install section
# will not see them.
%global __spec_install_pre %{___build_pre}
# Replace '-' with '_' where needed so that variants can use '-' in
# their name.
%define uname_suffix() %{lua:
local flavour = rpm.expand('%{?1:+%{1}}')
flavour = flavour:gsub('-', '_')
if flavour ~= '' then
print(flavour)
end
}
# This returns the main kernel tied to a debug variant. For example,
# kernel-debug is the debug version of kernel, so we return an empty
# string. However, kernel-64k-debug is the debug version of kernel-64k,
# in this case we need to return "64k", and so on. This is used in
# macros below where we need this for some uname based requires.
%define uname_variant() %{lua:
local flavour = rpm.expand('%{?1:%{1}}')
_, _, main, sub = flavour:find("(%w+)-(.*)")
if main then
print("+" .. main)
end
}
# At the time of this writing (2019-03), RHEL8 packages use w2.xzdio
# compression for rpms (xz, level 2).
# Kernel has several large (hundreds of mbytes) rpms, they take ~5 mins
# to compress by single-threaded xz. Switch to threaded compression,
# and from level 2 to 3 to keep compressed sizes close to "w2" results.
#
# NB: if default compression in /usr/lib/rpm/redhat/macros ever changes,
# this one might need tweaking (e.g. if default changes to w3.xzdio,
# change below to w4T.xzdio):
#
# This is disabled on i686 as it triggers oom errors
%ifnarch i686
%define _binary_payload w3T.xzdio
%endif
Summary: The Linux kernel
%if 0%{?fedora}
%define secure_boot_arch x86_64
%else
%define secure_boot_arch x86_64 aarch64 s390x ppc64le
%endif
# Signing for secure boot authentication
%ifarch %{secure_boot_arch}
%global signkernel 1
%else
%global signkernel 0
%endif
# RHEL/CentOS/Fedora specific .SBAT entries
%if 0%{?centos}
%global sbat_suffix centos
%else
%if 0%{?fedora}
%global sbat_suffix fedora
%else
%global sbat_suffix rhel
%endif
%endif
# Sign modules on all arches
%global signmodules 1
# Compress modules only for architectures that build modules
%ifarch noarch
%global zipmodules 0
%else
%global zipmodules 1
%endif
%ifarch x86_64
%global efiuki 1
%else
%global efiuki 0
%endif
# Default compression algorithm
%global compression xz
%global compression_flags --compress
%global compext xz
%if %{zipmodules}
%global zipsed -e 's/\.ko$/\.ko.%compext/'
# for parallel xz processes, replace with 1 to go back to single process
%endif
%if 0%{?fedora}
%define primary_target fedora
%else
%define primary_target rhel
%endif
#
# genspec.sh variables
#
# Include Fedora files
%global include_fedora 0
# Include RHEL files
%global include_rhel 1
# Provide Patchlist.changelog file
%global patchlist_changelog 0
# Set debugbuildsenabled to 1 to build separate base and debug kernels
# (on supported architectures). The kernel-debug-* subpackages will
# contain the debug kernel.
# Set debugbuildsenabled to 0 to not build a separate debug kernel, but
# to build the base kernel using the debug configuration. (Specifying
# the --with-release option overrides this setting.)
%define debugbuildsenabled 1
# define buildid .local
%define specversion 5.14.0
%define patchversion 5.14
%define pkgrelease 693
%define kversion 5
%define tarfile_release 5.14.0-693.el9
# This is needed to do merge window version magic
%define patchlevel 14
# This allows pkg_release to have configurable %%{?dist} tag
%define specrelease 693%{?buildid}%{?dist}
# This defines the kabi tarball version
%define kabiversion 5.14.0-693.el9
#
# End of genspec.sh variables
#
%define pkg_release %{specrelease}
# libexec dir is not used by the linker, so the shared object there
# should not be exported to RPM provides
%global __provides_exclude_from ^%{_libexecdir}/kselftests
# The following build options are enabled by default, but may become disabled
# by later architecture-specific checks. These can also be disabled by using
# --without <opt> in the rpmbuild command, or by forcing these values to 0.
#
# standard kernel
%define with_up %{?_without_up: 0} %{?!_without_up: 1}
# kernel PAE (only valid for ARM (lpae))
%define with_pae %{?_without_pae: 0} %{?!_without_pae: 1}
# kernel-debug
%define with_debug %{?_without_debug: 0} %{?!_without_debug: 1}
# kernel-zfcpdump (s390 specific kernel for zfcpdump)
%define with_zfcpdump %{?_without_zfcpdump: 0} %{?!_without_zfcpdump: 1}
# kernel-64k (aarch64 kernel with 64K page_size)
%define with_arm64_64k %{?_without_arm64_64k: 0} %{?!_without_arm64_64k: 1}
# kernel-rt (x86_64 and aarch64 only PREEMPT_RT enabled kernel)
%define with_realtime %{?_without_realtime: 0} %{?!_without_realtime: 1}
# kernel-rt-64k (aarch64 RT kernel with 64K page_size)
%define with_realtime_arm64_64k %{?_without_realtime_arm64_64k: 0} %{?!_without_realtime_arm64_64k: 1}
# kernel-doc
%define with_doc %{?_without_doc: 0} %{?!_without_doc: 1}
# kernel-headers
%define with_headers %{?_without_headers: 0} %{?!_without_headers: 1}
%define with_cross_headers %{?_without_cross_headers: 0} %{?!_without_cross_headers: 1}
# perf
%define with_perf %{?_without_perf: 0} %{?!_without_perf: 1}
# tools
%define with_tools %{?_without_tools: 0} %{?!_without_tools: 1}
# kernel-debuginfo
%define with_debuginfo %{?_without_debuginfo: 0} %{?!_without_debuginfo: 1}
# kernel-abi-stablelists
%define with_kernel_abi_stablelists %{?_without_kernel_abi_stablelists: 0} %{?!_without_kernel_abi_stablelists: 1}
# internal samples and selftests
%define with_selftests %{?_without_selftests: 0} %{?!_without_selftests: 1}
#
# Additional options for user-friendly one-off kernel building:
#
# Only build the base kernel (--with baseonly):
%define with_baseonly %{?_with_baseonly: 1} %{?!_with_baseonly: 0}
# Only build the pae kernel (--with paeonly):
%define with_paeonly %{?_with_paeonly: 1} %{?!_with_paeonly: 0}
# Only build the debug kernel (--with dbgonly):
%define with_dbgonly %{?_with_dbgonly: 1} %{?!_with_dbgonly: 0}
# Only build the realtime kernel (--with rtonly):
%define with_rtonly %{?_with_rtonly: 1} %{?!_with_rtonly: 0}
# Control whether we perform a compat. check against published ABI.
%define with_kabichk %{?_without_kabichk: 0} %{?!_without_kabichk: 1}
# Temporarily disable kabi checks until RC.
%define with_kabichk 0
# Control whether we perform a compat. check against DUP ABI.
%define with_kabidupchk %{?_with_kabidupchk: 1} %{?!_with_kabidupchk: 0}
#
# Control whether to run an extensive DWARF based kABI check.
# Note that this option needs to have baseline setup in SOURCE300.
%define with_kabidwchk %{?_without_kabidwchk: 0} %{?!_without_kabidwchk: 1}
%define with_kabidw_base %{?_with_kabidw_base: 1} %{?!_with_kabidw_base: 0}
#
# Control whether to install the vdso directories.
%define with_vdso_install %{?_without_vdso_install: 0} %{?!_without_vdso_install: 1}
#
# should we do C=1 builds with sparse
%define with_sparse %{?_with_sparse: 1} %{?!_with_sparse: 0}
#
# Cross compile requested?
%define with_cross %{?_with_cross: 1} %{?!_with_cross: 0}
#
# build a release kernel on rawhide
%define with_release %{?_with_release: 1} %{?!_with_release: 0}
# verbose build, i.e. no silent rules and V=1
%define with_verbose %{?_with_verbose: 1} %{?!_with_verbose: 0}
#
# check for mismatched config options
%define with_configchecks %{?_without_configchecks: 0} %{?!_without_configchecks: 1}
#
# gcov support
%define with_gcov %{?_with_gcov:1}%{?!_with_gcov:0}
# Want to build a vanilla kernel build without any non-upstream patches?
%define with_vanilla %{?_with_vanilla: 1} %{?!_with_vanilla: 0}
%if 0%{?fedora}
# Kernel headers are being split out into a separate package
%define with_headers 0
%define with_cross_headers 0
# no stablelist
%define with_kernel_abi_stablelists 0
# Fedora builds these separately
%define with_perf 0
%define with_tools 0
%endif
%if %{with_verbose}
%define make_opts V=1
%else
%define make_opts -s
%endif
%if %{with toolchain_clang}
%ifarch s390x ppc64le
%global llvm_ias 0
%else
%global llvm_ias 1
%endif
%global clang_make_opts HOSTCC=clang CC=clang LLVM_IAS=%{llvm_ias}
%if %{with clang_lto}
%global clang_make_opts %{clang_make_opts} LD=ld.lld HOSTLD=ld.lld AR=llvm-ar NM=llvm-nm HOSTAR=llvm-ar HOSTNM=llvm-nm
%endif
%global make_opts %{make_opts} %{clang_make_opts}
%endif
# turn off debug kernel and kabichk for gcov builds
%if %{with_gcov}
%define with_debug 0
%define with_kabichk 0
%define with_kabidupchk 0
%define with_kabidwchk 0
%define with_kabidw_base 0
%define with_kernel_abi_stablelists 0
%endif
# turn off kABI DWARF-based check if we're generating the base dataset
%if %{with_kabidw_base}
%define with_kabidwchk 0
%endif
%define make_target bzImage
%define image_install_path boot
%define KVERREL %{version}-%{release}.%{_target_cpu}
%define KVERREL_RE %(echo %KVERREL | sed 's/+/[+]/g')
%define hdrarch %_target_cpu
%define asmarch %_target_cpu
%if 0%{!?nopatches:1}
%define nopatches 0
%endif
%if %{with_vanilla}
%define nopatches 1
%endif
%if %{with_release}
%define debugbuildsenabled 1
%endif
%if !%{with_debuginfo}
%define _enable_debug_packages 0
%endif
%define debuginfodir /usr/lib/debug
# Needed because we override almost everything involving build-ids
# and debuginfo generation. Currently we rely on the old alldebug setting.
%global _build_id_links alldebug
# kernel PAE is only built on ARMv7
%ifnarch armv7hl
%define with_pae 0
%endif
# RT kernel is only built on x86_64 and aarch64
%ifnarch x86_64 aarch64
%define with_realtime 0
%endif
# if requested, only build base kernel
%if %{with_baseonly}
%define with_pae 0
%define with_debug 0
%define with_realtime 0
%define with_vdso_install 0
%define with_perf 0
%define with_tools 0
%define with_kernel_abi_stablelists 0
%define with_selftests 0
%define with_cross 0
%define with_cross_headers 0
%endif
# if requested, only build pae kernel
%if %{with_paeonly}
%define with_up 0
%define with_debug 0
%define with_realtime 0
%endif
# if requested, only build debug kernel
%if %{with_dbgonly}
%define with_up 0
%define with_realtime 0
%define with_vdso_install 0
%define with_perf 0
%define with_tools 0
%define with_kernel_abi_stablelists 0
%define with_selftests 0
%define with_cross 0
%define with_cross_headers 0
%endif
# if requested, only build realtime kernel
%if %{with_rtonly}
%define with_up 0
%define with_pae 0
%define with_debug 0
%define with_vdso_install 0
%define with_perf 0
%define with_tools 0
%define with_kernel_abi_stablelists 0
%define with_selftests 0
%define with_cross 0
%define with_cross_headers 0
%endif
# turn off kABI DUP check and DWARF-based check if kABI check is disabled
%if !%{with_kabichk}
%define with_kabidupchk 0
%define with_kabidwchk 0
%endif
%if %{with_vdso_install}
%define use_vdso 1
%endif
%ifnarch noarch
%define with_kernel_abi_stablelists 0
%endif
# Overrides for generic default options
# only package docs noarch
%ifnarch noarch
%define with_doc 0
%define doc_build_fail true
%endif
%if 0%{?fedora}
# don't do debug builds on anything but i686 and x86_64
%ifnarch i686 x86_64
%define with_debug 0
%endif
%endif
# don't build noarch kernels or headers (duh)
%ifarch noarch
%define with_up 0
%define with_realtime 0
%define with_headers 0
%define with_cross_headers 0
%define with_tools 0
%define with_perf 0
%define with_selftests 0
%define with_debug 0
%define all_arch_configs kernel-%{version}-*.config
%endif
# sparse blows up on ppc
%ifnarch ppc64le
%define with_sparse 0
%endif
# zfcpdump mechanism is s390 only
%ifnarch s390x
%define with_zfcpdump 0
%endif
# 64k variant only for aarch64
%ifnarch aarch64
%define with_arm64_64k 0
%define with_realtime_arm64_64k 0
%endif
%if 0%{?fedora}
# This is not for Fedora
%define with_zfcpdump 0
%endif
# Per-arch tweaks
%ifarch i686
%define asmarch x86
%define hdrarch i386
%define all_arch_configs kernel-%{version}-i?86*.config
%define kernel_image arch/x86/boot/bzImage
%endif
%ifarch x86_64
%define asmarch x86
%define all_arch_configs kernel-%{version}-x86_64*.config
%define kernel_image arch/x86/boot/bzImage
%endif
%ifarch ppc64le
%define asmarch powerpc
%define hdrarch powerpc
%define make_target vmlinux
%define kernel_image vmlinux
%define kernel_image_elf 1
%define use_vdso 0
%define all_arch_configs kernel-%{version}-ppc64le*.config
%endif
%ifarch s390x
%define asmarch s390
%define hdrarch s390
%define all_arch_configs kernel-%{version}-s390x.config
%define kernel_image arch/s390/boot/bzImage
%define vmlinux_decompressor arch/s390/boot/vmlinux
%endif
%ifarch %{arm}
%define all_arch_configs kernel-%{version}-arm*.config
%define skip_nonpae_vdso 1
%define asmarch arm
%define hdrarch arm
%define make_target bzImage
%define kernel_image arch/arm/boot/zImage
# http://lists.infradead.org/pipermail/linux-arm-kernel/2012-March/091404.html
%define kernel_mflags KALLSYMS_EXTRA_PASS=1
# we only build headers/perf/tools on the base arm arches
# just like we used to only build them on i386 for x86
%ifnarch armv7hl
%define with_headers 0
%define with_cross_headers 0
%endif
# These currently don't compile on armv7
%define with_selftests 0
%endif
%ifarch aarch64
%define all_arch_configs kernel-%{version}-aarch64*.config
%define asmarch arm64
%define hdrarch arm64
%define make_target vmlinuz.efi
%define kernel_image arch/arm64/boot/vmlinuz.efi
%endif
# Should make listnewconfig fail if there's config options
# printed out?
%if %{nopatches}
%define with_configchecks 0
%endif
# To temporarily exclude an architecture from being built, add it to
# %%nobuildarches. Do _NOT_ use the ExclusiveArch: line, because if we
# don't build kernel-headers then the new build system will no longer let
# us use the previous build of that package -- it'll just be completely AWOL.
# Which is a BadThing(tm).
# We only build kernel-headers on the following...
%if 0%{?fedora}
%define nobuildarches i386
%else
%define nobuildarches i386 i686 %{arm}
%endif
%ifarch %nobuildarches
# disable BuildKernel commands
%define with_up 0
%define with_debug 0
%define with_pae 0
%define with_zfcpdump 0
%define with_arm64_64k 0
%define with_realtime 0
%define with_realtime_arm64_64k 0
%define with_debuginfo 0
%define with_perf 0
%define with_tools 0
%define with_selftests 0
%define _enable_debug_packages 0
%endif
# Architectures we build tools/cpupower on
%if 0%{?fedora}
%define cpupowerarchs %{ix86} x86_64 ppc64le %{arm} aarch64
%else
%define cpupowerarchs i686 x86_64 ppc64le aarch64
%endif
%if 0%{?use_vdso}
%if 0%{?skip_nonpae_vdso}
%define _use_vdso 0
%else
%define _use_vdso 1
%endif
%else
%define _use_vdso 0
%endif
# If build of debug packages is disabled, we need to know if we want to create
# meta debug packages or not, after we define with_debug for all specific cases
# above. So this must be at the end here, after all cases of with_debug or not.
%define with_debug_meta 0
%if !%{debugbuildsenabled}
%if %{with_debug}
%define with_debug_meta 1
%endif
%define with_debug 0
%endif
#
# Packages that need to be installed before the kernel is, because the %%post
# scripts use them.
#
%define kernel_prereq coreutils, systemd >= 203-2, /usr/bin/kernel-install
%define initrd_prereq dracut >= 027
Name: kernel
License: ((GPL-2.0-only WITH Linux-syscall-note) OR BSD-2-Clause) AND ((GPL-2.0-only WITH Linux-syscall-note) OR BSD-3-Clause) AND ((GPL-2.0-only WITH Linux-syscall-note) OR CDDL-1.0) AND ((GPL-2.0-only WITH Linux-syscall-note) OR Linux-OpenIB) AND ((GPL-2.0-only WITH Linux-syscall-note) OR MIT) AND ((GPL-2.0-or-later WITH Linux-syscall-note) OR BSD-3-Clause) AND ((GPL-2.0-or-later WITH Linux-syscall-note) OR MIT) AND Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND BSD-3-Clause-Clear AND GFDL-1.1-no-invariants-or-later AND GPL-1.0-or-later AND (GPL-1.0-or-later OR BSD-3-Clause) AND (GPL-1.0-or-later WITH Linux-syscall-note) AND GPL-2.0-only AND (GPL-2.0-only OR Apache-2.0) AND (GPL-2.0-only OR BSD-2-Clause) AND (GPL-2.0-only OR BSD-3-Clause) AND (GPL-2.0-only OR CDDL-1.0) AND (GPL-2.0-only OR GFDL-1.1-no-invariants-or-later) AND (GPL-2.0-only OR GFDL-1.2-no-invariants-only) AND (GPL-2.0-only WITH Linux-syscall-note) AND GPL-2.0-or-later AND (GPL-2.0-or-later OR BSD-2-Clause) AND (GPL-2.0-or-later OR BSD-3-Clause) AND (GPL-2.0-or-later OR CC-BY-4.0) AND (GPL-2.0-or-later WITH GCC-exception-2.0) AND (GPL-2.0-or-later WITH Linux-syscall-note) AND ISC AND LGPL-2.0-or-later AND (LGPL-2.0-or-later OR BSD-2-Clause) AND (LGPL-2.0-or-later WITH Linux-syscall-note) AND LGPL-2.1-only AND (LGPL-2.1-only OR BSD-2-Clause) AND (LGPL-2.1-only WITH Linux-syscall-note) AND LGPL-2.1-or-later AND (LGPL-2.1-or-later WITH Linux-syscall-note) AND (Linux-OpenIB OR GPL-2.0-only) AND (Linux-OpenIB OR GPL-2.0-only OR BSD-2-Clause) AND Linux-man-pages-copyleft AND MIT AND (MIT OR GPL-2.0-only) AND (MIT OR GPL-2.0-or-later) AND (MIT OR LGPL-2.1-only) AND (MPL-1.1 OR GPL-2.0-only) AND (X11 OR GPL-2.0-only) AND (X11 OR GPL-2.0-or-later) AND Zlib AND (copyleft-next-0.3.1 OR GPL-2.0-or-later)
URL: https://www.kernel.org/
Version: %{specversion}
Release: %{pkg_release}
# DO NOT CHANGE THE 'ExclusiveArch' LINE TO TEMPORARILY EXCLUDE AN ARCHITECTURE BUILD.
# SET %%nobuildarches (ABOVE) INSTEAD
%if 0%{?fedora}
ExclusiveArch: noarch x86_64 s390x %{arm} aarch64 ppc64le
%else
ExclusiveArch: noarch i386 i686 x86_64 s390x %{arm} aarch64 ppc64le
%endif
ExclusiveOS: Linux
%ifnarch %{nobuildarches}
Requires: kernel-core-uname-r = %{KVERREL}
Requires: kernel-modules-uname-r = %{KVERREL}
Requires: kernel-modules-core-uname-r = %{KVERREL}
Provides: installonlypkg(kernel)
%endif
#
# List the packages used during the kernel build
#
BuildRequires: kmod, bash, coreutils, tar, git-core, which
BuildRequires: bzip2, xz, findutils, gzip, m4, perl-interpreter, perl-Carp, perl-devel, perl-generators, make, diffutils, gawk, %compression
BuildRequires: gcc, binutils, redhat-rpm-config, hmaccalc, bison, flex, gcc-c++
BuildRequires: net-tools, hostname, bc, elfutils-devel
BuildRequires: dwarves
BuildRequires: python3-devel
BuildRequires: gcc-plugin-devel
BuildRequires: kernel-rpm-macros >= 185-9
# glibc-static is required for a consistent build environment (specifically
# CONFIG_CC_CAN_LINK_STATIC=y).
BuildRequires: glibc-static
%if %{with_headers}
BuildRequires: rsync
%endif
%if %{with_doc}
BuildRequires: xmlto, asciidoc, python3-sphinx, python3-sphinx_rtd_theme, python3-pyyaml
%endif
%if %{with_sparse}
BuildRequires: sparse
%endif
%if %{with_perf}
BuildRequires: zlib-devel binutils-devel newt-devel perl(ExtUtils::Embed) bison flex xz-devel
BuildRequires: audit-libs-devel python3-setuptools
BuildRequires: java-devel
BuildRequires: libbabeltrace-devel
BuildRequires: libtraceevent-devel
BuildRequires: elfutils-debuginfod-client-devel
%ifnarch %{arm} s390x
BuildRequires: numactl-devel
%endif
%ifarch aarch64
BuildRequires: opencsd-devel >= 1.2.1
%endif
%endif
%if %{with_tools}
BuildRequires: gettext ncurses-devel
BuildRequires: libcap-devel libcap-ng-devel
# The following are rtla requirements
BuildRequires: python3-docutils
BuildRequires: libtraceevent-devel
BuildRequires: libtracefs-devel
BuildRequires: libbpf-devel
BuildRequires: bpftool
BuildRequires: clang
%ifnarch s390x
BuildRequires: pciutils-devel
%endif
%ifarch i686 x86_64
BuildRequires: libnl3-devel
%endif
%endif
%if %{with_tools} || %{signmodules} || %{signkernel}
BuildRequires: openssl-devel
%endif
%if %{with_selftests}
BuildRequires: clang llvm fuse-devel zlib-devel binutils-devel python3-docutils
%ifarch x86_64
BuildRequires: lld
%endif
%ifnarch %{arm}
BuildRequires: numactl-devel
%endif
BuildRequires: libcap-devel libcap-ng-devel rsync libmnl-devel
%endif
BuildConflicts: rhbuildsys(DiskFree) < 500Mb
%if %{with_debuginfo}
BuildRequires: rpm-build, elfutils
BuildConflicts: rpm < 4.13.0.1-19
BuildConflicts: dwarves < 1.13
# Most of these should be enabled after more investigation
%undefine _include_minidebuginfo
%undefine _find_debuginfo_dwz_opts
%undefine _unique_build_ids
%undefine _unique_debug_names
%undefine _unique_debug_srcs
%undefine _debugsource_packages
%undefine _debuginfo_subpackages
# Remove -q option below to provide 'extracting debug info' messages
%global _find_debuginfo_opts -r -q
%global _missing_build_ids_terminate_build 1
%global _no_recompute_build_ids 1
%endif
%if %{with_kabidwchk} || %{with_kabidw_base}
BuildRequires: kabi-dw
%endif
%if %{signkernel}%{signmodules}
BuildRequires: openssl
%if %{signkernel}
# ELN uses Fedora signing process, so exclude
%if 0%{?rhel}%{?centos} && !0%{?eln}
BuildRequires: system-sb-certs
%endif
%ifarch x86_64 aarch64
BuildRequires: nss-tools
BuildRequires: pesign >= 0.10-4
%endif
%endif
%endif
%if %{with_cross}
BuildRequires: binutils-%{_build_arch}-linux-gnu, gcc-%{_build_arch}-linux-gnu
%define cross_opts CROSS_COMPILE=%{_build_arch}-linux-gnu-
%define __strip %{_build_arch}-linux-gnu-strip
%endif
# These below are required to build man pages
%if %{with_perf}
BuildRequires: xmlto
%endif
%if %{with_perf} || %{with_tools}
BuildRequires: asciidoc
%endif
%if %{with toolchain_clang}
BuildRequires: clang
%endif
%if %{with clang_lto}
BuildRequires: llvm
BuildRequires: lld
%endif
%if %{efiuki}
BuildRequires: dracut >= 057-79.git20241127.el9
# For dracut UEFI uki binaries
BuildRequires: binutils
# For the initrd
BuildRequires: lvm2
# For systemd-stub
BuildRequires: systemd-boot-unsigned
# For systemd-pcrphase
BuildRequires: systemd-udev >= 252-1
# For systemd-repart
BuildRequires: xfsprogs e2fsprogs dosfstools
# For UKI kernel cmdline addons
BuildRequires: systemd-ukify
# For TPM operations in UKI initramfs
BuildRequires: tpm2-tools
# For UKI sb cert
%if 0%{?centos}
BuildRequires: centos-sb-certs >= 9.0-23
%else
BuildRequires: redhat-sb-certs >= 9.4-0.1
%endif
%endif
# Because this is the kernel, it's hard to get a single upstream URL
# to represent the base without needing to do a bunch of patching. This
# tarball is generated from a src-git tree. If you want to see the
# exact git commit you can run
#
# xzcat -qq ${TARBALL} | git get-tar-commit-id
Source0: linux-%{tarfile_release}.tar.xz
Source1: Makefile.rhelver
Source2: kernel.changelog
%if %{signkernel}
# Name of the packaged file containing signing key
%ifarch ppc64le
%define signing_key_filename kernel-signing-ppc.cer
%endif
%ifarch s390x
%define signing_key_filename kernel-signing-s390.cer
%endif
%define secureboot_ca_0 %{_datadir}/pki/sb-certs/secureboot-ca-%{_arch}.cer
%define secureboot_key_0 %{_datadir}/pki/sb-certs/secureboot-kernel-%{_arch}.cer
%if 0%{?centos}
%define pesign_name_0 centossecureboot201
%else
%ifarch x86_64 aarch64
%define pesign_name_0 redhatsecureboot801
%endif
%ifarch s390x
%define pesign_name_0 redhatsecureboot302
%endif
%ifarch ppc64le
%define pesign_name_0 redhatsecureboot701
%endif
%endif
# signkernel
%endif
Source20: mod-denylist.sh
Source21: mod-sign.sh
Source22: parallel_xz.sh
%define modsign_cmd %{SOURCE21}
%if 0%{?include_rhel}
Source23: x509.genkey.rhel
Source24: kernel-aarch64-rhel.config
Source25: kernel-aarch64-debug-rhel.config
Source26: mod-extra.list.rhel
Source27: kernel-ppc64le-rhel.config
Source28: kernel-ppc64le-debug-rhel.config
Source29: kernel-s390x-rhel.config
Source30: kernel-s390x-debug-rhel.config
Source31: kernel-s390x-zfcpdump-rhel.config
Source32: kernel-x86_64-rhel.config
Source33: kernel-x86_64-debug-rhel.config
Source34: filter-x86_64.sh.rhel
Source35: filter-armv7hl.sh.rhel
Source37: filter-aarch64.sh.rhel
Source38: filter-ppc64le.sh.rhel
Source39: filter-s390x.sh.rhel
Source40: filter-modules.sh.rhel
Source41: x509.genkey.centos
# ARM64 64K page-size kernel config
Source42: kernel-aarch64-64k-rhel.config
Source43: kernel-aarch64-64k-debug-rhel.config
Source44: kernel-x86_64-rt-rhel.config
Source45: kernel-x86_64-rt-debug-rhel.config
Source46: kernel-aarch64-rt-rhel.config
Source47: kernel-aarch64-rt-debug-rhel.config
Source48: kernel-aarch64-rt-64k-rhel.config
Source49: kernel-aarch64-rt-64k-debug-rhel.config
%endif
%if 0%{?include_fedora}
Source50: x509.genkey.fedora
Source51: mod-extra.list.fedora
Source52: kernel-aarch64-fedora.config
Source53: kernel-aarch64-debug-fedora.config
Source54: kernel-armv7hl-fedora.config
Source55: kernel-armv7hl-debug-fedora.config
Source56: kernel-armv7hl-lpae-fedora.config
Source57: kernel-armv7hl-lpae-debug-fedora.config
Source60: kernel-ppc64le-fedora.config
Source61: kernel-ppc64le-debug-fedora.config
Source62: kernel-s390x-fedora.config
Source63: kernel-s390x-debug-fedora.config
Source64: kernel-x86_64-fedora.config
Source65: kernel-x86_64-debug-fedora.config
Source67: filter-x86_64.sh.fedora
Source68: filter-armv7hl.sh.fedora
Source70: filter-aarch64.sh.fedora
Source71: filter-ppc64le.sh.fedora
Source72: filter-s390x.sh.fedora
Source73: filter-modules.sh.fedora
%endif
Source75: partial-kgcov-snip.config
Source80: generate_all_configs.sh
Source81: process_configs.sh
Source82: update_scripts.sh
Source83: kernel.sbat.template
Source84: mod-internal.list
Source85: mod-partner.list
Source100: rheldup3.x509
Source101: rhelkpatch1.x509
Source102: rhelimaca1.x509
Source103: rhelima.x509
Source104: rhelima_centos.x509
Source105: nvidiagpuoot001.x509
Source106: nvidiajetsonsoc.x509
Source107: nvidiabfdpu.x509
%if 0%{?centos}
%define ima_signing_cert %{SOURCE104}
%else
%define ima_signing_cert %{SOURCE103}
%endif
%define ima_cert_name ima.cer
Source150: dracut-virt.conf
Source151: uki_create_addons.py
Source152: uki_addons.json
# Temporary use redhatsecureboot504 for x86 UKI, see RHEL-122230
Source153: redhatsecureboot504.cer
Source200: check-kabi
Source201: Module.kabi_aarch64
Source202: Module.kabi_ppc64le
Source203: Module.kabi_s390x
Source204: Module.kabi_x86_64
Source210: Module.kabi_dup_aarch64
Source211: Module.kabi_dup_ppc64le
Source212: Module.kabi_dup_s390x
Source213: Module.kabi_dup_x86_64
Source300: kernel-abi-stablelists-%{kabiversion}.tar.bz2
Source301: kernel-kabi-dw-%{kabiversion}.tar.bz2
# Sources for kernel-tools
Source2000: cpupower.service
Source2001: cpupower.config
Source2002: kvm_stat.logrotate
# Some people enjoy building customized kernels from the dist-git in Fedora and
# use this to override configuration options. One day they may all use the
# source tree, but in the mean time we carry this to support the legacy workflow
Source3000: merge.pl
Source3001: kernel-local
%if %{patchlist_changelog}
Source3002: Patchlist.changelog
%endif
Source4000: README.rst
Source4001: rpminspect.yaml
Source4002: gating.yaml
## Patches needed for building this package
%if !%{nopatches}
Patch1: patch-%{patchversion}-redhat.patch
%endif
# empty final patch to facilitate testing of kernel patches
Patch999999: linux-kernel-test.patch
# END OF PATCH DEFINITIONS
%description
The kernel meta package
#
# This macro does requires, provides, conflicts, obsoletes for a kernel package.
# %%kernel_reqprovconf [-o] <subpackage>
# It uses any kernel_<subpackage>_conflicts and kernel_<subpackage>_obsoletes
# macros defined above.
#
%define kernel_reqprovconf(o) \
%if %{-o:0}%{!-o:1}\
Provides: kernel = %{specversion}-%{pkg_release}\
%endif\
Provides: kernel-%{_target_cpu} = %{specversion}-%{pkg_release}%{uname_suffix %{?1:%{1}}}\
Provides: kernel-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel%{?1:-%{1}}-modules-core-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires(pre): %{kernel_prereq}\
Requires(pre): %{initrd_prereq}\
Requires(pre): ((linux-firmware >= 20150904-56.git6ebf5d57) if linux-firmware)\
Recommends: linux-firmware\
Requires(preun): systemd >= 200\
Conflicts: xfsprogs < 4.3.0-1\
Conflicts: xorg-x11-drv-vmmouse < 13.0.99\
%ifarch x86_64 aarch64\
Conflicts: shim < 15.8-1\
%endif\
%{expand:%%{?kernel%{?1:_%{1}}_conflicts:Conflicts: %%{kernel%{?1:_%{1}}_conflicts}}}\
%{expand:%%{?kernel%{?1:_%{1}}_obsoletes:Obsoletes: %%{kernel%{?1:_%{1}}_obsoletes}}}\
%{expand:%%{?kernel%{?1:_%{1}}_provides:Provides: %%{kernel%{?1:_%{1}}_provides}}}\
# We can't let RPM do the dependencies automatic because it'll then pick up\
# a correct but undesirable perl dependency from the module headers which\
# isn't required for the kernel proper to function\
AutoReq: no\
AutoProv: yes\
%{nil}
%package doc
Summary: Various documentation bits found in the kernel source
Group: Documentation
%description doc
This package contains documentation files from the kernel
source. Various bits of information about the Linux kernel and the
device drivers shipped with it are documented in these files.
You'll want to install this package if you need a reference to the
options that can be passed to Linux kernel modules at load time.
%package headers
Summary: Header files for the Linux kernel for use by glibc
Obsoletes: glibc-kernheaders < 3.0-46
Provides: glibc-kernheaders = 3.0-46
%description headers
Kernel-headers includes the C header files that specify the interface
between the Linux kernel and userspace libraries and programs. The
header files define structures and constants that are needed for
building most standard programs and are also needed for rebuilding the
glibc package.
%package cross-headers
Summary: Header files for the Linux kernel for use by cross-glibc
%description cross-headers
Kernel-cross-headers includes the C header files that specify the interface
between the Linux kernel and userspace libraries and programs. The
header files define structures and constants that are needed for
building most standard programs and are also needed for rebuilding the
cross-glibc package.
%package debuginfo-common-%{_target_cpu}
Summary: Kernel source files used by %{name}-debuginfo packages
Provides: installonlypkg(kernel)
%description debuginfo-common-%{_target_cpu}
This package is required by %{name}-debuginfo subpackages.
It provides the kernel source files common to all builds.
%if %{with_perf}
%package -n perf
Summary: Performance monitoring for the Linux kernel
Requires: bzip2
%description -n perf
This package contains the perf tool, which enables performance monitoring
of the Linux kernel.
%package -n perf-debuginfo
Summary: Debug information for package perf
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
AutoReqProv: no
%description -n perf-debuginfo
This package provides debug information for the perf package.
# Note that this pattern only works right to match the .build-id
# symlinks because of the trailing nonmatching alternation and
# the leading .*, because of find-debuginfo.sh's buggy handling
# of matching the pattern against the symlinks file.
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_bindir}/perf(\.debug)?|.*%%{_libexecdir}/perf-core/.*|.*%%{_libdir}/libperf-jvmti.so(\.debug)?|XXX' -o perf-debuginfo.list}
%package -n python3-perf
Summary: Python bindings for apps which will manipulate perf events
%description -n python3-perf
The python3-perf package contains a module that permits applications
written in the Python programming language to use the interface
to manipulate perf events.
%package -n python3-perf-debuginfo
Summary: Debug information for package perf python bindings
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
AutoReqProv: no
%description -n python3-perf-debuginfo
This package provides debug information for the perf python bindings.
# the python_sitearch macro should already be defined from above
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{python3_sitearch}/perf.*so(\.debug)?|XXX' -o python3-perf-debuginfo.list}
%package -n libperf
Summary: The perf library from kernel source
%description -n libperf
This package contains the kernel source perf library.
%package -n libperf-devel
Summary: Developement files for the perf library from kernel source
Requires: libperf = %{version}-%{release}
%description -n libperf-devel
This package includes libraries and header files needed for development
of applications which use perf library from kernel source.
%package -n libperf-debuginfo
Summary: Debug information for package libperf
Group: Development/Debug
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
AutoReqProv: no
%description -n libperf-debuginfo
This package provides debug information for the libperf package.
# Note that this pattern only works right to match the .build-id
# symlinks because of the trailing nonmatching alternation and
# the leading .*, because of find-debuginfo.sh's buggy handling
# of matching the pattern against the symlinks file.
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_libdir}/libperf.so.*(\.debug)?|XXX' -o libperf-debuginfo.list}
# with_perf
%endif
%if %{with_tools}
%package -n kernel-tools
Summary: Assortment of tools for the Linux kernel
%ifarch %{cpupowerarchs}
Provides: cpupowerutils = 1:009-0.6.p1
Obsoletes: cpupowerutils < 1:009-0.6.p1
Provides: cpufreq-utils = 1:009-0.6.p1
Provides: cpufrequtils = 1:009-0.6.p1
Obsoletes: cpufreq-utils < 1:009-0.6.p1
Obsoletes: cpufrequtils < 1:009-0.6.p1
Obsoletes: cpuspeed < 1:1.5-16
Requires: kernel-tools-libs = %{version}-%{release}
%endif
%define __requires_exclude ^%{_bindir}/python
%description -n kernel-tools
This package contains the tools/ directory from the kernel source
and the supporting documentation.
%package -n kernel-tools-libs
Summary: Libraries for the kernels-tools
%description -n kernel-tools-libs
This package contains the libraries built from the tools/ directory
from the kernel source.
%package -n kernel-tools-libs-devel
Summary: Assortment of tools for the Linux kernel
Requires: kernel-tools = %{version}-%{release}
%ifarch %{cpupowerarchs}
Provides: cpupowerutils-devel = 1:009-0.6.p1
Obsoletes: cpupowerutils-devel < 1:009-0.6.p1
%endif
Requires: kernel-tools-libs = %{version}-%{release}
Provides: kernel-tools-devel
%description -n kernel-tools-libs-devel
This package contains the development files for the tools/ directory from
the kernel source.
%package -n kernel-tools-debuginfo
Summary: Debug information for package kernel-tools
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
AutoReqProv: no
%description -n kernel-tools-debuginfo
This package provides debug information for package kernel-tools.
# Note that this pattern only works right to match the .build-id
# symlinks because of the trailing nonmatching alternation and
# the leading .*, because of find-debuginfo.sh's buggy handling
# of matching the pattern against the symlinks file.
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_bindir}/bootconfig(\.debug)?|.*%%{_bindir}/centrino-decode(\.debug)?|.*%%{_bindir}/powernow-k8-decode(\.debug)?|.*%%{_bindir}/cpupower(\.debug)?|.*%%{_libdir}/libcpupower.*|.*%%{_bindir}/turbostat(\.debug)?|.*%%{_bindir}/x86_energy_perf_policy(\.debug)?|.*%%{_bindir}/tmon(\.debug)?|.*%%{_bindir}/lsgpio(\.debug)?|.*%%{_bindir}/gpio-hammer(\.debug)?|.*%%{_bindir}/gpio-event-mon(\.debug)?|.*%%{_bindir}/gpio-watch(\.debug)?|.*%%{_bindir}/iio_event_monitor(\.debug)?|.*%%{_bindir}/iio_generic_buffer(\.debug)?|.*%%{_bindir}/lsiio(\.debug)?|.*%%{_bindir}/intel-speed-select(\.debug)?|.*%%{_bindir}/page_owner_sort(\.debug)?|.*%%{_bindir}/slabinfo(\.debug)?|.*%%{_sbindir}/intel_sdsi(\.debug)?|XXX' -o kernel-tools-debuginfo.list}
%package -n rtla
Summary: Real-Time Linux Analysis tools
Requires: libtraceevent
Requires: libtracefs
Requires: libbpf
%ifarch %{cpupowerarchs}
Requires: kernel-tools-libs = %{version}-%{release}
%endif
%description -n rtla
The rtla meta-tool includes a set of commands that aims to analyze
the real-time properties of Linux. Instead of testing Linux as a black box,
rtla leverages kernel tracing capabilities to provide precise information
about the properties and root causes of unexpected results.
%package -n rv
Summary: RV: Runtime Verification
%description -n rv
Runtime Verification (RV) is a lightweight (yet rigorous) method that
complements classical exhaustive verification techniques (such as model
checking and theorem proving) with a more practical approach for
complex systems.
The rv tool is the interface for a collection of monitors that aim
analysing the logical and timing behavior of Linux.
# with_tools
%endif
%if %{with_selftests}
%package selftests-internal
Summary: Kernel samples and selftests
Requires: binutils, bpftool, iproute-tc, nmap-ncat, python3, fuse-libs, keyutils
%description selftests-internal
Kernel sample programs and selftests.
# Note that this pattern only works right to match the .build-id
# symlinks because of the trailing nonmatching alternation and
# the leading .*, because of find-debuginfo.sh's buggy handling
# of matching the pattern against the symlinks file.
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_libexecdir}/(ksamples|kselftests)/.*|XXX' -o selftests-debuginfo.list}
%define __requires_exclude ^liburandom_read.so.*$
# with_selftests
%endif
%define kernel_gcov_package() \
%package %{?1:%{1}-}gcov\
Summary: gcov graph and source files for coverage data collection.\
%description %{?1:%{1}-}gcov\
%{?1:%{1}-}gcov includes the gcov graph and source files for gcov coverage collection.\
%{nil}
%package -n kernel-abi-stablelists
Summary: The Red Hat Enterprise Linux kernel ABI symbol stablelists
AutoReqProv: no
%description -n kernel-abi-stablelists
The kABI package contains information pertaining to the Red Hat Enterprise
Linux kernel ABI, including lists of kernel symbols that are needed by
external Linux kernel modules, and a yum plugin to aid enforcement.
%if %{with_kabidw_base}
%package kernel-kabidw-base-internal
Summary: The baseline dataset for kABI verification using DWARF data
Group: System Environment/Kernel
AutoReqProv: no
%description kernel-kabidw-base-internal
The package contains data describing the current ABI of the Red Hat Enterprise
Linux kernel, suitable for the kabi-dw tool.
%endif
#
# This macro creates a kernel-<subpackage>-debuginfo package.
# %%kernel_debuginfo_package <subpackage>
#
# Explanation of the find_debuginfo_opts: We build multiple kernels (debug
# pae etc.) so the regex filters those kernels appropriately. We also
# have to package several binaries as part of kernel-devel but getting
# unique build-ids is tricky for these userspace binaries. We don't really
# care about debugging those so we just filter those out and remove it.
%define kernel_debuginfo_package() \
%package %{?1:%{1}-}debuginfo\
Summary: Debug information for package %{name}%{?1:-%{1}}\
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}\
Provides: %{name}%{?1:-%{1}}-debuginfo-%{_target_cpu} = %{version}-%{release}\
Provides: installonlypkg(kernel)\
AutoReqProv: no\
%description %{?1:%{1}-}debuginfo\
This package provides debug information for package %{name}%{?1:-%{1}}.\
This is required to use SystemTap with %{name}%{?1:-%{1}}-%{KVERREL}.\
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} --keep-section '.BTF' -p '.*\/usr\/src\/kernels/.*|XXX' -o ignored-debuginfo.list -p '/.*/%%{KVERREL_RE}%{?1:[+]%{1}}/.*|/.*%%{KVERREL_RE}%{?1:\+%{1}}(\.debug)?' -o debuginfo%{?1}.list}\
%{nil}
#
# This macro creates a kernel-<subpackage>-devel package.
# %%kernel_devel_package [-m] <subpackage> <pretty-name>
#
%define kernel_devel_package(m) \
%package %{?1:%{1}-}devel\
Summary: Development package for building kernel modules to match the %{?2:%{2} }kernel\
Provides: kernel%{?1:-%{1}}-devel-%{_target_cpu} = %{version}-%{release}\
Provides: kernel-devel-%{_target_cpu} = %{version}-%{release}%{uname_suffix %{?1:%{1}}}\
Provides: kernel-devel-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Provides: installonlypkg(kernel)\
AutoReqProv: no\
Requires(pre): findutils\
Requires: findutils\
Requires: perl-interpreter\
Requires: openssl-devel\
Requires: elfutils-libelf-devel\
Requires: bison\
Requires: flex\
Requires: make\
Requires: gcc\
%if %{-m:1}%{!-m:0}\
Requires: kernel-devel-uname-r = %{KVERREL}%{uname_variant %{?1:%{1}}}\
%endif\
%description %{?1:%{1}-}devel\
This package provides kernel headers and makefiles sufficient to build modules\
against the %{?2:%{2} }kernel package.\
%{nil}
#
# This macro creates an empty kernel-<subpackage>-devel-matched package that
# requires both the core and devel packages locked on the same version.
# %%kernel_devel_matched_package [-m] <subpackage> <pretty-name>
#
%define kernel_devel_matched_package(m) \
%package %{?1:%{1}-}devel-matched\
Summary: Meta package to install matching core and devel packages for a given %{?2:%{2} }kernel\
Requires: kernel%{?1:-%{1}}-devel = %{version}-%{release}\
Requires: kernel%{?1:-%{1}}-core = %{version}-%{release}\
%description %{?1:%{1}-}devel-matched\
This meta package is used to install matching core and devel packages for a given %{?2:%{2} }kernel.\
%{nil}
#
# This macro creates a kernel-<subpackage>-modules-internal package.
# %%kernel_modules_internal_package <subpackage> <pretty-name>
#
%define kernel_modules_internal_package() \
%package %{?1:%{1}-}modules-internal\
Summary: Extra kernel modules to match the %{?2:%{2} }kernel\
Group: System Environment/Kernel\
Provides: kernel%{?1:-%{1}}-modules-internal-%{_target_cpu} = %{version}-%{release}\
Provides: kernel%{?1:-%{1}}-modules-internal-%{_target_cpu} = %{version}-%{release}%{uname_suffix %{?1:%{1}}}\
Provides: kernel%{?1:-%{1}}-modules-internal = %{version}-%{release}%{uname_suffix %{?1:%{1}}}\
Provides: installonlypkg(kernel-module)\
Provides: kernel%{?1:-%{1}}-modules-internal-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel%{?1:-%{1}}-modules-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel%{?1:-%{1}}-modules-core-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
AutoReq: no\
AutoProv: yes\
%description %{?1:%{1}-}modules-internal\
This package provides kernel modules for the %{?2:%{2} }kernel package for Red Hat internal usage.\
%{nil}
#
# This macro creates a kernel-<subpackage>-modules-extra package.
# %%kernel_modules_extra_package [-m] <subpackage> <pretty-name>
#
%define kernel_modules_extra_package(m) \
%package %{?1:%{1}-}modules-extra\
Summary: Extra kernel modules to match the %{?2:%{2} }kernel\
Provides: kernel%{?1:-%{1}}-modules-extra-%{_target_cpu} = %{version}-%{release}\
Provides: kernel%{?1:-%{1}}-modules-extra-%{_target_cpu} = %{version}-%{release}%{uname_suffix %{?1:%{1}}}\
Provides: kernel%{?1:-%{1}}-modules-extra = %{version}-%{release}%{uname_suffix %{?1:%{1}}}\
Provides: installonlypkg(kernel-module)\
Provides: kernel%{?1:-%{1}}-modules-extra-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel%{?1:-%{1}}-modules-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel%{?1:-%{1}}-modules-core-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
%if %{-m:1}%{!-m:0}\
Requires: kernel-modules-extra-uname-r = %{KVERREL}%{uname_variant %{?1:%{1}}}\
%endif\
AutoReq: no\
AutoProv: yes\
%description %{?1:%{1}-}modules-extra\
This package provides less commonly used kernel modules for the %{?2:%{2} }kernel package.\
%{nil}
#
# This macro creates a kernel-<subpackage>-modules package.
# %%kernel_modules_package [-m] <subpackage> <pretty-name>
#
%define kernel_modules_package(m) \
%package %{?1:%{1}-}modules\
Summary: kernel modules to match the %{?2:%{2}-}core kernel\
Provides: kernel%{?1:-%{1}}-modules-%{_target_cpu} = %{version}-%{release}\
Provides: kernel-modules-%{_target_cpu} = %{version}-%{release}%{uname_suffix %{?1:%{1}}}\
Provides: kernel-modules = %{version}-%{release}%{uname_suffix %{?1:%{1}}}\
Provides: installonlypkg(kernel-module)\
Provides: kernel%{?1:-%{1}}-modules-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel%{?1:-%{1}}-modules-core-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
%if %{-m:1}%{!-m:0}\
Requires: kernel-modules-uname-r = %{KVERREL}%{uname_variant %{?1:%{1}}}\
%endif\
AutoReq: no\
AutoProv: yes\
%description %{?1:%{1}-}modules\
This package provides commonly used kernel modules for the %{?2:%{2}-}core kernel package.\
%{nil}
#
# This macro creates a kernel-<subpackage>-modules-core package.
# %%kernel_modules_core_package [-m] <subpackage> <pretty-name>
#
%define kernel_modules_core_package(m) \
%package %{?1:%{1}-}modules-core\
Summary: Core kernel modules to match the %{?2:%{2}-}core kernel\
Provides: kernel%{?1:-%{1}}-modules-core-%{_target_cpu} = %{version}-%{release}\
Provides: kernel-modules-core-%{_target_cpu} = %{version}-%{release}%{uname_suffix %{?1:%{1}}}\
Provides: kernel-modules-core = %{version}-%{release}%{uname_suffix %{?1:%{1}}}\
Provides: installonlypkg(kernel-module)\
Provides: kernel%{?1:-%{1}}-modules-core-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
%if %{-m:1}%{!-m:0}\
Requires: kernel-modules-core-uname-r = %{KVERREL}%{uname_variant %{?1:%{1}}}\
%endif\
AutoReq: no\
AutoProv: yes\
%description %{?1:%{1}-}modules-core\
This package provides essential kernel modules for the %{?2:%{2}-}core kernel package.\
%{nil}
#
# this macro creates a kernel-<subpackage> meta package.
# %%kernel_meta_package <subpackage>
#
%define kernel_meta_package() \
%package %{1}\
summary: kernel meta-package for the %{1} kernel\
Requires: kernel-%{1}-core-uname-r = %{KVERREL}%{uname_suffix %{1}}\
Requires: kernel-%{1}-modules-uname-r = %{KVERREL}%{uname_suffix %{1}}\
Requires: kernel-%{1}-modules-core-uname-r = %{KVERREL}%{uname_suffix %{1}}\
%if "%{1}" == "rt" || "%{1}" == "rt-debug" || "%{1}" == "rt-64k" || "%{1}" == "rt-64k-debug"\
Requires: realtime-setup\
%endif\
Provides: installonlypkg(kernel)\
%description %{1}\
The meta-package for the %{1} kernel\
%{nil}
#
# This macro creates a kernel-<subpackage> and its -devel and -debuginfo too.
# %%define variant_summary The Linux kernel compiled for <configuration>
# %%kernel_variant_package [-n <pretty-name>] [-m] [-o] <subpackage>
#
%define kernel_variant_package(n:mo) \
%package %{?1:%{1}-}core\
Summary: %{variant_summary}\
Provides: kernel-%{?1:%{1}-}core-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Provides: installonlypkg(kernel)\
%if %{-m:1}%{!-m:0}\
Requires: kernel-core-uname-r = %{KVERREL}%{uname_variant %{?1:%{1}}}\
Requires: kernel-%{?1:%{1}-}-modules-core-uname-r = %{KVERREL}%{uname_variant %{?1:%{1}}}\
%endif\
%{expand:%%kernel_reqprovconf %{?1:%{1}} %{-o:%{-o}}}\
%if %{?1:1} %{!?1:0} \
%{expand:%%kernel_meta_package %{?1:%{1}}}\
%endif\
%{expand:%%kernel_devel_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}} %{-m:%{-m}}}\
%{expand:%%kernel_devel_matched_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}} %{-m:%{-m}}}\
%{expand:%%kernel_modules_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}} %{-m:%{-m}}}\
%{expand:%%kernel_modules_core_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}} %{-m:%{-m}}}\
%{expand:%%kernel_modules_extra_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}} %{-m:%{-m}}}\
%if %{-m:0}%{!-m:1}\
%{expand:%%kernel_modules_internal_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
%if 0%{!?fedora:1}\
%{expand:%%kernel_modules_partner_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
%endif\
%{expand:%%kernel_debuginfo_package %{?1:%{1}}}\
%endif\
%if %{efiuki}\
%if "%{1}" != "rt" && "%{1}" != "rt-debug" && "%{1}" != "rt-64k" && "%{1}" != "rt-64k-debug"\
%package %{?1:%{1}-}uki-virt\
Summary: %{variant_summary} unified kernel image for virtual machines\
Provides: installonlypkg(kernel)\
Provides: kernel-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel%{?1:-%{1}}-modules-core-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires(pre): %{kernel_prereq}\
Requires(pre): systemd >= 252-20\
%package %{?1:%{1}-}uki-virt-addons\
Summary: %{variant_summary} unified kernel image addons for virtual machines\
Provides: installonlypkg(kernel)\
Requires: kernel%{?1:-%{1}}-uki-virt = %{version}-%{release}\
Requires(pre): systemd >= 252-20\
%endif\
%endif\
%if %{with_gcov}\
%{expand:%%kernel_gcov_package %{?1:%{1}}}\
%endif\
%{nil}
#
# This macro creates a kernel-<subpackage>-modules-partner package.
# %%kernel_modules_partner_package <subpackage> <pretty-name>
#
%define kernel_modules_partner_package() \
%package %{?1:%{1}-}modules-partner\
Summary: Extra kernel modules to match the %{?2:%{2} }kernel\
Group: System Environment/Kernel\
Provides: kernel%{?1:-%{1}}-modules-partner-%{_target_cpu} = %{version}-%{release}\
Provides: kernel%{?1:-%{1}}-modules-partner-%{_target_cpu} = %{version}-%{release}%{uname_suffix %{?1:%{1}}}\
Provides: kernel%{?1:-%{1}}-modules-partner = %{version}-%{release}%{uname_suffix %{?1:%{1}}}\
Provides: installonlypkg(kernel-module)\
Provides: kernel%{?1:-%{1}}-modules-partner-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
Requires: kernel%{?1:-%{1}}-modules-uname-r = %{KVERREL}%{uname_suffix %{?1:%{1}}}\
AutoReq: no\
AutoProv: yes\
%description %{?1:%{1}-}modules-partner\
This package provides kernel modules for the %{?2:%{2} }kernel package for Red Hat partners usage.\
%{nil}
# Now, each variant package.
%if %{with_pae}
%define variant_summary The Linux kernel compiled for Cortex-A15
%kernel_variant_package lpae
%description lpae-core
This package includes a version of the Linux kernel with support for
Cortex-A15 devices with LPAE and HW virtualisation support
%endif
%if %{with_zfcpdump}
%define variant_summary The Linux kernel compiled for zfcpdump usage
%kernel_variant_package -o zfcpdump
%description zfcpdump-core
The kernel package contains the Linux kernel (vmlinuz) for use by the
zfcpdump infrastructure.
# with_zfcpdump
%endif
%if %{with_arm64_64k}
%define variant_summary The Linux kernel compiled for 64k pagesize usage
%kernel_variant_package 64k
%description 64k-core
The kernel package contains a variant of the ARM64 Linux kernel using
a 64K page size.
%endif
%if %{with_arm64_64k} && %{with_debug}
%define variant_summary The Linux kernel compiled with extra debugging enabled
%if !%{debugbuildsenabled}
%kernel_variant_package -m 64k-debug
%else
%kernel_variant_package 64k-debug
%endif
%description 64k-debug-core
The debug kernel package contains a variant of the ARM64 Linux kernel using
a 64K page size.
This variant of the kernel has numerous debugging options enabled.
It should only be installed when trying to gather additional information
on kernel bugs, as some of these options impact performance noticably.
%endif
%if %{with_realtime}
%define variant_summary The Linux kernel compiled with PREEMPT_RT enabled
%kernel_variant_package rt
%description rt-core
This package includes a version of the Linux kernel compiled with PREEMPT_RT
(real-time preemption support).
%endif
%if %{with_debug} && %{with_realtime}
%define variant_summary The Linux kernel compiled with PREEMPT_RT enabled
%kernel_variant_package rt-debug
%description rt-debug-core
This package includes a version of the Linux kernel compiled with PREEMPT_RT
(real-time preemption support) and has numerous debugging options enabled.
It should only be installed when trying to gather additional information
on kernel bugs, as some of these options impact performance noticably.
%endif
%if %{with_realtime_arm64_64k}
%define variant_summary The Linux kernel compiled with PREEMPT_RT enabled and for 64k pagesize usage
%kernel_variant_package rt-64k
%description rt-64k-core
The kernel package contains a variant of the ARM64 Linux kernel with PREEMPT_RT
enabled and using a 64K page size.
%endif
%if %{with_realtime_arm64_64k} && %{with_debug}
%define variant_summary The Linux PREEMPT_RT kernel compiled with extra debugging enabled
%if !%{debugbuildsenabled}
%kernel_variant_package -m rt-64k-debug
%else
%kernel_variant_package rt-64k-debug
%endif
%description rt-64k-debug-core
The debug kernel package contains a variant of the ARM64 Linux PREEMPT_RT
kernel using a 64K page size.
This variant of the kernel has numerous debugging options enabled.
It should only be installed when trying to gather additional information
on kernel bugs, as some of these options impact performance noticably.
%endif
%if !%{debugbuildsenabled}
%kernel_variant_package -m debug
%else
%kernel_variant_package debug
%endif
%description debug-core
The kernel package contains the Linux kernel (vmlinuz), the core of any
Linux operating system. The kernel handles the basic functions
of the operating system: memory allocation, process allocation, device
input and output, etc.
This variant of the kernel has numerous debugging options enabled.
It should only be installed when trying to gather additional information
on kernel bugs, as some of these options impact performance noticably.
# And finally the main -core package
%define variant_summary The Linux kernel
%kernel_variant_package
%description core
The kernel package contains the Linux kernel (vmlinuz), the core of any
Linux operating system. The kernel handles the basic functions
of the operating system: memory allocation, process allocation, device
input and output, etc.
%if %{efiuki}
%description debug-uki-virt
Prebuilt debug unified kernel image for virtual machines.
%description debug-uki-virt-addons
Prebuilt debug unified kernel image addons for virtual machines.
%description uki-virt
Prebuilt default unified kernel image for virtual machines.
%description uki-virt-addons
Prebuilt default unified kernel image addons for virtual machines.
%endif
%prep
# do a few sanity-checks for --with *only builds
%if %{with_baseonly}
%if !%{with_up}
echo "Cannot build --with baseonly, up build is disabled"
exit 1
%endif
%endif
# more sanity checking; do it quietly
if [ "%{patches}" != "%%{patches}" ] ; then
for patch in %{patches} ; do
if [ ! -f $patch ] ; then
echo "ERROR: Patch ${patch##/*/} listed in specfile but is missing"
exit 1
fi
done
fi 2>/dev/null
patch_command='git apply'
ApplyPatch()
{
local patch=$1
shift
if [ ! -f $RPM_SOURCE_DIR/$patch ]; then
exit 1
fi
if ! grep -E "^Patch[0-9]+: $patch\$" %{_specdir}/${RPM_PACKAGE_NAME}.spec ; then
if [ "${patch:0:8}" != "patch-%{kversion}." ] ; then
echo "ERROR: Patch $patch not listed as a source patch in specfile"
exit 1
fi
fi 2>/dev/null
case "$patch" in
*.bz2) bunzip2 < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
*.gz) gunzip < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
*.xz) unxz < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
*) $patch_command ${1+"$@"} < "$RPM_SOURCE_DIR/$patch" ;;
esac
}
# don't apply patch if it's empty
ApplyOptionalPatch()
{
local patch=$1
shift
if [ ! -f $RPM_SOURCE_DIR/$patch ]; then
exit 1
fi
local C=$(wc -l $RPM_SOURCE_DIR/$patch | awk '{print $1}')
if [ "$C" -gt 9 ]; then
ApplyPatch $patch ${1+"$@"}
fi
}
%setup -q -n kernel-%{tarfile_release} -c
mv linux-%{tarfile_release} linux-%{KVERREL}
cd linux-%{KVERREL}
cp -a %{SOURCE1} .
%if !%{nopatches}
ApplyOptionalPatch patch-%{patchversion}-redhat.patch
%endif
ApplyOptionalPatch linux-kernel-test.patch
# END OF PATCH APPLICATIONS
# Any further pre-build tree manipulations happen here.
chmod +x scripts/checkpatch.pl
mv COPYING COPYING-%{version}-%{release}
# This Prevents scripts/setlocalversion from mucking with our version numbers.
touch .scmversion
# Mangle /usr/bin/python shebangs to /usr/bin/python3
# Mangle all Python shebangs to be Python 3 explicitly
# -p preserves timestamps
# -n prevents creating ~backup files
# -i specifies the interpreter for the shebang
# This fixes errors such as
# *** ERROR: ambiguous python shebang in /usr/bin/kvm_stat: #!/usr/bin/python. Change it to python3 (or python2) explicitly.
# We patch all sources below for which we got a report/error.
pathfix.py -i "%{__python3}" -p -n \
tools/kvm/kvm_stat/kvm_stat \
scripts/show_delta \
scripts/diffconfig \
scripts/bloat-o-meter \
scripts/jobserver-exec \
tools \
Documentation \
scripts/clang-tools
# SBAT data
sed -e s,@KVER,%{KVERREL}, -e s,@SBAT_SUFFIX,%{sbat_suffix}, %{SOURCE83} > kernel.sbat
# only deal with configs if we are going to build for the arch
%ifnarch %nobuildarches
if [ -L configs ]; then
rm -f configs
fi
mkdir configs
cd configs
# Drop some necessary files from the source dir into the buildroot
cp $RPM_SOURCE_DIR/kernel-*.config .
cp %{SOURCE80} .
# merge.pl
cp %{SOURCE3000} .
# kernel-local
cp %{SOURCE3001} .
FLAVOR=%{primary_target} SPECVERSION=%{version} ./generate_all_configs.sh %{debugbuildsenabled}
# Merge in any user-provided local config option changes
%ifnarch %nobuildarches
for i in %{all_arch_configs}
do
mv $i $i.tmp
./merge.pl %{SOURCE3001} $i.tmp > $i
%if %{with_gcov}
echo "Merging with gcov options"
cat %{SOURCE75}
mv $i $i.tmp
./merge.pl %{SOURCE75} $i.tmp > $i
%endif
rm $i.tmp
done
%endif
%if %{with clang_lto}
for i in *aarch64*.config *x86_64*.config; do
sed -i 's/# CONFIG_LTO_CLANG_THIN is not set/CONFIG_LTO_CLANG_THIN=y/' $i
sed -i 's/CONFIG_LTO_NONE=y/# CONFIG_LTO_NONE is not set/' $i
done
%endif
# Add DUP and kpatch certificates to system trusted keys for RHEL
%if 0%{?rhel}
%if %{signkernel}%{signmodules}
openssl x509 -inform der -in %{SOURCE100} -out rheldup3.pem
openssl x509 -inform der -in %{SOURCE101} -out rhelkpatch1.pem
openssl x509 -inform der -in %{SOURCE102} -out rhelimaca1.pem
openssl x509 -inform der -in %{SOURCE105} -out nvidiagpuoot001.pem
openssl x509 -inform der -in %{SOURCE106} -out nvidiajetsonsoc.pem
openssl x509 -inform der -in %{SOURCE107} -out nvidiabfdpu.pem
cat rheldup3.pem rhelkpatch1.pem rhelimaca1.pem nvidiagpuoot001.pem nvidiajetsonsoc.pem nvidiabfdpu.pem > ../certs/rhel.pem
%if %{signkernel}
%ifarch s390x ppc64le
openssl x509 -inform der -in %{secureboot_ca_0} -out secureboot.pem
cat secureboot.pem >> ../certs/rhel.pem
%endif
%endif
for i in *.config; do
sed -i 's@CONFIG_SYSTEM_TRUSTED_KEYS=""@CONFIG_SYSTEM_TRUSTED_KEYS="certs/rhel.pem"@' $i
sed -i 's@CONFIG_EFI_SBAT_FILE=""@CONFIG_EFI_SBAT_FILE="kernel.sbat"@' $i
done
%endif
%endif
# Adjust FIPS module name for RHEL
%if 0%{?rhel}
for i in *.config; do
sed -i 's/CONFIG_CRYPTO_FIPS_NAME=.*/CONFIG_CRYPTO_FIPS_NAME="Red Hat Enterprise Linux %{rhel} - Kernel Cryptographic API"/' $i
done
%endif
cp %{SOURCE81} .
OPTS=""
%if %{with_configchecks}
OPTS="$OPTS -w -n -c"
%endif
%if %{with clang_lto}
for opt in %{clang_make_opts}; do
OPTS="$OPTS -m $opt"
done
%endif
RHJOBS=$RPM_BUILD_NCPUS PACKAGE_NAME=kernel ./process_configs.sh $OPTS ${specversion}
cp %{SOURCE82} .
RPM_SOURCE_DIR=$RPM_SOURCE_DIR ./update_scripts.sh %{primary_target}
# We may want to override files from the primary target in case of building
# against a flavour of it (eg. centos not rhel), thus override it here if
# necessary
if [ "%{primary_target}" == "rhel" ]; then
%if 0%{?centos}
echo "Updating scripts/sources to centos version"
RPM_SOURCE_DIR=$RPM_SOURCE_DIR ./update_scripts.sh centos
%else
echo "Not updating scripts/sources to centos version"
%endif
fi
# end of kernel config
%endif
cd ..
# # End of Configs stuff
# get rid of unwanted files resulting from patch fuzz
find . \( -name "*.orig" -o -name "*~" \) -delete >/dev/null
# remove unnecessary SCM files
find . -name .gitignore -delete >/dev/null
cd ..
###
### build
###
%build
rm -rf %{buildroot_unstripped} || true
mkdir -p %{buildroot_unstripped}
%if %{with_sparse}
%define sparse_mflags C=1
%endif
cp_vmlinux()
{
eu-strip --remove-comment -o "$2" "$1"
}
# Note we need to disable these flags for cross builds because the flags
# from redhat-rpm-config assume that host == target so target arch
# flags cause issues with the host compiler.
%if !%{with_cross}
%define build_hostcflags %{?build_cflags}
%define build_hostldflags %{?build_ldflags}
%endif
%define make %{__make} %{?cross_opts} %{?make_opts} HOSTCFLAGS="%{?build_hostcflags}" HOSTLDFLAGS="%{?build_hostldflags}"
InitBuildVars() {
# Initialize the kernel .config file and create some variables that are
# needed for the actual build process.
Variant=$1
# Pick the right kernel config file
Config=kernel-%{version}-%{_target_cpu}${Variant:+-${Variant}}.config
DevelDir=/usr/src/kernels/%{KVERREL}${Variant:++${Variant}}
KernelVer=%{version}-%{release}.%{_target_cpu}${Variant:++${Variant}}
# make sure EXTRAVERSION says what we want it to say
# Trim the release if this is a CI build, since KERNELVERSION is limited to 64 characters
ShortRel=$(perl -e "print \"%{release}\" =~ s/\.pr\.[0-9A-Fa-f]{32}//r")
perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -${ShortRel}.%{_target_cpu}${Variant:++${Variant}}/" Makefile
# if pre-rc1 devel kernel, must fix up PATCHLEVEL for our versioning scheme
# if we are post rc1 this should match anyway so this won't matter
perl -p -i -e 's/^PATCHLEVEL.*/PATCHLEVEL = %{patchlevel}/' Makefile
%{make} %{?_smp_mflags} mrproper
cp configs/$Config .config
%if %{signkernel}%{signmodules}
cp configs/x509.genkey certs/.
%endif
Arch=`head -1 .config | cut -b 3-`
echo USING ARCH=$Arch
KCFLAGS="%{?kcflags}"
}
BuildKernel() {
MakeTarget=$1
KernelImage=$2
DoVDSO=$3
Variant=$4
InstallName=${5:-vmlinuz}
DoModules=1
if [ "$Variant" = "zfcpdump" ]; then
DoModules=0
fi
# When the bootable image is just the ELF kernel, strip it.
# We already copy the unstripped file into the debuginfo package.
if [ "$KernelImage" = vmlinux ]; then
CopyKernel=cp_vmlinux
else
CopyKernel=cp
fi
%if %{with_gcov}
# Make build directory unique for each variant, so that gcno symlinks
# are also unique for each variant.
if [ -n "$Variant" ]; then
ln -s $(pwd) ../linux-%{KVERREL}-${Variant}
fi
echo "GCOV - continuing build in: $(pwd)"
pushd ../linux-%{KVERREL}${Variant:+-${Variant}}
pwd > ../kernel${Variant:+-${Variant}}-gcov.list
%endif
InitBuildVars $Variant
echo BUILDING A KERNEL FOR ${Variant} %{_target_cpu}...
%{make} ARCH=$Arch olddefconfig >/dev/null
# This ensures build-ids are unique to allow parallel debuginfo
perl -p -i -e "s/^CONFIG_BUILD_SALT.*/CONFIG_BUILD_SALT=\"%{KVERREL}\"/" .config
%{make} ARCH=$Arch KCFLAGS="$KCFLAGS" WITH_GCOV="%{?with_gcov}" %{?_smp_mflags} $MakeTarget %{?sparse_mflags} %{?kernel_mflags}
if [ $DoModules -eq 1 ]; then
%{make} ARCH=$Arch KCFLAGS="$KCFLAGS" WITH_GCOV="%{?with_gcov}" %{?_smp_mflags} modules %{?sparse_mflags} || exit 1
fi
mkdir -p $RPM_BUILD_ROOT/%{image_install_path}
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/systemtap
%if %{with_debuginfo}
mkdir -p $RPM_BUILD_ROOT%{debuginfodir}/%{image_install_path}
%endif
%ifarch %{arm} aarch64
%{make} ARCH=$Arch dtbs INSTALL_DTBS_PATH=$RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
%{make} ARCH=$Arch dtbs_install INSTALL_DTBS_PATH=$RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
cp -r $RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer $RPM_BUILD_ROOT/lib/modules/$KernelVer/dtb
find arch/$Arch/boot/dts -name '*.dtb' -type f -delete
%endif
# Start installing the results
install -m 644 .config $RPM_BUILD_ROOT/boot/config-$KernelVer
install -m 644 .config $RPM_BUILD_ROOT/lib/modules/$KernelVer/config
install -m 644 System.map $RPM_BUILD_ROOT/boot/System.map-$KernelVer
install -m 644 System.map $RPM_BUILD_ROOT/lib/modules/$KernelVer/System.map
# We estimate the size of the initramfs because rpm needs to take this size
# into consideration when performing disk space calculations. (See bz #530778)
dd if=/dev/zero of=$RPM_BUILD_ROOT/boot/initramfs-$KernelVer.img bs=1M count=20
if [ -f arch/$Arch/boot/zImage.stub ]; then
cp arch/$Arch/boot/zImage.stub $RPM_BUILD_ROOT/%{image_install_path}/zImage.stub-$KernelVer || :
cp arch/$Arch/boot/zImage.stub $RPM_BUILD_ROOT/lib/modules/$KernelVer/zImage.stub-$KernelVer || :
fi
%if %{signkernel}
if [ "$KernelImage" = vmlinux ]; then
# We can't strip and sign $KernelImage in place, because
# we need to preserve original vmlinux for debuginfo.
# Use a copy for signing.
$CopyKernel $KernelImage $KernelImage.tosign
KernelImage=$KernelImage.tosign
CopyKernel=cp
fi
# Sign the image if we're using EFI
# aarch64 kernels are gziped EFI images
KernelExtension=${KernelImage##*.}
if [ "$KernelExtension" == "gz" ]; then
SignImage=${KernelImage%.*}
else
SignImage=$KernelImage
fi
%ifarch x86_64 aarch64
%pesign -s -i $SignImage -o vmlinuz.signed -a %{secureboot_ca_0} -c %{secureboot_key_0} -n %{pesign_name_0}
%endif
%ifarch s390x ppc64le
if [ -x /usr/bin/rpm-sign ]; then
rpm-sign --key "%{pesign_name_0}" --lkmsign $SignImage --output vmlinuz.signed
elif [ "$DoModules" == "1" -a "%{signmodules}" == "1" ]; then
chmod +x scripts/sign-file
./scripts/sign-file -p sha256 certs/signing_key.pem certs/signing_key.x509 $SignImage vmlinuz.signed
else
mv $SignImage vmlinuz.signed
fi
%endif
if [ ! -s vmlinuz.signed ]; then
echo "pesigning failed"
exit 1
fi
mv vmlinuz.signed $SignImage
if [ "$KernelExtension" == "gz" ]; then
gzip -f9 $SignImage
fi
# signkernel
%endif
$CopyKernel $KernelImage \
$RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
chmod 755 $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
cp $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer $RPM_BUILD_ROOT/lib/modules/$KernelVer/$InstallName
# hmac sign the kernel for FIPS
echo "Creating hmac file: $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac"
ls -l $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
(cd $RPM_BUILD_ROOT/%{image_install_path} && sha512hmac $InstallName-$KernelVer) > $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac;
cp $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac $RPM_BUILD_ROOT/lib/modules/$KernelVer/.vmlinuz.hmac
if [ $DoModules -eq 1 ]; then
# Override $(mod-fw) because we don't want it to install any firmware
# we'll get it from the linux-firmware package and we don't want conflicts
%{make} %{?_smp_mflags} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT %{?_smp_mflags} modules_install KERNELRELEASE=$KernelVer mod-fw=
fi
%if %{with_gcov}
# install gcov-needed files to $BUILDROOT/$BUILD/...:
# gcov_info->filename is absolute path
# gcno references to sources can use absolute paths (e.g. in out-of-tree builds)
# sysfs symlink targets (set up at compile time) use absolute paths to BUILD dir
find . \( -name '*.gcno' -o -name '*.[chS]' \) -exec install -D '{}' "$RPM_BUILD_ROOT/$(pwd)/{}" \;
%endif
# add an a noop %%defattr statement 'cause rpm doesn't like empty file list files
echo '%%defattr(-,-,-)' > ../kernel${Variant:+-${Variant}}-ldsoconf.list
if [ $DoVDSO -ne 0 ]; then
%{make} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT vdso_install KERNELRELEASE=$KernelVer
if [ -s ldconfig-kernel.conf ]; then
install -D -m 444 ldconfig-kernel.conf \
$RPM_BUILD_ROOT/etc/ld.so.conf.d/kernel-$KernelVer.conf
echo /etc/ld.so.conf.d/kernel-$KernelVer.conf >> ../kernel${Variant:+-${Variant}}-ldsoconf.list
fi
rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/vdso/.build-id
fi
# And save the headers/makefiles etc for building modules against
#
# This all looks scary, but the end result is supposed to be:
# * all arch relevant include/ files
# * all Makefile/Kconfig files
# * all script/ files
rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/source
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
(cd $RPM_BUILD_ROOT/lib/modules/$KernelVer ; ln -s build source)
# dirs for additional modules per module-init-tools, kbuild/modules.txt
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/updates
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/weak-updates
# CONFIG_KERNEL_HEADER_TEST generates some extra files in the process of
# testing so just delete
find . -name *.h.s -delete
# first copy everything
cp --parents `find -type f -name "Makefile*" -o -name "Kconfig*"` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
if [ ! -e Module.symvers ]; then
touch Module.symvers
fi
cp Module.symvers $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp System.map $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
if [ -s Module.markers ]; then
cp Module.markers $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
fi
# create the kABI metadata for use in packaging
# NOTENOTE: the name symvers is used by the rpm backend
# NOTENOTE: to discover and run the /usr/lib/rpm/fileattrs/kabi.attr
# NOTENOTE: script which dynamically adds exported kernel symbol
# NOTENOTE: checksums to the rpm metadata provides list.
# NOTENOTE: if you change the symvers name, update the backend too
echo "**** GENERATING kernel ABI metadata ****"
gzip -c9 < Module.symvers > $RPM_BUILD_ROOT/boot/symvers-$KernelVer.gz
cp $RPM_BUILD_ROOT/boot/symvers-$KernelVer.gz $RPM_BUILD_ROOT/lib/modules/$KernelVer/symvers.gz
%if %{with_kabichk}
echo "**** kABI checking is enabled in kernel SPEC file. ****"
chmod 0755 $RPM_SOURCE_DIR/check-kabi
if [ -e $RPM_SOURCE_DIR/Module.kabi_%{_target_cpu}$Variant ]; then
cp $RPM_SOURCE_DIR/Module.kabi_%{_target_cpu}$Variant $RPM_BUILD_ROOT/Module.kabi
$RPM_SOURCE_DIR/check-kabi -k $RPM_BUILD_ROOT/Module.kabi -s Module.symvers || exit 1
# for now, don't keep it around.
rm $RPM_BUILD_ROOT/Module.kabi
else
echo "**** NOTE: Cannot find reference Module.kabi file. ****"
fi
%endif
%if %{with_kabidupchk}
echo "**** kABI DUP checking is enabled in kernel SPEC file. ****"
if [ -e $RPM_SOURCE_DIR/Module.kabi_dup_%{_target_cpu}$Variant ]; then
cp $RPM_SOURCE_DIR/Module.kabi_dup_%{_target_cpu}$Variant $RPM_BUILD_ROOT/Module.kabi
$RPM_SOURCE_DIR/check-kabi -k $RPM_BUILD_ROOT/Module.kabi -s Module.symvers || exit 1
# for now, don't keep it around.
rm $RPM_BUILD_ROOT/Module.kabi
else
echo "**** NOTE: Cannot find DUP reference Module.kabi file. ****"
fi
%endif
%if %{with_kabidw_base}
# Don't build kabi base for debug kernels
if [ "$Variant" != "zfcpdump" -a "$Variant" != "debug" ]; then
mkdir -p $RPM_BUILD_ROOT/kabi-dwarf
tar xjvf %{SOURCE301} -C $RPM_BUILD_ROOT/kabi-dwarf
mkdir -p $RPM_BUILD_ROOT/kabi-dwarf/stablelists
tar xjvf %{SOURCE300} -C $RPM_BUILD_ROOT/kabi-dwarf/stablelists
echo "**** GENERATING DWARF-based kABI baseline dataset ****"
chmod 0755 $RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh
$RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh generate \
"$RPM_BUILD_ROOT/kabi-dwarf/stablelists/kabi-current/kabi_stablelist_%{_target_cpu}" \
"$(pwd)" \
"$RPM_BUILD_ROOT/kabidw-base/%{_target_cpu}${Variant:+.${Variant}}" || :
rm -rf $RPM_BUILD_ROOT/kabi-dwarf
fi
%endif
%if %{with_kabidwchk}
if [ "$Variant" != "zfcpdump" ]; then
mkdir -p $RPM_BUILD_ROOT/kabi-dwarf
tar xjvf %{SOURCE301} -C $RPM_BUILD_ROOT/kabi-dwarf
if [ -d "$RPM_BUILD_ROOT/kabi-dwarf/base/%{_target_cpu}${Variant:+.${Variant}}" ]; then
mkdir -p $RPM_BUILD_ROOT/kabi-dwarf/stablelists
tar xjvf %{SOURCE300} -C $RPM_BUILD_ROOT/kabi-dwarf/stablelists
echo "**** GENERATING DWARF-based kABI dataset ****"
chmod 0755 $RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh
$RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh generate \
"$RPM_BUILD_ROOT/kabi-dwarf/stablelists/kabi-current/kabi_stablelist_%{_target_cpu}" \
"$(pwd)" \
"$RPM_BUILD_ROOT/kabi-dwarf/base/%{_target_cpu}${Variant:+.${Variant}}.tmp" || :
echo "**** kABI DWARF-based comparison report ****"
$RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh compare \
"$RPM_BUILD_ROOT/kabi-dwarf/base/%{_target_cpu}${Variant:+.${Variant}}" \
"$RPM_BUILD_ROOT/kabi-dwarf/base/%{_target_cpu}${Variant:+.${Variant}}.tmp" || :
echo "**** End of kABI DWARF-based comparison report ****"
else
echo "**** Baseline dataset for kABI DWARF-BASED comparison report not found ****"
fi
rm -rf $RPM_BUILD_ROOT/kabi-dwarf
fi
%endif
# then drop all but the needed Makefiles/Kconfig files
rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts
rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
cp .config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/tracing
rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/spdxcheck.py
%ifarch s390x
# CONFIG_EXPOLINE_EXTERN=y produces arch/s390/lib/expoline/expoline.o
# which is needed during external module build.
if [ -f arch/s390/lib/expoline/expoline.o ]; then
cp -a --parents arch/s390/lib/expoline/expoline.o $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
fi
%endif
# Files for 'make scripts' to succeed with kernel-devel.
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/security/selinux/include
cp -a --parents security/selinux/include/classmap.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents security/selinux/include/initial_sid_to_string.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/tools/include/tools
cp -a --parents tools/include/tools/be_byteshift.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/include/tools/le_byteshift.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
# Files for 'make prepare' to succeed with kernel-devel.
cp -a --parents tools/include/linux/compiler* $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/include/linux/types.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/build/Build.include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp --parents tools/build/fixdep.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp --parents tools/objtool/sync-check.sh $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/bpf/resolve_btfids $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp --parents security/selinux/include/policycap_names.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp --parents security/selinux/include/policycap.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/include/asm $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/include/asm-generic $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/include/linux $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/include/uapi/asm $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/include/uapi/asm-generic $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/include/uapi/linux $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/include/vdso $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp --parents tools/scripts/utilities.mak $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/lib/subcmd $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp --parents tools/lib/*.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp --parents tools/objtool/*.[ch] $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp --parents tools/objtool/Build $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp --parents tools/objtool/include/objtool/*.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/lib/bpf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp --parents tools/lib/bpf/Build $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
if [ -f tools/objtool/objtool ]; then
cp -a tools/objtool/objtool $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/tools/objtool/ || :
fi
if [ -f tools/objtool/fixdep ]; then
cp -a tools/objtool/fixdep $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/tools/objtool/ || :
fi
if [ -d arch/$Arch/scripts ]; then
cp -a arch/$Arch/scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch} || :
fi
if [ -f arch/$Arch/*lds ]; then
cp -a arch/$Arch/*lds $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch}/ || :
fi
if [ -f arch/%{asmarch}/kernel/module.lds ]; then
cp -a --parents arch/%{asmarch}/kernel/module.lds $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
fi
find $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts \( -iname "*.o" -o -iname "*.cmd" \) -exec rm -f {} +
%ifarch ppc64le
cp -a --parents arch/powerpc/lib/crtsavres.[So] $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
%endif
if [ -d arch/%{asmarch}/include ]; then
cp -a --parents arch/%{asmarch}/include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
fi
if [ -d tools/arch/%{asmarch}/include ]; then
cp -a --parents tools/arch/%{asmarch}/include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
fi
%ifarch aarch64
# arch/arm64/include/asm/xen references arch/arm
cp -a --parents arch/arm/include/asm/xen $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
# arch/arm64/include/asm/opcodes.h references arch/arm
cp -a --parents arch/arm/include/asm/opcodes.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
%endif
# include the machine specific headers for ARM variants, if available.
%ifarch %{arm}
if [ -d arch/%{asmarch}/mach-${Variant}/include ]; then
cp -a --parents arch/%{asmarch}/mach-${Variant}/include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
fi
# include a few files for 'make prepare'
cp -a --parents arch/arm/tools/gen-mach-types $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/arm/tools/mach-types $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
%endif
cp -a include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
# Cross-reference from include/perf/events/sof.h
cp -a sound/soc/sof/sof-audio.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/sound/soc/sof
%ifarch i686 x86_64
# files for 'make prepare' to succeed with kernel-devel
cp -a --parents arch/x86/entry/syscalls/syscall_32.tbl $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/entry/syscalls/syscall_64.tbl $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/tools/relocs_32.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/tools/relocs_64.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/tools/relocs.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/tools/relocs_common.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/tools/relocs.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/purgatory/purgatory.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/purgatory/stack.S $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/purgatory/setup-x86_64.S $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/purgatory/entry64.S $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/boot/string.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/boot/string.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents arch/x86/boot/ctype.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents scripts/syscalltbl.sh $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents scripts/syscallhdr.sh $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
cp -a --parents tools/arch/x86/include/asm $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/arch/x86/include/uapi/asm $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/objtool/arch/x86/lib $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/arch/x86/lib/ $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/arch/x86/tools/gen-insn-attr-x86.awk $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/objtool/arch/x86/ $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
%endif
# Clean up intermediate tools files
find $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/tools \( -iname "*.o" -o -iname "*.cmd" \) -exec rm -f {} +
# Make sure the Makefile, version.h, and auto.conf have a matching
# timestamp so that external modules can be built
touch -r $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Makefile \
$RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/generated/uapi/linux/version.h \
$RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/config/auto.conf
%if %{with_debuginfo}
eu-readelf -n vmlinux | grep "Build ID" | awk '{print $NF}' > vmlinux.id
cp vmlinux.id $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/vmlinux.id
#
# save the vmlinux file for kernel debugging into the kernel-debuginfo rpm
#
mkdir -p $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer
cp vmlinux $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer
if [ -n "%{vmlinux_decompressor}" ]; then
eu-readelf -n %{vmlinux_decompressor} | grep "Build ID" | awk '{print $NF}' > vmlinux.decompressor.id
# Without build-id the build will fail. But for s390 the build-id
# wasn't added before 5.11. In case it is missing prefer not
# packaging the debuginfo over a build failure.
if [ -s vmlinux.decompressor.id ]; then
cp vmlinux.decompressor.id $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/vmlinux.decompressor.id
cp %{vmlinux_decompressor} $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer/vmlinux.decompressor
fi
fi
%endif
find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name "*.ko" -type f >modnames
# mark modules executable so that strip-to-file can strip them
xargs --no-run-if-empty chmod u+x < modnames
# Generate a list of modules for block and networking.
grep -F /drivers/ modnames | xargs --no-run-if-empty nm -upA |
sed -n 's,^.*/\([^/]*\.ko\): *U \(.*\)$,\1 \2,p' > drivers.undef
collect_modules_list()
{
sed -r -n -e "s/^([^ ]+) \\.?($2)\$/\\1/p" drivers.undef |
LC_ALL=C sort -u > $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.$1
if [ ! -z "$3" ]; then
sed -r -e "/^($3)\$/d" -i $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.$1
fi
}
collect_modules_list networking \
'register_netdev|ieee80211_register_hw|usbnet_probe|phy_driver_register|rt(l_|2x00)(pci|usb)_probe|register_netdevice'
collect_modules_list block \
'ata_scsi_ioctl|scsi_add_host|scsi_add_host_with_dma|blk_alloc_queue|blk_init_queue|register_mtd_blktrans|scsi_esp_register|scsi_register_device_handler|blk_queue_physical_block_size' 'pktcdvd.ko|dm-mod.ko'
collect_modules_list drm \
'drm_open|drm_init'
collect_modules_list modesetting \
'drm_crtc_init'
# detect missing or incorrect license tags
( find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name '*.ko' | xargs /sbin/modinfo -l | \
grep -E -v 'GPL( v2)?$|Dual BSD/GPL$|Dual MPL/GPL$|GPL and additional rights$' ) && exit 1
remove_depmod_files()
{
# remove files that will be auto generated by depmod at rpm -i time
pushd $RPM_BUILD_ROOT/lib/modules/$KernelVer/
# in case below list needs to be extended, remember to add a
# matching ghost entry in the files section as well
rm -f modules.{alias,alias.bin,builtin.alias.bin,builtin.bin} \
modules.{dep,dep.bin,devname,softdep,symbols,symbols.bin}
popd
}
remove_depmod_files
# Identify modules in the kernel-modules-extras package
%{SOURCE20} $RPM_BUILD_ROOT lib/modules/$KernelVer $(realpath configs/mod-extra.list)
# Identify modules in the kernel-modules-extras package
%{SOURCE20} $RPM_BUILD_ROOT lib/modules/$KernelVer %{SOURCE84} internal
%if 0%{!?fedora:1}
# Identify modules in the kernel-modules-partner package
%{SOURCE20} $RPM_BUILD_ROOT lib/modules/$KernelVer %{SOURCE85} partner
%endif
#
# Generate the kernel-core and kernel-modules files lists
#
# Copy the System.map file for depmod to use, and create a backup of the
# full module tree so we can restore it after we're done filtering
cp System.map $RPM_BUILD_ROOT/.
cp configs/filter-*.sh $RPM_BUILD_ROOT/.
pushd $RPM_BUILD_ROOT
mkdir restore
cp -r lib/modules/$KernelVer/* restore/.
# don't include anything going into kernel-modules-extra in the file lists
xargs rm -rf < mod-extra.list
# don't include anything going int kernel-modules-internal in the file lists
xargs rm -rf < mod-internal.list
%if 0%{!?fedora:1}
# don't include anything going int kernel-modules-partner in the file lists
xargs rm -rf < mod-partner.list
%endif
if [ $DoModules -eq 1 ]; then
# Find all the module files and filter them out into the core and
# modules lists. This actually removes anything going into -modules
# from the dir.
find lib/modules/$KernelVer/kernel -name *.ko | sort -n > modules.list
./filter-modules.sh modules.list %{_target_cpu}
rm filter-*.sh
# Run depmod on the resulting module tree and make sure it isn't broken
depmod -b . -aeF ./System.map $KernelVer &> depmod.out
if [ -s depmod.out ]; then
echo "Depmod failure"
cat depmod.out
exit 1
else
rm depmod.out
fi
else
# Ensure important files/directories exist to let the packaging succeed
echo '%%defattr(-,-,-)' > modules.list
echo '%%defattr(-,-,-)' > k-d.list
mkdir -p lib/modules/$KernelVer/kernel
# Add files usually created by make modules, needed to prevent errors
# thrown by depmod during package installation
touch lib/modules/$KernelVer/modules.order
touch lib/modules/$KernelVer/modules.builtin
fi
%if %{efiuki}
if [ "$Variant" != "rt" ] && [ "$Variant" != "rt-debug" ] && [ "$Variant" != "rt-64k" ] && [ "$Variant" != "rt-64k-debug" ]; then
popd
SBAT=$(cat <<- EOF
linux,1,Red Hat,linux,$KernelVer,mailto:secalert@redhat.com
linux.%{sbat_suffix},1,Red Hat,linux,$KernelVer,mailto:secalert@redhat.com
kernel-uki-virt.%{sbat_suffix},1,Red Hat,kernel-uki-virt,$KernelVer,mailto:secalert@redhat.com
EOF
)
ADDONS_SBAT=$(cat <<- EOF
sbat,1,SBAT Version,sbat,1,https://github.com/rhboot/shim/blob/main/SBAT.md
kernel-uki-virt-addons.%{sbat_suffix},1,Red Hat,kernel-uki-virt-addons,$KernelVer,mailto:secalert@redhat.com
EOF
)
KernelUnifiedImageDir="$RPM_BUILD_ROOT/lib/modules/$KernelVer"
KernelUnifiedImage="$KernelUnifiedImageDir/$InstallName-virt.efi"
mkdir -p $KernelUnifiedImageDir
dracut --conf=%{SOURCE150} \
--confdir=$(mktemp -d) \
--verbose \
--kver "$KernelVer" \
--kmoddir "$RPM_BUILD_ROOT/lib/modules/$KernelVer/" \
--logfile=$(mktemp) \
--uefi \
--sbat "$SBAT" \
--kernel-image $(realpath $KernelImage) \
--kernel-cmdline 'console=tty0 console=ttyS0' \
$KernelUnifiedImage
KernelAddonsDirOut="$KernelUnifiedImage.extra.d"
mkdir -p $KernelAddonsDirOut
python3 %{SOURCE151} %{SOURCE152} $KernelAddonsDirOut virt %{primary_target} %{_target_cpu} "$ADDONS_SBAT"
%if %{signkernel}
%if 0%{?centos}
UKI_secureboot_name=centossecureboot204
UKI_secureboot_cert=%{_datadir}/pki/sb-certs/secureboot-uki-virt-%{_arch}.cer
%else
# RHEL only builds UKI for x86
UKI_secureboot_name=redhatsecureboot504
UKI_secureboot_cert=%{SOURCE153}
%endif
%pesign -s -i $KernelUnifiedImage -o $KernelUnifiedImage.signed -a %{secureboot_ca_0} -c $UKI_secureboot_cert -n $UKI_secureboot_name
if [ ! -s $KernelUnifiedImage.signed ]; then
echo "pesigning failed"
exit 1
fi
mv $KernelUnifiedImage.signed $KernelUnifiedImage
for addon in "$KernelAddonsDirOut"/*; do
%pesign -s -i $addon -o $addon.signed -a %{secureboot_ca_0} -c $UKI_secureboot_cert -n $UKI_secureboot_name
rm -f $addon
mv $addon.signed $addon
done
mkdir -p $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer
cp -a $UKI_secureboot_cert $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/secureboot-uki-%{_arch}.cer
# signkernel
%endif
# hmac sign the UKI for FIPS
KernelUnifiedImageHMAC="$KernelUnifiedImageDir/.$InstallName-virt.efi.hmac"
echo "hmac sign the UKI for FIPS"
echo "Creating hmac file: $KernelUnifiedImageHMAC"
(cd $KernelUnifiedImageDir && sha512hmac $InstallName-virt.efi) > $KernelUnifiedImageHMAC;
pushd $RPM_BUILD_ROOT
# Variant != rt && Variant != rt-debug && Variant != rt-64k && Variant != rt-64k-debug
fi
# efiuki
%endif
remove_depmod_files
# Go back and find all of the various directories in the tree. We use this
# for the dir lists in kernel-core
find lib/modules/$KernelVer/kernel -mindepth 1 -type d | sort -n > module-dirs.list
# Cleanup
rm System.map
# Just "cp -r" can be very slow: here, it rewrites _existing files_
# with open(O_TRUNC). Many filesystems synchronously wait for metadata
# update for such file rewrites (seen in strace as final close syscall
# taking a long time). On a rotational disk, cp was observed to take
# more than 5 minutes on ext4 and more than 15 minutes (!) on xfs.
# With --remove-destination, we avoid this, and copying
# (with enough RAM to cache it) takes 5 seconds:
cp -r --remove-destination restore/* lib/modules/$KernelVer/.
rm -rf restore
popd
# Make sure the files lists start with absolute paths or rpmbuild fails.
# Also add in the dir entries
sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/k-d.list > ../kernel${Variant:+-${Variant}}-modules.list
sed -e 's/^lib*/%dir \/lib/' %{?zipsed} $RPM_BUILD_ROOT/module-dirs.list > ../kernel${Variant:+-${Variant}}-modules-core.list
sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/modules.list >> ../kernel${Variant:+-${Variant}}-modules-core.list
sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/mod-extra.list >> ../kernel${Variant:+-${Variant}}-modules-extra.list
# Cleanup
rm -f $RPM_BUILD_ROOT/k-d.list
rm -f $RPM_BUILD_ROOT/modules.list
rm -f $RPM_BUILD_ROOT/module-dirs.list
rm -f $RPM_BUILD_ROOT/mod-extra.list
rm -f $RPM_BUILD_ROOT/mod-internal.list
%if 0%{!?fedora:1}
rm -f $RPM_BUILD_ROOT/mod-partner.list
%endif
%if %{with_cross}
make -C $RPM_BUILD_ROOT/lib/modules/$KernelVer/build M=scripts clean
make -C $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/tools/bpf/resolve_btfids clean
sed -i 's/REBUILD_SCRIPTS_FOR_CROSS:=0/REBUILD_SCRIPTS_FOR_CROSS:=1/' $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Makefile
%endif
# Move the devel headers out of the root file system
mkdir -p $RPM_BUILD_ROOT/usr/src/kernels
mv $RPM_BUILD_ROOT/lib/modules/$KernelVer/build $RPM_BUILD_ROOT/$DevelDir
# This is going to create a broken link during the build, but we don't use
# it after this point. We need the link to actually point to something
# when kernel-devel is installed, and a relative link doesn't work across
# the F17 UsrMove feature.
ln -sf $DevelDir $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
%ifnarch armv7hl
# Generate vmlinux.h and put it to kernel-devel path
# zfcpdump build does not have btf anymore
if [ "$Variant" != "zfcpdump" ]; then
# Build the bootstrap bpftool to generate vmlinux.h
make -C tools/bpf/bpftool bootstrap
tools/bpf/bpftool/bootstrap/bpftool btf dump file vmlinux format c > $RPM_BUILD_ROOT/$DevelDir/vmlinux.h
fi
%endif
# prune junk from kernel-devel
find $RPM_BUILD_ROOT/usr/src/kernels -name ".*.cmd" -delete
# Red Hat UEFI Secure Boot CA cert, which can be used to authenticate the kernel
mkdir -p $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer
%if %{signkernel}
install -m 0644 %{secureboot_ca_0} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/kernel-signing-ca.cer
%ifarch s390x ppc64le
if [ -x /usr/bin/rpm-sign ]; then
install -m 0644 %{secureboot_key_0} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/%{signing_key_filename}
fi
%endif
%endif
%if 0%{?rhel}
# Red Hat IMA code-signing cert, which is used to authenticate package files
install -m 0644 %{ima_signing_cert} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/%{ima_cert_name}
%endif
%if %{signmodules}
if [ $DoModules -eq 1 ]; then
# Save the signing keys so we can sign the modules in __modsign_install_post
cp certs/signing_key.pem certs/signing_key.pem.sign${Variant:++${Variant}}
cp certs/signing_key.x509 certs/signing_key.x509.sign${Variant:++${Variant}}
%ifarch s390x ppc64le
if [ ! -x /usr/bin/rpm-sign ]; then
install -m 0644 certs/signing_key.x509.sign${Variant:++${Variant}} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/kernel-signing-ca.cer
openssl x509 -in certs/signing_key.pem.sign${Variant:++${Variant}} -outform der -out $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/%{signing_key_filename}
chmod 0644 $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/%{signing_key_filename}
fi
%endif
fi
%endif
%if %{with_gcov}
popd
%endif
}
###
# DO it...
###
# prepare directories
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT/boot
mkdir -p $RPM_BUILD_ROOT%{_libexecdir}
cd linux-%{KVERREL}
%if %{with_debug}
BuildKernel %make_target %kernel_image %{_use_vdso} debug
%if %{with_arm64_64k}
BuildKernel %make_target %kernel_image %{_use_vdso} 64k-debug
%endif
%if %{with_realtime}
BuildKernel %make_target %kernel_image %{_use_vdso} rt-debug
%endif
%if %{with_realtime_arm64_64k}
BuildKernel %make_target %kernel_image %{_use_vdso} rt-64k-debug
%endif
%endif
%if %{with_zfcpdump}
BuildKernel %make_target %kernel_image %{_use_vdso} zfcpdump
%endif
%if %{with_arm64_64k}
BuildKernel %make_target %kernel_image %{_use_vdso} 64k
%endif
%if %{with_pae}
BuildKernel %make_target %kernel_image %{use_vdso} lpae
%endif
%if %{with_realtime}
BuildKernel %make_target %kernel_image %{use_vdso} rt
%endif
%if %{with_realtime_arm64_64k}
BuildKernel %make_target %kernel_image %{_use_vdso} rt-64k
%endif
%if %{with_up}
BuildKernel %make_target %kernel_image %{_use_vdso}
%endif
%ifnarch noarch i686
%if !%{with_debug} && !%{with_zfcpdump} && !%{with_pae} && !%{with_up} && !%{with_arm64_64k} && !%{with_realtime} && !%{with_realtime_arm64_64k}
# If only building the user space tools, then initialize the build environment
# and some variables so that the various userspace tools can be built.
InitBuildVars
%endif
%endif
%ifarch aarch64
%global perf_build_extra_opts CORESIGHT=1
%endif
%global perf_make \
%{__make} %{?make_opts} EXTRA_CFLAGS="${RPM_OPT_FLAGS}" EXTRA_CXXFLAGS="${RPM_OPT_FLAGS}" LDFLAGS="%{__global_ldflags} -Wl,-E" %{?cross_opts} -C tools/perf V=1 NO_PERF_READ_VDSO32=1 NO_PERF_READ_VDSOX32=1 WERROR=0 NO_LIBUNWIND=1 NO_GTK2=1 NO_STRLCPY=1 NO_BIONIC=1 LIBTRACEEVENT_DYNAMIC=1 %{?perf_build_extra_opts} prefix=%{_prefix} PYTHON=%{__python3}
%if %{with_perf}
# perf
# make sure check-headers.sh is executable
chmod +x tools/perf/check-headers.sh
%{perf_make} DESTDIR=$RPM_BUILD_ROOT all
# libperf
make -C tools/lib/perf V=1
%endif
%global tools_make \
CFLAGS="${RPM_OPT_FLAGS}" LDFLAGS="%{__global_ldflags}" EXTRA_CFLAGS="${RPM_OPT_FLAGS}" %{make} %{?make_opts}
%ifarch %{cpupowerarchs}
# link against in-tree libcpupower for idle state support
%global rtla_make %{tools_make} LDFLAGS="%{__global_ldflags} -L../../power/cpupower" INCLUDES="-I../../power/cpupower/lib"
%else
%global rtla_make %{tools_make}
%endif
%if %{with_tools}
%ifarch %{cpupowerarchs}
# cpupower
# make sure version-gen.sh is executable.
chmod +x tools/power/cpupower/utils/version-gen.sh
%{tools_make} %{?_smp_mflags} -C tools/power/cpupower CPUFREQ_BENCH=false DEBUG=false
%ifarch x86_64
pushd tools/power/cpupower/debug/x86_64
%{tools_make} %{?_smp_mflags} centrino-decode powernow-k8-decode
popd
%endif
%ifarch x86_64
pushd tools/power/x86/x86_energy_perf_policy/
%{tools_make}
popd
pushd tools/power/x86/turbostat
%{tools_make}
popd
pushd tools/power/x86/intel-speed-select
%{tools_make}
popd
pushd tools/arch/x86/intel_sdsi
%{tools_make} CFLAGS="${RPM_OPT_FLAGS}"
popd
%endif
%endif
pushd tools/thermal/tmon/
%{tools_make}
popd
pushd tools/bootconfig/
%{tools_make}
popd
pushd tools/iio/
%{tools_make}
popd
pushd tools/gpio/
%{tools_make}
popd
# build VM tools
pushd tools/mm/
%{tools_make} CFLAGS="${RPM_OPT_FLAGS}" LDFLAGS="%{__global_ldflags}" slabinfo page_owner_sort
popd
pushd tools/verification/rv/
%{tools_make}
popd
pushd tools/tracing/rtla
%{rtla_make}
popd
%endif
if [ -f $DevelDir/vmlinux.h ]; then
RPM_VMLINUX_H=$DevelDir/vmlinux.h
fi
echo "${RPM_VMLINUX_H}" > ../vmlinux_h_path
%if %{with_selftests}
# Unfortunately, samples/bpf/Makefile expects that the headers are installed
# in the source tree. We installed them previously to $RPM_BUILD_ROOT/usr
# but there's no way to tell the Makefile to take them from there.
%{make} %{?_smp_mflags} headers_install
# If we re building only tools without kernel, we need to generate config
# headers and prepare tree for modules building. The modules_prepare target
# will cover both.
if [ ! -f include/generated/autoconf.h ]; then
%{make} %{?_smp_mflags} modules_prepare
fi
%{make} %{?_smp_mflags} ARCH=$Arch V=1 M=samples/bpf/ VMLINUX_H="${RPM_VMLINUX_H}" || true
pushd tools/testing/selftests
# We need to install here because we need to call make with ARCH set which
# doesn't seem possible to do in the install section.
%{make} %{?_smp_mflags} ARCH=$Arch V=1 TARGETS="bpf cgroup kmod mm livepatch net net/forwarding net/hsr net/mptcp net/netfilter tc-testing memfd drivers/net/bonding iommu cachestat drivers/net" SKIP_TARGETS="" FORCE_TARGETS=1 INSTALL_PATH=%{buildroot}%{_libexecdir}/kselftests VMLINUX_H="${RPM_VMLINUX_H}" DEFAULT_INSTALL_HDR_PATH=0 install
# 'make install' for bpf is broken and upstream refuses to fix it.
# Install the needed files manually.
for dir in bpf bpf/no_alu32 bpf/cpuv4 bpf/progs; do
# In ARK, the rpm build continues even if some of the selftests
# cannot be built. It's not always possible to build selftests,
# as upstream sometimes dependens on too new llvm version or has
# other issues. If something did not get built, just skip it.
test -d $dir || continue
mkdir -p %{buildroot}%{_libexecdir}/kselftests/$dir
find $dir -maxdepth 1 -type f \( -executable -o -name '*.py' -o -name settings -o \
-name 'btf_dump_test_case_*.c' -o -name '*.ko' -o \
-name '*.o' -exec sh -c 'readelf -h "{}" | grep -q "^ Machine:.*BPF"' \; \) -print0 | \
xargs -0 cp -t %{buildroot}%{_libexecdir}/kselftests/$dir || true
done
ln -sr %{buildroot}%{_libexecdir}/kselftests/bpf/bpftool %{buildroot}%{_libexecdir}/kselftests/bpf/no_alu32/bpftool
# CKI clang does not support cpuv4 so it skips this variant
ln -sr %{buildroot}%{_libexecdir}/kselftests/bpf/bpftool %{buildroot}%{_libexecdir}/kselftests/bpf/cpuv4/bpftool || echo "selftests/bpf: no cpuv4 variant"
%buildroot_save_unstripped "usr/libexec/kselftests/bpf/test_progs"
%buildroot_save_unstripped "usr/libexec/kselftests/bpf/test_progs-no_alu32"
%buildroot_save_unstripped "usr/libexec/kselftests/bpf/test_progs-cpuv4"
popd
%endif
%if %{with_doc}
# Make the HTML pages.
%{__make} PYTHON=/usr/bin/python3 htmldocs || %{doc_build_fail}
# sometimes non-world-readable files sneak into the kernel source tree
chmod -R a=rX Documentation
find Documentation -type d | xargs chmod u+w
%endif
# In the modsign case, we do 3 things. 1) We check the "variant" and hard
# code the value in the following invocations. This is somewhat sub-optimal
# but we're doing this inside of an RPM macro and it isn't as easy as it
# could be because of that. 2) We restore the .tmp_versions/ directory from
# the one we saved off in BuildKernel above. This is to make sure we're
# signing the modules we actually built/installed in that variant. 3) We
# grab the arch and invoke mod-sign.sh command to actually sign the modules.
#
# We have to do all of those things _after_ find-debuginfo runs, otherwise
# that will strip the signature off of the modules.
#
# Don't sign modules for the zfcpdump variant as it is monolithic.
%define __modsign_install_post \
if [ "%{signmodules}" -eq "1" ]; then \
if [ "%{with_pae}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign+lpae certs/signing_key.x509.sign+lpae $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+lpae/ \
fi \
if [ "%{with_realtime}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign+rt certs/signing_key.x509.sign+rt $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+rt/ \
fi \
if [ "%{with_debug}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign+debug certs/signing_key.x509.sign+debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+debug/ \
fi \
if [ "%{with_arm64_64k}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign+64k certs/signing_key.x509.sign+64k $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+64k/ \
fi \
if [ "%{with_arm64_64k}" -ne "0" ] && [ "%{with_debug}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign+64k-debug certs/signing_key.x509.sign+64k-debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+64k-debug/ \
fi \
if [ "%{with_realtime}" -ne "0" ] && [ "%{with_debug}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign+rt-debug certs/signing_key.x509.sign+rt-debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+rt-debug/ \
fi \
if [ "%{with_realtime_arm64_64k}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign+rt-64k certs/signing_key.x509.sign+rt-64k $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+rt-64k/ \
fi \
if [ "%{with_realtime_arm64_64k}" -ne "0" ] && [ "%{with_debug}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign+rt-64k-debug certs/signing_key.x509.sign+rt-64k-debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+rt-64k-debug/ \
fi \
if [ "%{with_up}" -ne "0" ]; then \
%{modsign_cmd} certs/signing_key.pem.sign certs/signing_key.x509.sign $RPM_BUILD_ROOT/lib/modules/%{KVERREL}/ \
fi \
fi \
if [ "%{zipmodules}" -eq "1" ]; then \
echo "Compressing kernel modules ..." \
find $RPM_BUILD_ROOT/lib/modules/ -type f -name '*.ko' | xargs -n 16 -P${RPM_BUILD_NCPUS} -r %compression %compression_flags; \
fi \
%{nil}
###
### Special hacks for debuginfo subpackages.
###
# This macro is used by %%install, so we must redefine it before that.
%define debug_package %{nil}
%if %{with_debuginfo}
%ifnarch noarch
%global __debug_package 1
%files -f debugfiles.list debuginfo-common-%{_target_cpu}
%endif
%endif
# We don't want to package debuginfo for self-tests and samples but
# we have to delete them to avoid an error messages about unpackaged
# files.
# Delete the debuginfo for kernel-devel files
%define __remove_unwanted_dbginfo_install_post \
if [ "%{with_selftests}" -ne "0" ]; then \
rm -rf $RPM_BUILD_ROOT/usr/lib/debug/usr/libexec/ksamples; \
rm -rf $RPM_BUILD_ROOT/usr/lib/debug/usr/libexec/kselftests; \
fi \
rm -rf $RPM_BUILD_ROOT/usr/lib/debug/usr/src; \
%{nil}
#
# Disgusting hack alert! We need to ensure we sign modules *after* all
# invocations of strip occur, which is in __debug_install_post if
# find-debuginfo.sh runs, and __os_install_post if not.
#
%define __spec_install_post \
%{?__debug_package:%{__debug_install_post}}\
%{__arch_install_post}\
%{__os_install_post}\
%{__remove_unwanted_dbginfo_install_post}\
%{__restore_unstripped_root_post}\
%{__modsign_install_post}
###
### install
###
%install
cd linux-%{KVERREL}
# re-define RPM_VMLINUX_H, because it doesn't carry over from %build
RPM_VMLINUX_H="$(cat ../vmlinux_h_path)"
%if %{with_doc}
docdir=$RPM_BUILD_ROOT%{_datadir}/doc/kernel-doc-%{specversion}-%{pkgrelease}
# copy the source over
mkdir -p $docdir
tar -h -f - --exclude=man --exclude='.*' -c Documentation | tar xf - -C $docdir
cat %{SOURCE2} | xz > $docdir/kernel.changelog.xz
chmod 0644 $docdir/kernel.changelog.xz
# with_doc
%endif
# We have to do the headers install before the tools install because the
# kernel headers_install will remove any header files in /usr/include that
# it doesn't install itself.
%if %{with_headers}
# Install kernel headers
%{__make} ARCH=%{hdrarch} INSTALL_HDR_PATH=$RPM_BUILD_ROOT/usr headers_install
find $RPM_BUILD_ROOT/usr/include \
\( -name .install -o -name .check -o \
-name ..install.cmd -o -name ..check.cmd \) -delete
%endif
%if %{with_cross_headers}
%if 0%{?fedora}
HDR_ARCH_LIST='arm arm64 powerpc s390 x86'
%else
HDR_ARCH_LIST='arm64 powerpc s390 x86'
%endif
mkdir -p $RPM_BUILD_ROOT/usr/tmp-headers
for arch in $HDR_ARCH_LIST; do
mkdir $RPM_BUILD_ROOT/usr/tmp-headers/arch-${arch}
%{__make} ARCH=${arch} INSTALL_HDR_PATH=$RPM_BUILD_ROOT/usr/tmp-headers/arch-${arch} headers_install
done
find $RPM_BUILD_ROOT/usr/tmp-headers \
\( -name .install -o -name .check -o \
-name ..install.cmd -o -name ..check.cmd \) -delete
# Copy all the architectures we care about to their respective asm directories
for arch in $HDR_ARCH_LIST ; do
mkdir -p $RPM_BUILD_ROOT/usr/${arch}-linux-gnu/include
mv $RPM_BUILD_ROOT/usr/tmp-headers/arch-${arch}/include/* $RPM_BUILD_ROOT/usr/${arch}-linux-gnu/include/
done
rm -rf $RPM_BUILD_ROOT/usr/tmp-headers
%endif
%if %{with_kernel_abi_stablelists}
# kabi directory
INSTALL_KABI_PATH=$RPM_BUILD_ROOT/lib/modules/
mkdir -p $INSTALL_KABI_PATH
# install kabi releases directories
tar xjvf %{SOURCE300} -C $INSTALL_KABI_PATH
# with_kernel_abi_stablelists
%endif
%if %{with_perf}
# perf tool binary and supporting scripts/binaries
%{perf_make} DESTDIR=$RPM_BUILD_ROOT lib=%{_lib} install-bin
# remove the 'trace' symlink.
rm -f %{buildroot}%{_bindir}/trace
# For both of the below, yes, this should be using a macro but right now
# it's hard coded and we don't actually want it anyway right now.
# Whoever wants examples can fix it up!
# remove examples
rm -rf %{buildroot}/usr/lib/perf/examples
rm -rf %{buildroot}/usr/lib/perf/include
# python-perf extension
%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-python_ext
# perf man pages (note: implicit rpm magic compresses them later)
mkdir -p %{buildroot}/%{_mandir}/man1
%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-man
# remove any tracevent files, eg. its plugins still gets built and installed,
# even if we build against system's libtracevent during perf build (by setting
# LIBTRACEEVENT_DYNAMIC=1 above in perf_make macro). Those files should already
# ship with libtraceevent package.
rm -rf %{buildroot}%{_libdir}/traceevent
# libperf
make -C tools/lib/perf DESTDIR=%{buildroot} prefix=%{_prefix} libdir=%{_libdir} V=1 install
rm -f %{buildroot}%{_libdir}/libperf.a
%endif
%if %{with_tools}
%ifarch %{cpupowerarchs}
%{make} -C tools/power/cpupower DESTDIR=$RPM_BUILD_ROOT libdir=%{_libdir} mandir=%{_mandir} CPUFREQ_BENCH=false install
rm -f %{buildroot}%{_libdir}/*.{a,la}
%find_lang cpupower
mv cpupower.lang ../
%ifarch x86_64
pushd tools/power/cpupower/debug/x86_64
install -m755 centrino-decode %{buildroot}%{_bindir}/centrino-decode
install -m755 powernow-k8-decode %{buildroot}%{_bindir}/powernow-k8-decode
popd
%endif
chmod 0755 %{buildroot}%{_libdir}/libcpupower.so*
mkdir -p %{buildroot}%{_unitdir} %{buildroot}%{_sysconfdir}/sysconfig
install -m644 %{SOURCE2000} %{buildroot}%{_unitdir}/cpupower.service
install -m644 %{SOURCE2001} %{buildroot}%{_sysconfdir}/sysconfig/cpupower
%endif
%ifarch x86_64
mkdir -p %{buildroot}%{_mandir}/man8
pushd tools/power/x86/x86_energy_perf_policy
%{tools_make} DESTDIR=%{buildroot} install
popd
pushd tools/power/x86/turbostat
%{tools_make} DESTDIR=%{buildroot} install
popd
pushd tools/power/x86/intel-speed-select
%{tools_make} DESTDIR=%{buildroot} install
popd
pushd tools/arch/x86/intel_sdsi
%{tools_make} CFLAGS="${RPM_OPT_FLAGS}" DESTDIR=%{buildroot} install
popd
%endif
pushd tools/thermal/tmon
%{tools_make} INSTALL_ROOT=%{buildroot} install
popd
pushd tools/bootconfig
%{tools_make} DESTDIR=%{buildroot} install
popd
pushd tools/iio
%{tools_make} DESTDIR=%{buildroot} install
popd
pushd tools/gpio
%{tools_make} DESTDIR=%{buildroot} install
popd
install -m644 -D %{SOURCE2002} %{buildroot}%{_sysconfdir}/logrotate.d/kvm_stat
pushd tools/kvm/kvm_stat
%{__make} INSTALL_ROOT=%{buildroot} install-tools
%{__make} INSTALL_ROOT=%{buildroot} install-man
install -m644 -D kvm_stat.service %{buildroot}%{_unitdir}/kvm_stat.service
popd
# install VM tools
pushd tools/mm/
install -m755 slabinfo %{buildroot}%{_bindir}/slabinfo
install -m755 page_owner_sort %{buildroot}%{_bindir}/page_owner_sort
popd
pushd tools/verification/rv/
%{tools_make} DESTDIR=%{buildroot} install
popd
pushd tools/tracing/rtla/
%{tools_make} DESTDIR=%{buildroot} install
rm -f %{buildroot}%{_bindir}/hwnoise
rm -f %{buildroot}%{_bindir}/osnoise
rm -f %{buildroot}%{_bindir}/timerlat
(cd %{buildroot}
ln -sf rtla ./%{_bindir}/hwnoise
ln -sf rtla ./%{_bindir}/osnoise
ln -sf rtla ./%{_bindir}/timerlat
)
popd
%endif
%if %{with_selftests}
pushd samples
install -d %{buildroot}%{_libexecdir}/ksamples
# install bpf samples
pushd bpf
install -d %{buildroot}%{_libexecdir}/ksamples/bpf
find -type f -executable -exec install -m755 {} %{buildroot}%{_libexecdir}/ksamples/bpf \;
install -m755 *.sh %{buildroot}%{_libexecdir}/ksamples/bpf
# test_lwt_bpf.sh compiles test_lwt_bpf.c when run; this works only from the
# kernel tree. Just remove it.
rm %{buildroot}%{_libexecdir}/ksamples/bpf/test_lwt_bpf.sh
install -m644 *_kern.o %{buildroot}%{_libexecdir}/ksamples/bpf || true
install -m644 tcp_bpf.readme %{buildroot}%{_libexecdir}/ksamples/bpf
popd
# install pktgen samples
pushd pktgen
install -d %{buildroot}%{_libexecdir}/ksamples/pktgen
find . -type f -executable -exec install -m755 {} %{buildroot}%{_libexecdir}/ksamples/pktgen/{} \;
find . -type f ! -executable -exec install -m644 {} %{buildroot}%{_libexecdir}/ksamples/pktgen/{} \;
popd
popd
# install mm selftests
pushd tools/testing/selftests/mm
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/mm/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/mm/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/mm/{} \;
popd
# install cgroup selftests
pushd tools/testing/selftests/cgroup
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/cgroup/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/cgroup/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/cgroup/{} \;
popd
# install drivers/net/mlxsw selftests
pushd tools/testing/selftests/drivers/net/mlxsw
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/drivers/net/mlxsw/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/drivers/net/mlxsw/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/drivers/net/mlxsw/{} \;
popd
# install drivers/net/netdevsim selftests
pushd tools/testing/selftests/drivers/net/netdevsim
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/drivers/net/netdevsim/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/drivers/net/netdevsim/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/drivers/net/netdevsim/{} \;
popd
# install drivers/net/bonding selftests
pushd tools/testing/selftests/drivers/net/bonding
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/drivers/net/bonding/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/drivers/net/bonding/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/drivers/net/bonding/{} \;
popd
# install net/forwarding selftests
pushd tools/testing/selftests/net/forwarding
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/net/forwarding/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/net/forwarding/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/net/forwarding/{} \;
popd
# install net/hsr selftests
pushd tools/testing/selftests/net/hsr
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/net/hsr/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/net/hsr/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/net/hsr/{} \;
popd
# install net/mptcp selftests
pushd tools/testing/selftests/net/mptcp
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/net/mptcp/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/net/mptcp/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/net/mptcp/{} \;
popd
# install tc-testing selftests
pushd tools/testing/selftests/tc-testing
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/tc-testing/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/tc-testing/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/tc-testing/{} \;
popd
# install livepatch selftests
pushd tools/testing/selftests/livepatch
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/livepatch/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/livepatch/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/livepatch/{} \;
popd
# install net/netfilter selftests
pushd tools/testing/selftests/net/netfilter
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/net/netfilter/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/net/netfilter/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/net/netfilter/{} \;
popd
# install memfd selftests
pushd tools/testing/selftests/memfd
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/memfd/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/memfd/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/memfd/{} \;
popd
# install iommu selftests
pushd tools/testing/selftests/iommu
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/iommu/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/iommu/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/iommu/{} \;
popd
# install cachestat selftests
pushd tools/testing/selftests/cachestat
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/cachestat/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/cachestat/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/cachestat/{} \;
popd
%endif
###
### clean
###
###
### scripts
###
%if %{with_tools}
%post -n kernel-tools
%systemd_post cpupower.service
%preun -n kernel-tools
%systemd_preun cpupower.service
%postun -n kernel-tools
%systemd_postun cpupower.service
%post -n kernel-tools-libs
/sbin/ldconfig
%postun -n kernel-tools-libs
/sbin/ldconfig
%endif
#
# This macro defines a %%post script for a kernel*-devel package.
# %%kernel_devel_post [<subpackage>]
# Note we don't run hardlink if ostree is in use, as ostree is
# a far more sophisticated hardlink implementation.
# https://github.com/projectatomic/rpm-ostree/commit/58a79056a889be8814aa51f507b2c7a4dccee526
#
# The deletion of *.hardlink-temporary files is a temporary workaround
# for this bug in the hardlink binary (fixed in util-linux 2.38):
# https://github.com/util-linux/util-linux/issues/1602
#
%define kernel_devel_post() \
%{expand:%%post %{?1:%{1}-}devel}\
if [ -f /etc/sysconfig/kernel ]\
then\
. /etc/sysconfig/kernel || exit $?\
fi\
if [ "$HARDLINK" != "no" -a -x /usr/bin/hardlink -a ! -e /run/ostree-booted ] \
then\
(cd /usr/src/kernels/%{KVERREL}%{?1:+%{1}} &&\
/usr/bin/find . -type f | while read f; do\
hardlink -c /usr/src/kernels/*%{?dist}.*/$f $f > /dev/null\
done;\
/usr/bin/find /usr/src/kernels -type f -name '*.hardlink-temporary' -delete\
)\
fi\
%if %{with_cross}\
echo "Building scripts and resolve_btfids"\
env --unset=ARCH make -C /usr/src/kernels/%{KVERREL}%{?1:+%{1}} prepare_after_cross\
%endif\
%{nil}
#
# This macro defines a %%post script for a kernel*-modules-extra package.
# It also defines a %%postun script that does the same thing.
# %%kernel_modules_extra_post [<subpackage>]
#
%define kernel_modules_extra_post() \
%{expand:%%post %{?1:%{1}-}modules-extra}\
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
%{nil}\
%{expand:%%postun %{?1:%{1}-}modules-extra}\
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
%{nil}
#
# This macro defines a %%post script for a kernel*-modules-internal package.
# It also defines a %%postun script that does the same thing.
# %%kernel_modules_internal_post [<subpackage>]
#
%define kernel_modules_internal_post() \
%{expand:%%post %{?1:%{1}-}modules-internal}\
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
%{nil}\
%{expand:%%postun %{?1:%{1}-}modules-internal}\
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
%{nil}
#
# This macro defines a %%post script for a kernel*-modules-partner package.
# It also defines a %%postun script that does the same thing.
# %%kernel_modules_partner_post [<subpackage>]
#
%define kernel_modules_partner_post() \
%{expand:%%post %{?1:%{1}-}modules-partner}\
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
%{nil}\
%{expand:%%postun %{?1:%{1}-}modules-partner}\
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
%{nil}
#
# This macro defines a %%post script for a kernel*-modules package.
# It also defines a %%postun script that does the same thing.
# %%kernel_modules_post [<subpackage>]
#
%define kernel_modules_post() \
%{expand:%%post %{?1:%{1}-}modules}\
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
if [ -f /lib/modules/%{KVERREL}%{?1:+%{1}}/vmlinuz ] &&\
[ -f /boot/initramfs-%{KVERREL}%{?1:+%{1}}.img ] &&\
[ ! -f %{_localstatedir}/lib/rpm-state/%{name}/installing_core_%{KVERREL}%{?1:+%{1}} ]; then\
mkdir -p %{_localstatedir}/lib/rpm-state/%{name}\
touch %{_localstatedir}/lib/rpm-state/%{name}/need_to_run_dracut_%{KVERREL}%{?1:+%{1}}\
fi\
%{nil}\
%{expand:%%postun %{?1:%{1}-}modules}\
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
%{nil}\
%{expand:%%posttrans %{?1:%{1}-}modules}\
if [ -f %{_localstatedir}/lib/rpm-state/%{name}/need_to_run_dracut_%{KVERREL}%{?1:+%{1}} ]; then\
rm -f %{_localstatedir}/lib/rpm-state/%{name}/need_to_run_dracut_%{KVERREL}%{?1:+%{1}}\
echo "Running: dracut -f --kver %{KVERREL}%{?1:+%{1}} /boot/initramfs-%{KVERREL}%{?1:+%{1}}.img"\
dracut -f --kver "%{KVERREL}%{?1:+%{1}}" /boot/initramfs-%{KVERREL}%{?1:+%{1}}.img || exit $?\
fi\
%{nil}
#
# This macro defines a %%post script for a kernel*-modules-core package.
# %%kernel_modules_core_post [<subpackage>]
#
%define kernel_modules_core_post() \
%{expand:%%posttrans %{?1:%{1}-}modules-core}\
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
%{nil}
# This macro defines a %%posttrans script for a kernel package.
# %%kernel_variant_posttrans [-v <subpackage>] [-u uki-suffix]
# More text can follow to go at the end of this variant's %%post.
#
%define kernel_variant_posttrans(v:u:) \
%{expand:%%posttrans %{?-v:%{-v*}-}%{!?-u*:core}%{?-u*:uki-%{-u*}}}\
%if 0%{!?fedora:1}\
if [ -x %{_sbindir}/weak-modules ]\
then\
%{_sbindir}/weak-modules --add-kernel %{KVERREL}%{?-v:+%{-v*}} || exit $?\
fi\
%endif\
rm -f %{_localstatedir}/lib/rpm-state/%{name}/installing_core_%{KVERREL}%{?-v:+%{-v*}}\
/bin/kernel-install add %{KVERREL}%{?-v:+%{-v*}} /lib/modules/%{KVERREL}%{?-v:+%{-v*}}/vmlinuz%{?-u:-%{-u*}.efi} || exit $?\
if [[ ! -e "/boot/symvers-%{KVERREL}%{?-v:+%{-v*}}.gz" ]]; then\
ln -s "/lib/modules/%{KVERREL}%{?-v:+%{-v*}}/symvers.gz" "/boot/symvers-%{KVERREL}%{?-v:+%{-v*}}.gz"\
command -v restorecon &>/dev/null && restorecon "/boot/symvers-%{KVERREL}%{?-v:+%{-v*}}.gz" \
fi\
%{nil}
#
# This macro defines a %%post script for a kernel package and its devel package.
# %%kernel_variant_post [-v <subpackage>] [-r <replace>]
# More text can follow to go at the end of this variant's %%post.
#
%define kernel_variant_post(v:r:) \
%{expand:%%kernel_devel_post %{?-v*}}\
%{expand:%%kernel_modules_post %{?-v*}}\
%{expand:%%kernel_modules_core_post %{?-v*}}\
%{expand:%%kernel_modules_extra_post %{?-v*}}\
%{expand:%%kernel_modules_internal_post %{?-v*}}\
%if 0%{!?fedora:1}\
%{expand:%%kernel_modules_partner_post %{?-v*}}\
%endif\
%{expand:%%kernel_variant_posttrans %{?-v*:-v %{-v*}}}\
%{expand:%%post %{?-v*:%{-v*}-}core}\
%{-r:\
if [ `uname -i` == "x86_64" -o `uname -i` == "i386" ] &&\
[ -f /etc/sysconfig/kernel ]; then\
/bin/sed -r -i -e 's/^DEFAULTKERNEL=%{-r*}$/DEFAULTKERNEL=kernel%{?-v:-%{-v*}}/' /etc/sysconfig/kernel || exit $?\
fi}\
mkdir -p %{_localstatedir}/lib/rpm-state/%{name}\
touch %{_localstatedir}/lib/rpm-state/%{name}/installing_core_%{KVERREL}%{?-v:+%{-v*}}\
%{nil}
#
# This macro defines a %%preun script for a kernel package.
# %%kernel_variant_preun [-v <subpackage>] -u [uki-suffix] -e
# Add kernel-install's --entry-type=type1|type2|all option (if supported) to limit removal
# to a specific boot entry type.
#
%define kernel_variant_preun(v:u:e) \
%{expand:%%preun %{?-v:%{-v*}-}%{!?-u*:core}%{?-u*:uki-%{-u*}}}\
entry_type=""\
%{-e: \
/bin/kernel-install --help|grep -q -- '--entry-type ' &&\
entry_type="--entry-type %{!?-u:type1}%{?-u:type2}" \
}\
/bin/kernel-install remove %{KVERREL}%{?-v:+%{-v*}} $entry_type || exit $?\
if [ -x %{_sbindir}/weak-modules ]\
then\
%{_sbindir}/weak-modules --remove-kernel %{KVERREL}%{?-v:+%{-v*}} || exit $?\
fi\
%{nil}
%if %{efiuki}
%kernel_variant_posttrans -u virt
%kernel_variant_preun -u virt -e
%endif
%kernel_variant_preun -e
%kernel_variant_post -r kernel-smp
%if %{with_pae}
%kernel_variant_preun -v lpae
%kernel_variant_post -v lpae -r (kernel|kernel-smp)
%endif
%if %{with_zfcpdump}
%kernel_variant_preun -v zfcpdump
%kernel_variant_post -v zfcpdump
%endif
%if %{with_arm64_64k}
%kernel_variant_preun -v 64k
%kernel_variant_post -v 64k
%endif
%if %{with_debug} && %{with_arm64_64k}
%kernel_variant_preun -v 64k-debug
%kernel_variant_post -v 64k-debug
%endif
%if %{with_realtime}
%kernel_variant_preun -v rt
%kernel_variant_post -v rt
%endif
%if %{with_debug} && %{with_realtime}
%kernel_variant_preun -v rt-debug
%kernel_variant_post -v rt-debug
%endif
%if %{with_realtime_arm64_64k}
%kernel_variant_preun -v rt-64k
%kernel_variant_post -v rt-64k
%endif
%if %{with_debug} && %{with_realtime_arm64_64k}
%kernel_variant_preun -v rt-64k-debug
%kernel_variant_post -v rt-64k-debug
%endif
%if %{with_debug}
%if %{efiuki}
%kernel_variant_posttrans -v debug -u virt
%kernel_variant_preun -v debug -u virt -e
%endif
%kernel_variant_preun -v debug -e
%kernel_variant_post -v debug
%endif
if [ -x /sbin/ldconfig ]
then
/sbin/ldconfig -X || exit $?
fi
###
### file lists
###
%if %{with_headers}
%files headers
/usr/include/*
%exclude %{_includedir}/cpufreq.h
%exclude %{_includedir}/internal/
%exclude %{_includedir}/perf/
%endif
%if %{with_cross_headers}
%files cross-headers
/usr/*-linux-gnu/include/*
%endif
%if %{with_kernel_abi_stablelists}
%files -n kernel-abi-stablelists
/lib/modules/kabi-*
%endif
%if %{with_kabidw_base}
%ifarch x86_64 s390x ppc64 ppc64le aarch64
%files kernel-kabidw-base-internal
%defattr(-,root,root)
/kabidw-base/%{_target_cpu}/*
%endif
%endif
# only some architecture builds need kernel-doc
%if %{with_doc}
%files doc
%defattr(-,root,root)
%{_datadir}/doc/kernel-doc-%{specversion}-%{pkgrelease}/Documentation/*
%dir %{_datadir}/doc/kernel-doc-%{specversion}-%{pkgrelease}/Documentation
%dir %{_datadir}/doc/kernel-doc-%{specversion}-%{pkgrelease}
%{_datadir}/doc/kernel-doc-%{specversion}-%{pkgrelease}/kernel.changelog.xz
%endif
%if %{with_perf}
%files -n perf
%{_bindir}/perf
%{_libdir}/libperf-jvmti.so
%dir %{_libexecdir}/perf-core
%{_libexecdir}/perf-core/*
%{_datadir}/perf-core/*
%{_mandir}/man[1-8]/perf*
%{_sysconfdir}/bash_completion.d/perf
%doc linux-%{KVERREL}/tools/perf/Documentation/examples.txt
%{_docdir}/perf-tip/tips.txt
%files -n python3-perf
%{python3_sitearch}/*
%files -n libperf
%{_libdir}/libperf.so.0
%{_libdir}/libperf.so.0.0.1
%files -n libperf-devel
%{_libdir}/libperf.so
%{_libdir}/pkgconfig/libperf.pc
%{_includedir}/perf/
%{_includedir}/internal/
%{_mandir}/man3/libperf.*
%{_mandir}/man7/libperf-counting.*
%{_mandir}/man7/libperf-sampling.*
%{_docdir}/libperf/
%if %{with_debuginfo}
%files -f perf-debuginfo.list -n perf-debuginfo
%files -f python3-perf-debuginfo.list -n python3-perf-debuginfo
%files -f libperf-debuginfo.list -n libperf-debuginfo
%endif
# with_perf
%endif
%if %{with_tools}
%ifnarch %{cpupowerarchs}
%files -n kernel-tools
%else
%files -n kernel-tools -f cpupower.lang
%{_bindir}/cpupower
%{_datadir}/bash-completion/completions/cpupower
%ifarch x86_64
%{_bindir}/centrino-decode
%{_bindir}/powernow-k8-decode
%endif
%{_unitdir}/cpupower.service
%{_mandir}/man[1-8]/cpupower*
%config(noreplace) %{_sysconfdir}/sysconfig/cpupower
%ifarch x86_64
%{_bindir}/x86_energy_perf_policy
%{_mandir}/man8/x86_energy_perf_policy*
%{_bindir}/turbostat
%{_mandir}/man8/turbostat*
%{_bindir}/intel-speed-select
%{_sbindir}/intel_sdsi
%endif
# cpupowerarchs
%endif
%{_bindir}/tmon
%{_bindir}/bootconfig
%{_bindir}/iio_event_monitor
%{_bindir}/iio_generic_buffer
%{_bindir}/lsiio
%{_bindir}/lsgpio
%{_bindir}/gpio-hammer
%{_bindir}/gpio-event-mon
%{_bindir}/gpio-watch
%{_mandir}/man1/kvm_stat*
%{_bindir}/kvm_stat
%{_unitdir}/kvm_stat.service
%config(noreplace) %{_sysconfdir}/logrotate.d/kvm_stat
%{_bindir}/page_owner_sort
%{_bindir}/slabinfo
%if %{with_debuginfo}
%files -f kernel-tools-debuginfo.list -n kernel-tools-debuginfo
%endif
%ifarch %{cpupowerarchs}
%files -n kernel-tools-libs
%{_libdir}/libcpupower.so.1
%{_libdir}/libcpupower.so.0.0.1
%files -n kernel-tools-libs-devel
%{_libdir}/libcpupower.so
%{_includedir}/cpufreq.h
%endif
%files -n rtla
%{_bindir}/rtla
%{_bindir}/hwnoise
%{_bindir}/osnoise
%{_bindir}/timerlat
%{_mandir}/man1/rtla-hwnoise.1.gz
%{_mandir}/man1/rtla-osnoise-hist.1.gz
%{_mandir}/man1/rtla-osnoise-top.1.gz
%{_mandir}/man1/rtla-osnoise.1.gz
%{_mandir}/man1/rtla-timerlat-hist.1.gz
%{_mandir}/man1/rtla-timerlat-top.1.gz
%{_mandir}/man1/rtla-timerlat.1.gz
%{_mandir}/man1/rtla.1.gz
%files -n rv
%{_bindir}/rv
%{_mandir}/man1/rv-list.1.gz
%{_mandir}/man1/rv-mon-wip.1.gz
%{_mandir}/man1/rv-mon-wwnr.1.gz
%{_mandir}/man1/rv-mon.1.gz
%{_mandir}/man1/rv-mon-sched.1.gz
%{_mandir}/man1/rv.1.gz
# with_tools
%endif
%if %{with_selftests}
%files selftests-internal
%{_libexecdir}/ksamples
%{_libexecdir}/kselftests
%endif
# empty meta-package
%if %{with_up}
%ifnarch %nobuildarches noarch
%files
%endif
%endif
# This is %%{image_install_path} on an arch where that includes ELF files,
# or empty otherwise.
%define elf_image_install_path %{?kernel_image_elf:%{image_install_path}}
#
# This macro defines the %%files sections for a kernel package
# and its devel and debuginfo packages.
# %%kernel_variant_files [-k vmlinux] <use_vdso> <condition> <subpackage>
#
%define kernel_variant_files(k:) \
%if %{2}\
%{expand:%%files %{?1:-f kernel-%{?3:%{3}-}ldsoconf.list} %{?3:%{3}-}core}\
%{!?_licensedir:%global license %%doc}\
%%license linux-%{KVERREL}/COPYING-%{version}-%{release}\
/lib/modules/%{KVERREL}%{?3:+%{3}}/%{?-k:%{-k*}}%{!?-k:vmlinuz}\
%ghost /%{image_install_path}/%{?-k:%{-k*}}%{!?-k:vmlinuz}-%{KVERREL}%{?3:+%{3}}\
/lib/modules/%{KVERREL}%{?3:+%{3}}/.vmlinuz.hmac \
%ghost /%{image_install_path}/.vmlinuz-%{KVERREL}%{?3:+%{3}}.hmac \
%ifarch %{arm} aarch64\
/lib/modules/%{KVERREL}%{?3:+%{3}}/dtb \
%ghost /%{image_install_path}/dtb-%{KVERREL}%{?3:+%{3}} \
%endif\
%attr(0600, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/System.map\
%ghost %attr(0600, root, root) /boot/System.map-%{KVERREL}%{?3:+%{3}}\
%dir /lib/modules\
%dir /lib/modules/%{KVERREL}%{?3:+%{3}}\
/lib/modules/%{KVERREL}%{?3:+%{3}}/symvers.gz\
/lib/modules/%{KVERREL}%{?3:+%{3}}/config\
/lib/modules/%{KVERREL}%{?3:+%{3}}/modules.builtin*\
%ghost %attr(0600, root, root) /boot/symvers-%{KVERREL}%{?3:+%{3}}.gz\
%ghost %attr(0600, root, root) /boot/initramfs-%{KVERREL}%{?3:+%{3}}.img\
%ghost %attr(0644, root, root) /boot/config-%{KVERREL}%{?3:+%{3}}\
%{expand:%%files -f kernel-%{?3:%{3}-}modules-core.list %{?3:%{3}-}modules-core}\
%dir /lib/modules\
%dir /lib/modules/%{KVERREL}%{?3:+%{3}}\
%dir /lib/modules/%{KVERREL}%{?3:+%{3}}/kernel\
/lib/modules/%{KVERREL}%{?3:+%{3}}/build\
/lib/modules/%{KVERREL}%{?3:+%{3}}/source\
/lib/modules/%{KVERREL}%{?3:+%{3}}/updates\
/lib/modules/%{KVERREL}%{?3:+%{3}}/weak-updates\
/lib/modules/%{KVERREL}%{?3:+%{3}}/systemtap\
%{_datadir}/doc/kernel-keys/%{KVERREL}%{?3:+%{3}}\
%if %{1}\
/lib/modules/%{KVERREL}%{?3:+%{3}}/vdso\
%endif\
/lib/modules/%{KVERREL}%{?3:+%{3}}/modules.block\
/lib/modules/%{KVERREL}%{?3:+%{3}}/modules.drm\
/lib/modules/%{KVERREL}%{?3:+%{3}}/modules.modesetting\
/lib/modules/%{KVERREL}%{?3:+%{3}}/modules.networking\
/lib/modules/%{KVERREL}%{?3:+%{3}}/modules.order\
%ghost %attr(0644, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/modules.alias\
%ghost %attr(0644, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/modules.alias.bin\
%ghost %attr(0644, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/modules.builtin.alias.bin\
%ghost %attr(0644, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/modules.builtin.bin\
%ghost %attr(0644, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/modules.dep\
%ghost %attr(0644, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/modules.dep.bin\
%ghost %attr(0644, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/modules.devname\
%ghost %attr(0644, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/modules.softdep\
%ghost %attr(0644, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/modules.symbols\
%ghost %attr(0644, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/modules.symbols.bin\
%{expand:%%files -f kernel-%{?3:%{3}-}modules.list %{?3:%{3}-}modules}\
%{expand:%%files %{?3:%{3}-}devel}\
%defverify(not mtime)\
/usr/src/kernels/%{KVERREL}%{?3:+%{3}}\
%{expand:%%files %{?3:%{3}-}devel-matched}\
%{expand:%%files -f kernel-%{?3:%{3}-}modules-extra.list %{?3:%{3}-}modules-extra}\
%config(noreplace) /etc/modprobe.d/*-blacklist.conf\
%{expand:%%files %{?3:%{3}-}modules-internal}\
/lib/modules/%{KVERREL}%{?3:+%{3}}/internal\
%if 0%{!?fedora:1}\
%{expand:%%files %{?3:%{3}-}modules-partner}\
/lib/modules/%{KVERREL}%{?3:+%{3}}/partner\
%endif\
%if %{with_debuginfo}\
%ifnarch noarch\
%{expand:%%files -f debuginfo%{?3}.list %{?3:%{3}-}debuginfo}\
%endif\
%endif\
%if %{efiuki}\
%if "%{3}" != "rt" && "%{3}" != "rt-debug" && "%{3}" != "rt-64k" && "%{3}" != "rt-64k-debug"\
%{expand:%%files %{?3:%{3}-}uki-virt}\
%dir /lib/modules\
%dir /lib/modules/%{KVERREL}%{?3:+%{3}}\
%attr(0600, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/System.map\
/lib/modules/%{KVERREL}%{?3:+%{3}}/symvers.gz\
/lib/modules/%{KVERREL}%{?3:+%{3}}/config\
/lib/modules/%{KVERREL}%{?3:+%{3}}/modules.builtin*\
%attr(0644, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/%{?-k:%{-k*}}%{!?-k:vmlinuz}-virt.efi\
%attr(0644, root, root) /lib/modules/%{KVERREL}%{?3:+%{3}}/.%{?-k:%{-k*}}%{!?-k:vmlinuz}-virt.efi.hmac\
%ghost /%{image_install_path}/efi/EFI/Linux/%{?-k:%{-k*}}%{!?-k:*}-%{KVERREL}%{?3:+%{3}}.efi\
%{expand:%%files %{?3:%{3}-}uki-virt-addons}\
/lib/modules/%{KVERREL}%{?3:+%{3}}/%{?-k:%{-k*}}%{!?-k:vmlinuz}-virt.efi.extra.d/ \
/lib/modules/%{KVERREL}%{?3:+%{3}}/%{?-k:%{-k*}}%{!?-k:vmlinuz}-virt.efi.extra.d/*.addon.efi\
%endif\
%endif\
%if %{?3:1} %{!?3:0}\
%{expand:%%files %{3}}\
%endif\
%if %{with_gcov}\
%ifnarch %nobuildarches noarch\
%{expand:%%files -f kernel-%{?3:%{3}-}gcov.list %{?3:%{3}-}gcov}\
%endif\
%endif\
%endif\
%{nil}
%kernel_variant_files %{_use_vdso} %{with_up}
%kernel_variant_files %{_use_vdso} %{with_debug} debug
%if %{with_arm64_64k}
%kernel_variant_files %{_use_vdso} %{with_debug} 64k-debug
%endif
%kernel_variant_files %{_use_vdso} %{with_realtime} rt
%if %{with_realtime}
%kernel_variant_files %{_use_vdso} %{with_debug} rt-debug
%endif
%if %{with_realtime_arm64_64k}
%kernel_variant_files %{_use_vdso} %{with_debug} rt-64k-debug
%endif
%if %{with_debug_meta}
%files debug
%files debug-core
%files debug-devel
%files debug-devel-matched
%files debug-modules
%files debug-modules-core
%files debug-modules-extra
%if %{with_arm64_64k}
%files 64k-debug
%files 64k-debug-core
%files 64k-debug-devel
%files 64k-debug-devel-matched
%files 64k-debug-modules
%files 64k-debug-modules-extra
%endif
%endif
%kernel_variant_files %{use_vdso} %{with_pae} lpae
%kernel_variant_files %{_use_vdso} %{with_zfcpdump} zfcpdump
%kernel_variant_files %{_use_vdso} %{with_arm64_64k} 64k
%kernel_variant_files %{_use_vdso} %{with_realtime_arm64_64k} rt-64k
# plz don't put in a version string unless you're going to tag
# and build.
#
#
%changelog
* Mon Apr 13 2026 CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> [5.14.0-693.el9]
- x86/msr: Rename 'wrmsrl_on_cpu()' to 'wrmsrq_on_cpu()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'rdmsrl_on_cpu()' to 'rdmsrq_on_cpu()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'wrmsrl_safe_on_cpu()' to 'wrmsrq_safe_on_cpu()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'rdmsrl_safe_on_cpu()' to 'rdmsrq_safe_on_cpu()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'wrmsrl_safe()' to 'wrmsrq_safe()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'rdmsrl_safe()' to 'rdmsrq_safe()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'wrmsrl()' to 'wrmsrq()' [partial] (David Arcari) [RHEL-128565]
- x86/msr: Rename 'rdmsrl()' to 'rdmsrq()' [partial] (David Arcari) [RHEL-128565]
- platform/x86: intel-hid: disable wakeup_mode during hibernation (David Arcari) [RHEL-128565]
- platform/x86: intel-hid: Enable 5-button array on ThinkPad X1 Fold 16 Gen 1 (David Arcari) [RHEL-128565]
- platform/x86: intel-hid: Add Dell 16 Plus 2-in-1 to dmi_vgbs_allow_list (David Arcari) [RHEL-128565]
- platform/x86: intel-hid: Add Dell 14 Plus 2-in-1 to dmi_vgbs_allow_list (David Arcari) [RHEL-128565]
- platform/x86/intel/hid: Add Dell Pro Rugged 10/12 tablet to VGBS DMI quirks (David Arcari) [RHEL-128565]
- platform/x86: int0002: Remove IRQF_ONESHOT from request_irq() (David Arcari) [RHEL-128565]
- platform/x86/intel/tpmi/plr: Make the file domain<n>/status writeable (David Arcari) [RHEL-128565]
- platform/x86: intel_telemetry: Fix PSS event register mask (David Arcari) [RHEL-128565]
- platform/x86: intel_telemetry: Fix swapped arrays in PSS output (David Arcari) [RHEL-128565]
- platform/x86/intel/vsec: Add Nova Lake PUNIT support (David Arcari) [RHEL-128565]
- platform/x86/intel/pmc: Remove double empty line (David Arcari) [RHEL-128565]
- platform/x86/intel/pmc: Enable substate residencies for multiple PMCs (David Arcari) [RHEL-128565]
- platform/x86/intel/pmc: Move LPM mode attributes to PMC (David Arcari) [RHEL-128565]
- platform/x86/intel/pmc: Change LPM mode fields to u8 (David Arcari) [RHEL-128565]
- platform/x86/intel/uncore-freq: Replace sprintf() with sysfs_emit() (David Arcari) [RHEL-128565]
- platform/x86/intel/uncore-freq: Replace sprintf() with scnprintf() (David Arcari) [RHEL-128565]
- platform/x86/intel/pmt/discovery: use valid device pointer in dev_err_probe (David Arcari) [RHEL-128565]
- platform/x86/intel/pmt: Fix kobject memory leak on init failure (David Arcari) [RHEL-128565]
- platform/x86: intel/pmt: Replace sprintf() with sysfs_emit() (David Arcari) [RHEL-128565]
- platform/x86: intel: punit_ipc: fix memory corruption (David Arcari) [RHEL-128565]
- New configs in drivers/platform (David Arcari) [RHEL-128565]
- platform/x86/intel: Introduce Intel Elkhart Lake PSE I/O (David Arcari) [RHEL-128565]
- platform/x86/intel/speed_select_if: Convert PCIBIOS_* return codes to errnos (David Arcari) [RHEL-128565]
- platform/x86/intel/hid: Add Nova Lake support (David Arcari) [RHEL-128565]
- gfs2: Clean up SDF_JOURNAL_LIVE flag handling (Andreas Gruenbacher) [RHEL-65700]
- gfs2: No longer thaw filesystems during a withdraw (Andreas Gruenbacher) [RHEL-65700]
- gfs2: gfs2_freeze_unlock cleanup (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Refcounting fix in gfs2_thaw_super (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Minor gfs2_{freeze,thaw}_super cleanup (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Withdraw immediately in gfs2_trans_add_meta (Andreas Gruenbacher) [RHEL-65700]
- gfs2: New gfs2_withdraw_helper (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Clean up properly during a withdraw (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Rename gfs2_{gl_dq_holders => withdraw_glocks} (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: fix infinite loop when checking ail item count before go_inval" (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Allow some glocks to be used during withdraw" (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Check for log write errors before telling dlm to unlock" (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: fix a deadlock on withdraw-during-mount" (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Force withdraw to replay journals and wait for it to finish" (6/6) (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Force withdraw to replay journals and wait for it to finish" (5/6) (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Force withdraw to replay journals and wait for it to finish" (4/6) (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Force withdraw to replay journals and wait for it to finish" (3/6) (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Force withdraw to replay journals and wait for it to finish" (2/6) (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: Force withdraw to replay journals and wait for it to finish" (1/6) (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Follow-up to flag rename in sysfs status file (Andreas Gruenbacher) [RHEL-65700]
- Revert "gfs2: don't stop reads while withdraw in progress" (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Rename LM_FLAG_{NOEXP -> RECOVER} (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Kill gfs2_io_error_bh_wd (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Withdraw immediately on log write errors (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Rename gfs2_{withdrawing_or_ => }withdrawn (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Fix freeze consistency check in log_write_header (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Get rid of delayed withdraws (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Fix usage of bio->bi_status in gfs2_end_log_write (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Asynchronous withdraw (Andreas Gruenbacher) [RHEL-65700]
- gfs2: Add clean argument to lm_unmount hook (Andreas Gruenbacher) [RHEL-65700]
* Thu Apr 09 2026 CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> [5.14.0-692.el9]
- l2tp: avoid one data-race in l2tp_tunnel_del_work() (Guillaume Nault) [RHEL-152697]
- l2tp: reset skb control buffer on xmit (Guillaume Nault) [RHEL-152697]
- gpu: host1x: Add MLOCK recovery for rest of engines (Anusha Srivatsa) [RHEL-158926]
- PCI/IOV: Allow drivers to control VF BAR size (Anusha Srivatsa) [RHEL-158926]
- PCI/IOV: Check that VF BAR fits within the reservation (Anusha Srivatsa) [RHEL-158926]
- PCI/IOV: Allow IOV resources to be resized in pci_resize_resource() (Anusha Srivatsa) [RHEL-158926]
- PCI/IOV: Add pci_resource_num_to_vf_bar() to convert VF BAR number to/from IOV resource (Anusha Srivatsa) [RHEL-158926]
- PCI/IOV: Restore VF resizable BAR state after reset (Anusha Srivatsa) [RHEL-158926]
- PCI: Cache offset of Resizable BAR capability (Anusha Srivatsa) [RHEL-158926]
- workqueue: Add system_percpu_wq and system_dfl_wq (Anusha Srivatsa) [RHEL-158926]
- gpio: tegra186: Support multi-socket devices (Charles Mirabile) [RHEL-151652]
- gpio: tegra186: Simplify GPIO line name prefix handling (Charles Mirabile) [RHEL-151652]
- redhat/configs: Enable additional RV monitors on debug kernels (Gabriele Monaco) [RHEL-116707]
- redhat/configs: Enable sched and rtapp RV monitors (Gabriele Monaco) [RHEL-116707]
- rv: Replace non-existing rt_or_dl_task() in ltl monitors (Gabriele Monaco) [RHEL-116707]
- rv: Fix wrong arguments to __assign_str() in tracepoints (Gabriele Monaco) [RHEL-116707]
- perf test: Ensure lock contention using pipe mode (Michael Petlan) [RHEL-141682]
- perf sched timehist: decode process names of processes in zombie state (Anubhav Shelat) [RHEL-33442]
* Mon Apr 06 2026 CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> [5.14.0-691.el9]
- kabi: enable check-kabi (Čestmír Kalina) [RHEL-153672]
- kabi: add symbols to stablelist (Čestmír Kalina) [RHEL-153672]
- RDMA/umad: Reject negative data_len in ib_umad_write (CKI Backport Bot) [RHEL-156878] {CVE-2026-23243}
- net/mlx5: Fix ECVF vports unload on shutdown flow (CKI Backport Bot) [RHEL-154538] {CVE-2025-38109}
- iavf: fix PTP use-after-free during reset (Petr Oros) [RHEL-112567]
- mm/damon/sysfs: cleanup attrs subdirs on context dir setup failure (Audra Mitchell) [RHEL-150478] {CVE-2026-23144}
- ixgbevf: add missing negotiate_features op to Hyper-V ops table (CKI Backport Bot) [RHEL-155365]
- libceph: adapt ceph_x_challenge_blob hashing and msgr1 message signing (Ilya Dryomov) [RHEL-155611]
- libceph: add support for CEPH_CRYPTO_AES256KRB5 (Ilya Dryomov) [RHEL-155611]
- libceph: introduce ceph_crypto_key_prepare() (Ilya Dryomov) [RHEL-155611]
- libceph: generalize ceph_x_encrypt_offset() and ceph_x_encrypt_buflen() (Ilya Dryomov) [RHEL-155611]
- libceph: define and enforce CEPH_MAX_KEY_LEN (Ilya Dryomov) [RHEL-155611]
- libceph: Remove unused ceph_crypto_key_encode (Ilya Dryomov) [RHEL-155611]
- redhat/configs: disable CONFIG_CRYPTO_KRB5_SELFTESTS (Ilya Dryomov) [RHEL-155611]
- redhat/configs: enable CONFIG_CRYPTO_KRB5[ENC] (Ilya Dryomov) [RHEL-155611]
- crypto: krb5 - Fix memory leak in krb5_test_one_prf() (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Fix change to use SG miter to use offset (Ilya Dryomov) [RHEL-155611]
- crypto: krb5 - Use SG miter instead of doing it by hand (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Implement crypto self-testing (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Implement the Camellia enctypes from rfc6803 (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Implement the AES enctypes from rfc8009 (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Implement the AES enctypes from rfc3962 (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Implement the Kerberos5 rfc3961 get_mic and verify_mic (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Implement the Kerberos5 rfc3961 encrypt and decrypt functions (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Provide RFC3961 setkey packaging functions (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Implement the Kerberos5 rfc3961 key derivation (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Provide infrastructure and key derivation (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Add an API to perform requests (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Add an API to alloc and prepare a crypto object (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Add an API to query the layout of the crypto section (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Implement Kerberos crypto core (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Add some constants out of sunrpc headers (Ilya Dryomov) [RHEL-155611]
- crypto/krb5: Test manager data (Ilya Dryomov) [RHEL-155611]
- crypto: Add 'krb5enc' hash and cipher AEAD algorithm (Ilya Dryomov) [RHEL-155611]
- ice: Fix PTP NULL pointer dereference during VSI rebuild (CKI Backport Bot) [RHEL-150246] {CVE-2026-23210}
- smb: client: fix oops due to uninitialised var in smb2_unlink() (Paulo Alcantara) [RHEL-154396]
- wifi: mac80211_hwsim: fix typo in frequency notification (CKI Backport Bot) [RHEL-148653] {CVE-2026-23040}
- gfs2: bufdata allocation race (Andreas Gruenbacher) [RHEL-159333]
- gfs2: Remove trans_drain code duplication (Andreas Gruenbacher) [RHEL-159333]
- gfs2: Move gfs2_remove_from_journal to log.c (Andreas Gruenbacher) [RHEL-159333]
- gfs2: Get rid of gfs2_log_[un]lock helpers (Andreas Gruenbacher) [RHEL-159333]
- smb: client: fix krb5 mount with username option (Paulo Alcantara) [RHEL-156455]
- ALSA: update RHEL kconfigs for 6.19 upstream code (Jaroslav Kysela) [RHEL-152847]
- firmware: cs_dsp: Fix fragmentation regression in firmware download (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt1011: Use component to get the dapm context in spk_mode_put (Jaroslav Kysela) [RHEL-152847]
- ASoC: skylake: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- Revert "ALSA: usb: Increase volume range that triggers a warning" (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add allocation failure check for Entity name (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda: cs35l56: Remove unnecessary struct cs_dsp_client_ops (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl_xcvr: Revert fix missing lock in fsl_xcvr_mode_put() (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: Enable headset mic for Acer Nitro 5 (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs4271: Fix resource leak in cs4271_soc_resume() (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl_xcvr: fix missing lock in fsl_xcvr_mode_put() (Jaroslav Kysela) [RHEL-152847]
- ASoC: amd: fix memory leak in acp3x pdm dma ops (Jaroslav Kysela) [RHEL-152847] {CVE-2026-23190}
- ALSA: usb-audio: fix broken logic in snd_audigy2nx_led_update() (Jaroslav Kysela) [RHEL-152847]
- ASoC: rt1320: fix intermittent no-sound issue (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: Intel: use hdev->info.link_mask directly (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6asm: drop DSP responses for closed data streams (Jaroslav Kysela) [RHEL-152847]
- ASoC: amd: yc: Add quirk for HP 200 G2a 16 (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs42l43: Correct handling of 3-pole jack load detection (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: sof_es8336: Add DMI quirk for Huawei BOD-WXX9 (Jaroslav Kysela) [RHEL-152847]
- ASoC: sof_sdw: Add a quirk for Lenovo laptop using sidecar amps with cs42l43 (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: sof_es8336: fix headphone GPIO logic inversion (Jaroslav Kysela) [RHEL-152847]
- ASoC: amd: yc: Add DMI quirk for Acer TravelMate P216-41-TCO (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc-acpi-intel-ptl-match: fix name_prefix of rt1320-2 (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: Add quirk for Inspur S14-G1 (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: fix right sounds and mute/micmute LEDs for HP machine (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: Really fix headset mic for TongFang X6AR55xU. (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek - fixed speaker no sound (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: ALC269 fixup for Lenovo Yoga Book 9i 13IRU8 audio (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: Add quirk for Samsung 730QED to fix headphone (Jaroslav Kysela) [RHEL-152847]
- ALSA: usb-audio: Use the right limit for PCM OOB check (Jaroslav Kysela) [RHEL-152847]
- ASoC: amd: yc: Add ASUS ExpertBook PM1503CDA to quirks list (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl: imx-card: Do not force slot width to sample width (Jaroslav Kysela) [RHEL-152847]
- ALSA: usb-audio: Fix use-after-free in snd_usb_mixer_free() (Jaroslav Kysela) [RHEL-152847] {CVE-2026-23089}
- ALSA: hda/realtek: Fix headset mic for TongFang X6AR55xU (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs35l45: Corrects ASP_TX5 DAPM widget channel (Jaroslav Kysela) [RHEL-152847]
- ALSA: ctxfi: Fix potential OOB access in audio mixer handling (Jaroslav Kysela) [RHEL-152847] {CVE-2026-23076}
- ALSA: usb-audio: Add delay quirk for MOONDROP Moonriver2 Ti (Jaroslav Kysela) [RHEL-152847]
- ALSA: scarlett2: Fix buffer overflow in config retrieval (Jaroslav Kysela) [RHEL-152847] {CVE-2026-23078}
- ALSA: usb: Increase volume range that triggers a warning (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/tas2781: Add newly-released HP laptop (Jaroslav Kysela) [RHEL-152847]
- ASoC: rt5640: Fix duplicate clock properties in DT binding (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: Add quirk for HP Pavilion x360 to enable mute LED (Jaroslav Kysela) [RHEL-152847]
- ASoC: tlv320adcx140: fix word length (Jaroslav Kysela) [RHEL-152847]
- ASoC: tlv320adcx140: Propagate error codes during probe (Jaroslav Kysela) [RHEL-152847]
- ASoC: tlv320adcx140: fix null pointer (Jaroslav Kysela) [RHEL-152847] {CVE-2026-23006}
- ASoC: tlv320adcx140: invert DRE_ENABLE (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: cs42l43: Enable Headphone pin for LINEOUT jack type (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: Call init callbacks on the correct codec DAI (Jaroslav Kysela) [RHEL-152847]
- soundwire: Add missing EXPORT for sdw_slave_type (Jaroslav Kysela) [RHEL-152847]
- ALSA: usb-audio: Prevent excessive number of frames (Jaroslav Kysela) [RHEL-152847] {CVE-2026-23208}
- ALSA: hda/cirrus_scodec_test: Fix test suite name (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/cirrus_scodec_test: Fix incorrect setup of gpiochip (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: Add quirk for Asus Zephyrus G14 2025 using CS35L56, fix speakers (Jaroslav Kysela) [RHEL-152847]
- ASoC: amd: yc: Fix microphone on ASUS M6500RE (Jaroslav Kysela) [RHEL-152847]
- soundwire: bus: fix off-by-one when allocating slave IDs (Jaroslav Kysela) [RHEL-152847]
- ASoC: tegra: Revert fix for uninitialized flat cache warning in tegra210_ahub (Jaroslav Kysela) [RHEL-152847]
- ASoC: dt-bindings: rockchip-spdif: Allow "port" node (Jaroslav Kysela) [RHEL-152847]
- ASoC: dt-bindings: realtek,rt5640: Document port node (Jaroslav Kysela) [RHEL-152847]
- ASoC: dt-bindings: realtek,rt5640: Update jack-detect (Jaroslav Kysela) [RHEL-152847]
- ASoC: dt-bindings: realtek,rt5640: Document mclk (Jaroslav Kysela) [RHEL-152847]
- ASoC: davinci-evm: Fix reference leak in davinci_evm_probe (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/tas2781: Skip UEFI calibration on ASUS ROG Xbox Ally X (Jaroslav Kysela) [RHEL-152847]
- ALSA: pcm: Improve the fix for race of buffer access at PCM OSS layer (Jaroslav Kysela) [RHEL-152847]
- ASoC: ops: fix pointer types to be big-endian (Jaroslav Kysela) [RHEL-152847]
- regmap: maple: free entry on mas_store_gfp() failure (Jaroslav Kysela) [RHEL-152847]
- ASoC: simple-card-utils: Check device node before overwrite direction (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wsa883x: suppress variant printk (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wsa884x: fix codec initialisation (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wsa881x: fix unnecessary initialisation (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wsa883x: fix unnecessary initialisation (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: add HP Laptop 15s-eq1xxx mute LED quirk (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: Add quirk for Acer Nitro AN517-55 (Jaroslav Kysela) [RHEL-152847]
- ALSA: ac97: fix a double free in snd_ac97_controller_register() (Jaroslav Kysela) [RHEL-152847] {CVE-2025-71192}
- ASoC: sun4i-spdif: Add missing kerneldoc fields for sun4i_spdif_quirks (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc_sdw_utils: drop bogus container_of() error handling (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd937x: drop bogus container_of() error handling (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: Intel: add -bt tplg suffix if BT is present (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: sof_sdw: shift SSP BT mask bits. (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: fix PCI SSID for one of the HP 200 G2i laptop (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: soc-acpi-intel-mtl-match: Add 6 amp CS35L63 with feedback (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: soc-acpi-intel-mtl-match: Add 6 amp CS35L56 with feedback (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl-asoc-card: Use of_property_present() for non-boolean properties (Jaroslav Kysela) [RHEL-152847]
- ASoC: rt1320: update VC blind write settings (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl_sai: Add missing registers to cache default (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl_xcvr: provide regmap names (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl_asrc_dma: fix duplicate debugfs directory error (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl_easrc: fix duplicate debugfs directory error (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: Add support for HP Clipper Laptop (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: Add support for HP Trekker Laptop (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: soc-acpi-intel-nvl-match: Drop rt722 l3 from the match table (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc-acpi / SOF: Add best_effort flag to get_function_tplg_files op (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: Intel: pci-mtl: Change the topology path to intel/sof-ipc4-tplg (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: ipc4-topology: set playback channel mask (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: topology: Add context when sink or source widget is missing (Jaroslav Kysela) [RHEL-152847]
- ALSA: vxpocket: Fix resource leak in vxpocket_probe error path (Jaroslav Kysela) [RHEL-152847]
- firmware: cs_dsp: Don't use __free() in cs_dsp_load() and cs_dsp_load_coeff() (Jaroslav Kysela) [RHEL-152847]
- firmware: cs_dsp: Remove __free() from cs_dsp_debugfs_string_read() (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: audioreach: Fix confusing cleanup.h syntax (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6afe: Fix confusing cleanup.h syntax (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6apm: Fix confusing cleanup.h syntax (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6asm: Fix confusing cleanup.h syntax (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6prm: Fix confusing cleanup.h syntax (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: subtract the endpoint that is not present (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: sdm845: set quaternary MI2S codec DAI to I2S format (Jaroslav Kysela) [RHEL-152847]
- ASoC: amd: yc: Add quirk for Honor MagicBook X16 2025 (Jaroslav Kysela) [RHEL-152847]
- ASoC: tegra: Fix uninitialized flat cache warning in tegra210_ahub (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: enable woofer speakers on Medion NM14LNL (Jaroslav Kysela) [RHEL-152847]
- ALSA: usb-audio: Reorder USB mode selection quirk (Jaroslav Kysela) [RHEL-152847]
- ALSA: usb-audio: Update for native DSD support quirks (Jaroslav Kysela) [RHEL-152847]
- ALSA: usb-audio: Do not expose PCM and DSD on same altsetting unless DoP (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda: Remove unnecessary print function dev_err() (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/tas2781: Add new quirk for HP new project (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda: cix-ipbloq: Use modern PM ops (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda: intel-dsp-config: Prefer legacy driver as fallback (Jaroslav Kysela) [RHEL-152847]
- soundwire: intel_ace2x: handle multi BPT sections (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs35l56: Fix incorrect select SND_SOC_CS35L56_CAL_SYSFS_COMMON (Jaroslav Kysela) [RHEL-152847]
- soundwire: pass sdw_bpt_section to cdns BPT helpers (Jaroslav Kysela) [RHEL-152847]
- soundwire: introduce BPT section (Jaroslav Kysela) [RHEL-152847]
- soundwire: qcom: adding support for v3.1.0 (Jaroslav Kysela) [RHEL-152847]
- soundwire: qcom: remove unused rd_fifo_depth (Jaroslav Kysela) [RHEL-152847]
- soundwire: qcom: deprecate qcom,din/out-ports (Jaroslav Kysela) [RHEL-152847]
- soundwire: qcom: prepare for v3.x (Jaroslav Kysela) [RHEL-152847]
- soundwire: cadence_master: make frame index trace more readable (Jaroslav Kysela) [RHEL-152847]
- soundwire: only compute BPT stream in sdw_compute_dp0_port_params (Jaroslav Kysela) [RHEL-152847]
- soundwire: cadence_master: set data_per_frame as frame capability (Jaroslav Kysela) [RHEL-152847]
- soundwire: cadence: export sdw_cdns_bpt_find_bandwidth (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: Intel: export hda_sdw_bpt_get_buf_size_aligment (Jaroslav Kysela) [RHEL-152847]
- soundwire: intel_ace2x: add fake frame to BRA read command (Jaroslav Kysela) [RHEL-152847]
- soundwire: cadence_master: add fake_size parameter to sdw_cdns_prepare_read_dma_buffer (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda: dt-bindings: add CIX IPBLOQ HDA controller support (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/core: add addr_offset field for bus address translation (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda: add CIX IPBLOQ HDA controller support (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: Add support for ASUS UM3406GA (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: Add support for HP Turbine Laptops (Jaroslav Kysela) [RHEL-152847]
- ALSA: usb-audio: Initialize status1 to fix uninitialized symbol errors (Jaroslav Kysela) [RHEL-152847]
- ASoC: cros_ec_codec: Remove unnecessary selection of CRYPTO (Jaroslav Kysela) [RHEL-152847]
- ASoc: qcom: q6afe: fix bad guard conversion (Jaroslav Kysela) [RHEL-152847]
- ASoC: rockchip: Fix Wvoid-pointer-to-enum-cast warning (again) (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: Add PCI SSIDs to HP ProBook quirks (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs-amp-lib: Revert use of __free(kfree) back to normal C cleanup (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd939x: fix OF node leaks on probe failure (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd938x: fix OF node leaks on probe failure (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd937x: fix OF node leaks on probe failure (Jaroslav Kysela) [RHEL-152847]
- ALSA: usb-audio: Simplify with usb_endpoint_max_periodic_payload() (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/realtek: fix mute/micmute LEDs don't work for more HP laptops (Jaroslav Kysela) [RHEL-152847]
- ALSA: rawmidi: Fix inconsistent indenting warning reported by smatch (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: Modify awinic amplifier dsp read and write functions (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs35l56: Log a message if firmware is missing (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Fixup some more Kconfig issues (Jaroslav Kysela) [RHEL-152847]
- ASoC: nau8325: Delete a stray tab (Jaroslav Kysela) [RHEL-152847]
- firmware: cs_dsp: Don't require client to provide a struct cs_dsp_client_ops (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl_micfil: Set channel range control (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl_micfil: Add default quality for different platforms (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: sof_sdw: Add codec_info for cs42l45 (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: Add cs42l45 support functions (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: sof_sdw: Add ability to have auxiliary devices (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: Move codec_name to dai info (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: Add codec_conf for every DAI (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Align mute controls to ALSA expectations (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add terminal type into input/output widget name (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs-amp-lib: Use __free(kfree) instead of manual freeing (Jaroslav Kysela) [RHEL-152847]
- firmware: cs_dsp: Use kvzalloc() to allocate control caches (Jaroslav Kysela) [RHEL-152847]
- firmware: cs_dsp: Take pwr_lock around reading controls debugfs (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: catpt: Do not block the system from suspending (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: catpt: Do not ignore errors on runtime resume (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: catpt: Fix probing order of driver components (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: catpt: Switch to resource_xxx() API (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: catpt: Fix offset checks (Jaroslav Kysela) [RHEL-152847]
- firmware: cs_dsp: Remove redundant download buffer allocator (Jaroslav Kysela) [RHEL-152847]
- ASoC: tegra: remove Kconfig dependency on TEGRA20_APB_DMA (Jaroslav Kysela) [RHEL-152847]
- ALSA: usb-audio: Implement jack detection for HP Thunderbolt Dock G2 (Jaroslav Kysela) [RHEL-152847]
- ALSA: usb-audio: Modularize realtek_add_jack in mixer_quirks (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl_xcvr: use dev_err_probe() replacing dev_err() + return (Jaroslav Kysela) [RHEL-152847]
- ASoC: stm32: sai: fix clk prepare imbalance on probe failure (Jaroslav Kysela) [RHEL-152847]
- ASoC: stm32: sai: fix device leak on probe (Jaroslav Kysela) [RHEL-152847]
- ALSA: ctxfi: Add support for Onkyo SE-300PCIE (OK0010) (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Fix NULL vs IS_ERR() bug in sdca_dev_register_functions() (Jaroslav Kysela) [RHEL-152847]
- ALSA: ctxfi: Add support for dedicated RCA switching (Jaroslav Kysela) [RHEL-152847]
- ALSA: ctxfi: Add ADC helper functions for GPIO (Jaroslav Kysela) [RHEL-152847]
- ALSA: ctxfi: Refactor resource alloc for sparse mappings (Jaroslav Kysela) [RHEL-152847]
- ALSA: ctxfi: Use explicit output flag for DAIO resources (Jaroslav Kysela) [RHEL-152847]
- ALSA: ctxfi: Add hw parameter to daio_mgr_dao_init() (Jaroslav Kysela) [RHEL-152847]
- ALSA: usb-audio: Fix max bytes-per-interval calculation (Jaroslav Kysela) [RHEL-152847]
- ALSA: usb-audio: #undef field_{get,prep}() before local definition (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs-amp-lib: Remove redundant calls to kunit_deactivate_static_stub() (Jaroslav Kysela) [RHEL-152847]
- firmware: cs_dsp: Store control length as 32-bit (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: avs: Replace snprintf() with scnprintf() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd934x: add explicit soundwire depenency (Jaroslav Kysela) [RHEL-152847]
- ALSA: pcm: Harden the spk_alloc assumption check (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add basic SDCA function driver (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add basic SDCA class driver (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: add function devices (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add helper to write initialization writes (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Populate regmap cache for readable Controls (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Factor out helper to process Control defaults (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Use helper macros for control identification (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Move most of the messages from info to debug (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add comment for function reset polling (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Correct FDL locking in sdca_fdl_process() (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add missing forward declaration in header (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add stubs for FDL helper functions (Jaroslav Kysela) [RHEL-152847]
- ASoC: renesas: rz-ssi: Fix rz_ssi_priv::hw_params_cache::sample_width (Jaroslav Kysela) [RHEL-152847]
- ASoC: renesas: rz-ssi: Fix channel swap issue in full duplex mode (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs35l56: Use SND_SOC_BYTES_E_ACC() for CAL_DATA_RB control (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs35l56: Use SOC_ENUM_EXT_ACC() for CAL_SET_STATUS control (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc.h: Add SND_SOC_BYTES_E_ACC() to allow setting access flags (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc.h: Add SOC_ENUM_EXT_ACC() to allow setting access flags (Jaroslav Kysela) [RHEL-152847]
- ASoC: tas2781: Add tas2568/2574/5806m/5806md/5830 support (Jaroslav Kysela) [RHEL-152847]
- ASoC: dt-bindings: ti,tas2781: Add TAS2568/2574/5806M/5806MD/5830 support (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: arizona: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- firmware: cs_dsp: Append \n to debugfs string during read (Jaroslav Kysela) [RHEL-152847]
- firmware: cs_dsp: Factor out common debugfs string read (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-rx-macro: fix mute_stream affecting all paths (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-wsa-macro: remove unused WSA_MACRO_RX_MIX enum (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-wsa-macro: remove main path event (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-wsa-macro: fix path clock dependencies (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-wsa-macro: add volume controls for mix path (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-wsa-macro: remove mix path event (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-wsa-macro: remove useless gain read/write sequence (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-wsa-macro: remove unnecessary bounds check (Jaroslav Kysela) [RHEL-152847]
- ALSA: pcmtest: Replace deprecated strcpy with strscpy_pad in setup_patt_bufs (Jaroslav Kysela) [RHEL-152847]
- ASoC: wsa883x: drop GPIOD_FLAGS_BIT_NONEXCLUSIVE flag from GPIO lookup (Jaroslav Kysela) [RHEL-152847]
- ASoC: wsa881x: drop GPIOD_FLAGS_BIT_NONEXCLUSIVE flag from GPIO lookup (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc-core: Pre-check zero CPU/codec DAIs, handle early rtd->dais alloc failure (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: sof-client-probes: Replace snprintf() with scnprintf() (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add companion amp Function (Jaroslav Kysela) [RHEL-152847]
- ASoC: dt-bindings: mediatek,mt8189-afe-pcm: add audio afe document (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mt8189: support PCM in platform driver (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mt8189: support TDM in platform driver (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mt8189: support I2S in platform driver (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mt8189: support ADDA in platform driver (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mt8189: support audio clock control (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mt8189: add common header (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: soc-acpi-intel-nvl-match: add rt722 l3 support (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: Intel: add initial support for NVL-S (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda: core: intel-dsp-config: Add support for NVL-S (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda: controllers: intel: add support for Nova Lake S (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/hdmi: intelhdmi: add HDMI codec ID for Intel NVL (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: soc-acpi: add NVL match tables (Jaroslav Kysela) [RHEL-152847]
- PCI: Add Intel Nova Lake S audio Device ID (Jaroslav Kysela) [RHEL-152847]
- ASoC: ux500: mop500_ab8500: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: ti: omap3pandora: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: ti: omap-twl4030: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: ti: omap-abe-twl6040: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: ti: j721e-evm: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: ti: davinci-evm: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: ti: ams-delta: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: tegra: tegra_wm8903: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: tegra: tegra210_ahub: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: tegra: tegra_asoc_machine: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sunxi: sun8i-codec: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sunxi: sun8i-codec-analog: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sunxi: sun50i-codec-analog: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sunxi: sun4i-codec: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sof-client-probes: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc-topology: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc-pcm: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc-jack: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc-dapm: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc-core: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_utils: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_rt_sdca_jack_common: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_ti_amp: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_rt_mf_sdca: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_rt_amp: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_rt711: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_rt700: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_rt5682: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_maxim: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_dmic: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_cs_amp: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_cs42l43: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_cs42l42: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: soc_sdw_bridge_cs35l56: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: samsung: tobermory: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdca: sdca_asoc: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: samsung: speyside: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: samsung: smdk_wm8994: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: samsung: littlemill: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: samsung: bells: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: samsung: aries_wm8994: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: rockchip: rockchip_max98090: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: rockchip: rk3288_hdmi_analog: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: sc7180: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6usb: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: topology: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6routing: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: meson: t9015: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: meson: g12a-tohdmitx: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: meson: g12a-toacodec: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: meson: axg-tdm-interface: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: meson: axg-spdifout: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: meson: aiu-codec-ctrl: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: meson: aiu-acodec-ctrl: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mt8186-mt6366-common: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mtk-dsp-sof-common: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mtk-afe-platform-driver: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: sof_rt5682: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: sof_realtek_common: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: sof_pcm512x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: sof_nuvoton_common: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: sof_nau8825: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: sof_maxim_common: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: sof_es8336: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: sof_cirrus_common: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: sof_da7219: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: sof_board_helpers: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: cht_bsw_rt5672: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: cht_bsw_rt5645: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: cht_bsw_max98090_ti: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: bytcr_wm5102: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: bytcr_rt5651: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: bytcr_rt5640: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: bytcht_es8316: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: bytcht_cx2072x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: boards: bdw-rt5677: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: avs: pcm: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: avs: rt5640: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: avs: control: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: avs: rt5514: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: avs: rt274: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: avs: nau8825: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: avs: es8336: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: avs: da7219: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: atom: sst-atom-controls: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: generic: audio-graph-card: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl: imx-rpmsg: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl: fsl-asoc-card: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm_hubs: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm_adsp: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm9712: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm9713: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm9090: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm9081: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8998: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8997: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8996: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8995: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8994: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8993: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8991: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8990: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8988: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8985: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8978: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8983: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8974: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8971: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8962: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8961: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8960: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8955: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8940: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8904: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8903: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8900: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8804: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8776: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8753: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8770: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8750: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8737: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8731: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8728: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8711: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8580: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8523: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8510: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8400: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8350: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm5110: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm5102: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm0010: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm5100: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd937x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd934x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd9335: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: uda1380: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: twl6040: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: twl4030: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tlv320dac33: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tlv320aic3x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tlv320aic32x4: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tlv320aic31xx: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tlv320adc3xxx: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tas6424: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: sta529: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tas571x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: sta350: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: sta32x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ssm4567: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ssm2602: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ssm2518: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: sma1307: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: sma1303: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: simple-mux: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt721-sdca: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt715: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt715-sdca: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt712-sdca-dmic: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt712-sdca: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt711: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt711-sdca: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt700: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5682s: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5682: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5677: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5670: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5668: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5665: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5663: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5660: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5659: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5645: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5651: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5640: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5631: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5516: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5514: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt298: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt286: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt274: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt1015: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt1011: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: pcm512x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: pcm186x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: nau8824: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: nau8825: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: nau8822: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: nau8821: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: nau8810: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: mt6359: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: mt6358: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ml26124: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max9867: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max9850: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max98396: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max98390: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max98095: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max98373: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max98090: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max98088: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: madera: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-wsa-macro: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-va-macro: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-tx-macro: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-rx-macro: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lm49453: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: jz4770: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: jz4760: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: jz4740: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: hdmi-codec: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: hdac_hda: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: hdac_hdmi: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: hda: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: es8328: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: es8326: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: es8316: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: es7134: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: da9055: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: da732x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: da7219: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: da7219-aad: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: da7213: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: da7218: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs2072x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cx20442: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs53l30: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs48l32: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs47l92: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs47l90: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs47l85: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs47l35: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs47l24: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs47l15: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs42l73: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs42xx8: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs42l56: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs42l52: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs42l51: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs42l43: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs42l43-jack: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs4234: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs35l56: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs35l45: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs35l41: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs35l33: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cpcap: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: aw88261: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: aw88395: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: audio-iio-aux: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: arizona-jack: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: alc5623: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: adav80x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ak4641: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: adau7118: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: adau1977: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: adau17x1: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: adau1781: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: adau1761: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ad193x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ad1836: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: 88pm860x: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ab8500: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: atmel: tse850-pcm5142: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: amd: acp5x-mach: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: atmel: sam9g20_wm8731: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: amd: acp3x-es83xx: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: amd: acp-mach-common: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc.h: convert to snd_soc_dapm_xxx() (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: avs: Honor NHLT override when setting up a path (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: avs: Allow the topology to carry NHLT data (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-rx-macro: add SM6115 compatible (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-va-macro: add SM6115 compatible (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: atom: Replace strcpy() with strscpy() (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: boards: fix HDMI playback lookup when HDMI-In capture used (Jaroslav Kysela) [RHEL-152847]
- ALSA: gus: Remove unused declarations (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs35l56: Allow restoring factory calibration through ALSA control (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs35l56: Add control to read CAL_SET_STATUS (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: sof_sdw: add codec speaker support for the SKU (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: soc-acpi-ptl-match: add cs42l43_agg_l3_cs35l56_2 support (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: sof_sdw: create BT dai link if bt_link_mask is set (Jaroslav Kysela) [RHEL-152847]
- ASOC: Intel: sof_sdw: add quirk for Avell B.ON (OEM rebranded NUC15) (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: soc-acpi-intel-ptl-match: Add support for rt722_l0_rt1320_l23 (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: sof_sdw: Add quirk to exclude RT722 speaker (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: sof_rt5682: Add quirk override support (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs35l56: Alter error codes for calibration routine (Jaroslav Kysela) [RHEL-152847]
- ALSA: au88x0: Fix array bounds warning in EQ drivers (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/senary: Replace magic numbers with defined constants (Jaroslav Kysela) [RHEL-152847]
- regmap: sdw-mbq: Reorder regmap_mbq_context struct for better packing (Jaroslav Kysela) [RHEL-152847]
- ASoC: stm32: dfsdm: don't use %%pK through printk (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc-pcm: Preserve hw parameters from components in dpcm_runtime_setup_fe (Jaroslav Kysela) [RHEL-152847]
- ALSA: ac97: Fix kernel-doc warning for snd_ac97_reset (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6asm: Use guard() for spin locks (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6asm-dai: Use guard() for spin locks (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6apm-dai: Use guard() for spin locks (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6afe: Use guard() for spin locks (Jaroslav Kysela) [RHEL-152847]
- ASoc: qcom: q6asm: Use automatic cleanup of kfree() (Jaroslav Kysela) [RHEL-152847]
- ASoc: qcom: q6prm: Use automatic cleanup of kfree() (Jaroslav Kysela) [RHEL-152847]
- ASoc: qcom: q6afe: Use automatic cleanup of kfree() (Jaroslav Kysela) [RHEL-152847]
- ASoc: qcom: q6apm: Use automatic cleanup of kfree() (Jaroslav Kysela) [RHEL-152847]
- ASoc: qcom: q6adm: Use automatic cleanup of kfree() (Jaroslav Kysela) [RHEL-152847]
- ASoc: qcom: audioreach: Use automatic cleanup of kfree() (Jaroslav Kysela) [RHEL-152847]
- ASoc: qcom: audioreach: remove unused variables (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6asm: set runtime correctly for each stream (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6asm-dai: use q6asm_get_hw_pointer (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6asm: add q6asm_get_hw_pointer (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6asm-dai: schedule all available frames to avoid dsp under-runs (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: q6asm: handle the responses after closing (Jaroslav Kysela) [RHEL-152847]
- ASoC: dt-bindings: ti,pcm1862: convert to dtschema (Jaroslav Kysela) [RHEL-152847]
- ASoC: dt-bindings: ti,tas2781: Add TAS5822 support (Jaroslav Kysela) [RHEL-152847]
- ASoC: tas2781: Add tas5822 support (Jaroslav Kysela) [RHEL-152847]
- ASoC: tas2781: Replace deprecated strcpy() with strscpy() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: aw88261: pass pointer directly instead of passing the address (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: simplify aw87390_init() argument a bit (Jaroslav Kysela) [RHEL-152847]
- ASoC: max98090/91: adding the two virtual Mux widgets in the routes (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl_spdif: Constify some structures (Jaroslav Kysela) [RHEL-152847]
- ASoC: max98090/91: adding two virtual Mux widgets for digital mics (Jaroslav Kysela) [RHEL-152847]
- ALSA: line6: add support for POD HD Pro X (Jaroslav Kysela) [RHEL-152847]
- regcache: maple: Split ->populate() from ->init() (Jaroslav Kysela) [RHEL-152847]
- regcache: Add ->populate() callback to separate from ->init() (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc-core: check ops & auto_selectable_formats in snd_soc_dai_get_fmt() to prevent dereference error (Jaroslav Kysela) [RHEL-152847]
- ASoC: codec: wm8400: replace printk() calls with dev_*() device aware logging (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: Intel: remove hyphen from AMP<index> name_prexix (Jaroslav Kysela) [RHEL-152847]
- ASoC: max98090/91: fixing the stream index (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: va-macro: fix revision checking (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: Intel: select SND_SOC_SDW_UTILS in SND_SOC_SOF_HDA_GENERIC (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: pcm: Set the PCM device name for HDMI (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs4271: Add support for the external mclk (Jaroslav Kysela) [RHEL-152847]
- ASoC: tas2783: Fix build for SoundWire API update (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: sc7280: make use of common helpers (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: sdm845: make use of common helpers (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: sdw: remove redundant code (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add HID button IRQ (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add early IRQ handling (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add UMP timeout handling for FDL (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add completion for FDL start and stop (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add FDL-specific IRQ processing (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add FDL library for XU entities (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add SDCA FDL data parsing (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add UMP buffer helper functions (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Parse Function Reset max delay (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Parse XU Entity properties (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Force some SDCA Controls to be volatile (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Rely less on the ASoC component in IRQ handling (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Factor out a helper to find SDCA IRQ data (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Update externally_requested flag to cover all requests (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Pass device register map from IRQ alloc to handlers (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Pass SoundWire slave to HID (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Add manual PM runtime gets to IRQ handlers (Jaroslav Kysela) [RHEL-152847]
- regmap: sdw-mbq: Don't assume the regmap device is the SoundWire slave (Jaroslav Kysela) [RHEL-152847]
- ASoC: SDCA: Rename SoundWire struct device variables (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs-amp-lib-test: Add test cases for cs_amp_set_efi_calibration_data() (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/cs35l56: Set cal_index to the amp index (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs35l56: Add calibration command to store into UEFI (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs-amp-lib: Add function to write calibration to UEFI (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs-amp-lib: Return attributes from cs_amp_get_efi_variable() (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs-amp-lib-test: Add cases for factory calibration helpers (Jaroslav Kysela) [RHEL-152847]
- ALSA: hda/cs35l56: Create debugfs files for factory calibration (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs35l56: Create debugfs files for factory calibration (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs35l56: Add common code for factory calibration (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs-amp-lib: Add helpers for factory calibration (Jaroslav Kysela) [RHEL-152847]
- ASoC: cs35l56: Read silicon ID during initialization and save it (Jaroslav Kysela) [RHEL-152847]
- ASoC: renesas: fsi: Constify struct fsi_stream_handler (Jaroslav Kysela) [RHEL-152847]
- ASoC: dt-bindings: qcom,sm8250: add QRB2210 soundcard (Jaroslav Kysela) [RHEL-152847]
- ALSA: maestro3: using vmalloc_array() to handle the code (Jaroslav Kysela) [RHEL-152847]
- ASoC: sdw_utils: add name_prefix for rt1321 part id (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc_sdw_utils: add cs35l57 support (Jaroslav Kysela) [RHEL-152847]
- ASoC: max98090/91: adding DAPM routing for digital output for max98091 (Jaroslav Kysela) [RHEL-152847]
- ASoC: max98090/91: fixing a space (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: Fix function topology name check in profile info output (Jaroslav Kysela) [RHEL-152847]
- ASoC: max98090/91: added DAPM widget for digital output for max98091 (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl_aud2htx: add IEC958_SUBFRAME_LE format in supported list (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: Intel: add hyphen between name and index to amp name_prefix (Jaroslav Kysela) [RHEL-152847]
- ASoC: rockchip: i2s-tdm: Omit a variable reassignment in rockchip_i2s_tdm_probe() (Jaroslav Kysela) [RHEL-152847]
- ASoC: dt-bindings: don't check node names (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: va-macro: Clean up on error path in probe() (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc.h: remove snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: uniphier: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: tegra: tegra210: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: tegra: tegra186: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mt8195: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mt8192: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mt8186: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: mt8183: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: mediatek: common: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: catpt: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: intel: atom: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: fsl: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wsa884x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wsa883x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wsa881x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm_hubs: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm_adsp: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm9081: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8996: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8994: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8991: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8990: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8985: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8983: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8962: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8960: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8958: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8955: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8904: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8753: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8903: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8731: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8580: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8400: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm8350: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm5110: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm5102: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wm2000: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd939x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd938x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd937x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd934x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: wcd9335: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: uda1334: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: twl6040: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: twl4030: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tscs454: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tscs42xx: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tlv320dac33: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tlv320aic23: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tlv320adcx140: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tlv320adc3xxx: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tfa989x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tas5805m: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tas5720: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tas571x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tas5086: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tas2781: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: tas2562: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: sta350: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: sta32x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: sma1307: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: sma1303: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: sgtl5000: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt9123: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt711-sdca: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5670: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5665: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5659: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5631: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt1015: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt1318: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt1011: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: peb2466: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: pcm512x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: pcm1681: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ntp8835: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: nau8822: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: nau8810: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: mt6660: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: mt6359: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: mt6358: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: msm8916-wcd-digital: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max98925: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max9867: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max98390: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max98095: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max98090: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max98088: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max9768: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: max9759: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: madera: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-wsa-macro: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-va-macro: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-tx-macro: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: lpass-rx-macro: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: idt821034: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: es8328: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: da9055: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: da732x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: da7219: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: da7218: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: da7213: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: da7210: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs48l32: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs47l15: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs43130: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs42l84: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs42l51: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs42l43: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs42l42: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs4271: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs4270: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs4234: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs35l45: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cs35l36: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: cros_ec: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: bd28623: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: aw88399: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: aw88395: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: aw88261: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: aw88166: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: aw88081: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: aw87390: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: arizona: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ak4619: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ak4641: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ak4458: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: adav80x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: ab8500: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: 88pm860x: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: atmel: use snd_kcontrol_chip() instead of snd_soc_kcontrol_component() (Jaroslav Kysela) [RHEL-152847]
- ASoC: dt-bindings: Add bindings for SpacemiT K1 (Jaroslav Kysela) [RHEL-152847]
- ASoC: amd: amd_sdw: Propagate the PCI subsystem Vendor and Device IDs (Jaroslav Kysela) [RHEL-152847]
- ASoC: amd: ps: Propagate the PCI subsystem Vendor and Device IDs (Jaroslav Kysela) [RHEL-152847]
- ALSA: firewire-tascam: reserve resources for transferred isochronous packets at S400 (Jaroslav Kysela) [RHEL-152847]
- ASoC: qcom: sc8280xp: Add support for Kaanapali (Jaroslav Kysela) [RHEL-152847]
- ASoC: dt-bindings: qcom,sm8250: Add kaanapali sound card (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: va-macro: Rework version checking (Jaroslav Kysela) [RHEL-152847]
- ASoC: mxs-saif: support usage with simple-audio-card (Jaroslav Kysela) [RHEL-152847]
- ASoC: codecs: rt5670: use SOC_VALUE_ENUM_SINGLE_DECL for DAC2 L/R MX-1B (Jaroslav Kysela) [RHEL-152847]
- dt-bindings: sound: Update ADMAIF bindings for tegra264 (Jaroslav Kysela) [RHEL-152847]
- ASoc: tas2783A: Remove unneeded variable assignment (Jaroslav Kysela) [RHEL-152847]
- ASoC: sof-function-topology-lib: escalate the log when missing function topoplogy (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: Intel: use sof_sdw as default SDW machine driver (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: don't check the existence of dummy topology (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: add platform name into sof_intel_dsp_desc (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc_sdw_utils: export asoc_sdw_get_dai_type (Jaroslav Kysela) [RHEL-152847]
- ASoC: Intel: export sof_sdw_get_tplg_files (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc_sdw_utils: add name_prefix to asoc_sdw_codec_info struct (Jaroslav Kysela) [RHEL-152847]
- ASoC: soc-acpi: make some variables of acpi adr and link adr non-const (Jaroslav Kysela) [RHEL-152847]
- ASoC: SOF: Don't print the monolithic topology name if function topology may be used (Jaroslav Kysela) [RHEL-152847]
- ALSA: Add definitions for the bits in IEC958 subframe (Jaroslav Kysela) [RHEL-152847]
- ACPICA: Add SoundWire File Table (SWFT) signature (Jaroslav Kysela) [RHEL-152847]
- ASoC: wm8904: add DMIC support (Jaroslav Kysela) [RHEL-152847]
- ASoC: wm8904: get platform data from DT (Jaroslav Kysela) [RHEL-152847]
- ASoC: wm8904: Don't touch GPIO configs set to 0xFFFF (Jaroslav Kysela) [RHEL-152847]
* Wed Apr 01 2026 CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> [5.14.0-690.el9]
- s390/dasd: Copy detected format information to secondary device (Mete Durlu) [RHEL-161530]
- s390/dasd: Move quiesce state with pprc swap (Mete Durlu) [RHEL-161530]
- s390/dasd: Fix gendisk parent after copy pair swap (Mete Durlu) [RHEL-161530]
- x86/mce/amd: Check SMCA feature bit before accessing SMCA MSRs (David Arcari) [RHEL-128579]
- x86/mce: Handle AMD threshold interrupt storms (David Arcari) [RHEL-128579]
- x86/mce: Do not clear bank's poll bit in mce_poll_banks on AMD SMCA systems (David Arcari) [RHEL-128579]
- x86/mce: Add support for physical address valid bit (David Arcari) [RHEL-128579]
- x86/mce: Save and use APEI corrected threshold limit (David Arcari) [RHEL-128579]
- x86/mce/amd: Define threshold restart function for banks (David Arcari) [RHEL-128579]
- x86/mce/amd: Remove redundant reset_block() (David Arcari) [RHEL-128579]
- x86/mce/amd: Support SMCA Corrected Error Interrupt (David Arcari) [RHEL-128579]
- x86/mce/amd: Enable interrupt vectors once per-CPU on SMCA systems (David Arcari) [RHEL-128579]
- x86/mce: Unify AMD DFR handler with MCA Polling (David Arcari) [RHEL-128579]
- x86/mce: Unify AMD THR handler with MCA Polling (David Arcari) [RHEL-128579]
- x86/mce: Add a clear_bank() helper (David Arcari) [RHEL-128579]
- x86/mce: Move machine_check_poll() status checks to helper functions (David Arcari) [RHEL-128579]
- x86/mce: Separate global and per-CPU quirks (David Arcari) [RHEL-128579]
- x86/mce: Do 'UNKNOWN' vendor check early (David Arcari) [RHEL-128579]
- x86/mce: Define BSP-only SMCA init (David Arcari) [RHEL-128579]
- x86/mce: Define BSP-only init (David Arcari) [RHEL-128579]
- x86/mce: Set CR4.MCE last during init (David Arcari) [RHEL-128579]
- x86/mce: Remove __mcheck_cpu_init_early() (David Arcari) [RHEL-128579]
- x86/mce: Cleanup bank processing on init (David Arcari) [RHEL-128579]
- x86/mce/amd: Put list_head in threshold_bank (David Arcari) [RHEL-128579]
- x86/mce/amd: Remove smca_banks_map (David Arcari) [RHEL-128579]
- x86/mce/amd: Remove return value for mce_threshold_{create,remove}_device() (David Arcari) [RHEL-128579]
- x86/mce/amd: Rename threshold restart function (David Arcari) [RHEL-128579]
- Merge tag 'x86_tdx_for_6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip (David Arcari) [RHEL-128579]
- x86/fred: Add a machine check entry stub for FRED [partial] (David Arcari) [RHEL-128579]
- x86/mce/inject: Add missing MODULE_DESCRIPTION() line (David Arcari) [RHEL-128579]
- x86/mce/inject: Only write MCA_MISC when a value has been supplied (David Arcari) [RHEL-128579]
- x86/msr: Convert __rdmsr() uses to native_rdmsrq() uses [partial] (David Arcari) [RHEL-128579]
- x86/msr: Convert __wrmsr() uses to native_wrmsr{,q}() uses [partial] (David Arcari) [RHEL-128579]
- x86/msr: Add the native_rdmsrq() helper (David Arcari) [RHEL-128579]
- x86/msr: Rename 'native_wrmsrl()' to 'native_wrmsrq()' [partial] (David Arcari) [RHEL-128579]
- x86/msr: Rename 'mce_wrmsrl()' to 'mce_wrmsrq()' (David Arcari) [RHEL-128579]
- x86/msr: Rename 'mce_rdmsrl()' to 'mce_rdmsrq()' (David Arcari) [RHEL-128579]
- x86/msr: Add explicit includes of <asm/msr.h> [partial] (David Arcari) [RHEL-128579]
- x86/msr: Rename 'rdmsrl_on_cpu()' to 'rdmsrq_on_cpu()' [partial] (David Arcari) [RHEL-128579]
- x86/msr: Rename 'wrmsrl_safe()' to 'wrmsrq_safe()' [partial] (David Arcari) [RHEL-128579]
- x86/msr: Rename 'rdmsrl_safe()' to 'rdmsrq_safe()' [partial] (David Arcari) [RHEL-128579]
- x86/msr: Rename 'wrmsrl()' to 'wrmsrq()' [partial] (David Arcari) [RHEL-128579]
- x86/msr: Rename 'rdmsrl()' to 'rdmsrq()' [partial] (David Arcari) [RHEL-128579]
- x86/msr: Standardize on 'u32' MSR indices in <asm/msr.h> (David Arcari) [RHEL-128579]
- x86/msr: Harmonize the prototype and definition of do_trace_rdpmc() (David Arcari) [RHEL-128579]
- net: hv_netvsc: reject RSS hash key programming without RX indirection table (Medha Mummigatti) [RHEL-150569]
- powerpc/watchpoints: Annotate atomic context in more places (Mamatha Inamdar) [RHEL-145581]
- powerpc/watchpoint: Disable pagefaults when getting user instruction (Mamatha Inamdar) [RHEL-145581]
- i2c: i801: Add support for Intel Nova Lake-S (David Arcari) [RHEL-152917]
- i2c: i801: Fix the Intel Diamond Rapids features (David Arcari) [RHEL-152917]
- i2c: i801: Add support for Intel Diamond Rapids (David Arcari) [RHEL-152917]
- i2c: i801: Add support for Intel Wildcat Lake-U (David Arcari) [RHEL-152917]
- i2c: i801: Hide Intel Birch Stream SoC TCO WDT (David Arcari) [RHEL-152917]
- i2c: smbus: introduce Write Disable-aware SPD instantiating functions (David Arcari) [RHEL-152917]
- i2c: i801: Use MMIO if available (David Arcari) [RHEL-152917]
- i2c: i801: Switch to iomapped register access (David Arcari) [RHEL-152917]
- i2c: i801: Improve too small kill wait time in i801_check_post (David Arcari) [RHEL-152917]
- i2c: i801: Move i801_wait_intr and i801_wait_byte_done in the code (David Arcari) [RHEL-152917]
- i2c: i801: Cosmetic improvements (David Arcari) [RHEL-152917]
- x86/CPU/AMD: Add CPUID faulting support (David Arcari) [RHEL-140357]
- gfs2: Fix data loss during inode evict (Andreas Gruenbacher) [RHEL-127164]
- gfs2: minor evict_[un]linked_inode cleanup (Andreas Gruenbacher) [RHEL-127164]
- gfs2: Avoid unnecessary transactions in evict_linked_inode (Andreas Gruenbacher) [RHEL-127164]
- gfs2: Remove unnecessary check in gfs2_evict_inode (Andreas Gruenbacher) [RHEL-127164]
- gfs2: Call unlock_new_inode before d_instantiate (Andreas Gruenbacher) [RHEL-127164]
- gfs2: Don't remember delete unless it's successful (Andreas Gruenbacher) [RHEL-127164]
- gfs2: Remove redundant check for GLF_INSTANTIATE_NEEDED (Andreas Gruenbacher) [RHEL-127164]
- gfs2: fiemap page fault fix (Andreas Gruenbacher) [RHEL-127164]
- gfs2: Don't get stuck writing page onto itself under direct I/O (Andreas Gruenbacher) [RHEL-127164]
- dlm: fix recovery pending middle conversion (Alexander Aring) [RHEL-142778]
* Mon Mar 30 2026 CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> [5.14.0-689.el9]
- redhat: Update decompressor image path (Mete Durlu) [RHEL-141416]
- block: change blk_get_meta_cap() stub return -ENOIOCTLCMD (Ming Lei) [RHEL-154215]
- block: fix lbmd_guard_tag_type assignment in FS_IOC_GETLBMD_CAP (Ming Lei) [RHEL-154215]
- block: fix FS_IOC_GETLBMD_CAP parsing in blkdev_common_ioctl() (Ming Lei) [RHEL-154215]
- block: handle pi_tuple_size in queue_limits_stack_integrity (Ming Lei) [RHEL-154215]
- block: add __must_check attribute to sb_min_blocksize() (Ming Lei) [RHEL-154215]
- xfs: check the return value of sb_min_blocksize() in xfs_fs_fill_super (Ming Lei) [RHEL-154215]
- isofs: check the return value of sb_min_blocksize() in isofs_fill_super (Ming Lei) [RHEL-154215]
- exfat: check return value of sb_min_blocksize in exfat_read_boot_sector (Ming Lei) [RHEL-154215]
- vfat: fix missing sb_min_blocksize() return value checks (Ming Lei) [RHEL-154215]
- block: rate-limit capacity change info log (Ming Lei) [RHEL-154215]
- badblocks: use sector_t instead of int to avoid truncation of badblocks length (Ming Lei) [RHEL-154215]
- blk-mq: fix elevator depth_updated method (Ming Lei) [RHEL-154215]
- block/mq-deadline: Switch back to a single dispatch list (Ming Lei) [RHEL-154215]
- block/mq-deadline: Introduce dd_start_request() (Ming Lei) [RHEL-154215]
- block: relax atomic write boundary vs chunk size check (Ming Lei) [RHEL-154215]
- block: fix stacking of atomic writes when atomics are not supported (Ming Lei) [RHEL-154215]
- block: update validation of atomic writes boundary for stacked devices (Ming Lei) [RHEL-154215]
- block: use chunk_sectors when evaluating stacked atomic write limits (Ming Lei) [RHEL-154215]
- ilog2: add max_pow_of_two_factor() (Ming Lei) [RHEL-154215]
- block: make bio auto-integrity deadlock safe (Ming Lei) [RHEL-154215]
- block: blocking mempool_alloc doesn't fail (Ming Lei) [RHEL-154215]
- block: zero non-PI portion of auto integrity buffer (Ming Lei) [RHEL-154215]
- fs: add ioctl to query metadata and protection info capabilities (Ming Lei) [RHEL-154215]
- nvme: set pi_offset only when checksum type is not BLK_INTEGRITY_CSUM_NONE (Ming Lei) [RHEL-154215]
- block: introduce pi_tuple_size field in blk_integrity (Ming Lei) [RHEL-154215]
- block: rename tuple_size field in blk_integrity to metadata_size (Ming Lei) [RHEL-154215]
- block: Enforce power-of-2 physical block size (Ming Lei) [RHEL-154215]
- block: avoid possible overflow for chunk_sectors check in blk_stack_limits() (Ming Lei) [RHEL-154215]
- lib/sbitmap: make sbitmap_get_shallow() internal (Ming Lei) [RHEL-154215]
- lib/sbitmap: convert shallow_depth from one word to the whole sbitmap (Ming Lei) [RHEL-154215]
- md/raid0: convert raid0_make_request() to use bio_submit_split_bioset() (Ming Lei) [RHEL-154215]
- block: Fix an error path in disk_update_zone_resources() (Ming Lei) [RHEL-154215]
- block: rnbd-clt: Fix signedness bug in init_dev() (Ming Lei) [RHEL-154215]
- block: fix comment for op_is_zone_mgmt() to include RESET_ALL (Ming Lei) [RHEL-154215]
- block: fix NULL pointer dereference in blk_zone_reset_all_bio_endio() (Ming Lei) [RHEL-154215]
- blk-throttle: fix throtl_data leak during disk release (Ming Lei) [RHEL-154215]
- xen-blkfront: Cache feature_persistent value before advertisement (Ming Lei) [RHEL-154215]
- zram: off by one in read_block_state() (Ming Lei) [RHEL-154215]
- block: fix ordering of recursive split IO (Ming Lei) [RHEL-154215]
- block: skip unnecessary checks for split bio (Ming Lei) [RHEL-154215]
- blk-crypto: convert to use bio_submit_split_bioset() (Ming Lei) [RHEL-154215]
- md/md-linear: convert to use bio_submit_split_bioset() (Ming Lei) [RHEL-154215]
- md/raid5: convert to use bio_submit_split_bioset() (Ming Lei) [RHEL-154215]
- md/raid10: convert read/write to use bio_submit_split_bioset() (Ming Lei) [RHEL-154215]
- md/raid10: add a new r10bio flag R10BIO_Returned (Ming Lei) [RHEL-154215]
- md/raid1: convert to use bio_submit_split_bioset() (Ming Lei) [RHEL-154215]
- md/raid0: convert raid0_handle_discard() to use bio_submit_split_bioset() (Ming Lei) [RHEL-154215]
- block: factor out a helper bio_submit_split_bioset() (Ming Lei) [RHEL-154215]
- blk-crypto: fix missing blktrace bio split events (Ming Lei) [RHEL-154215]
- md: fix mssing blktrace bio split events (Ming Lei) [RHEL-154215]
- blk-mq: add QUEUE_FLAG_BIO_ISSUE_TIME (Ming Lei) [RHEL-154215]
- block: initialize bio issue time in blk_mq_submit_bio() (Ming Lei) [RHEL-154215]
- block: cleanup bio_issue (Ming Lei) [RHEL-154215]
- drbd: always set BLK_FEAT_STABLE_WRITES (Ming Lei) [RHEL-154215]
- null_blk: fix kmemleak by releasing references to fault configfs items (Ming Lei) [RHEL-154215]
- block: don't merge bios with different app_tags (Ming Lei) [RHEL-154215]
- block: rnbd-clt: Fix leaked ID in init_dev() (Ming Lei) [RHEL-154215]
- block: fix cached zone reports on devices with native zone append (Ming Lei) [RHEL-154215]
- block: Clear BLK_ZONE_WPLUG_PLUGGED when aborting plugged BIOs (Ming Lei) [RHEL-154215]
- zram: fix the issue that the write - back limits might overflow (Ming Lei) [RHEL-154215]
- block/blk-throttle: drop unneeded blk_stat_enable_accounting (Ming Lei) [RHEL-154215]
- block/blk-throttle: Fix throttle slice time for SSDs (Ming Lei) [RHEL-154215]
- ps3disk: use memcpy_{from,to}_bvec index (Ming Lei) [RHEL-154215]
- nbd: defer config unlock in nbd_genl_connect (Ming Lei) [RHEL-154215]
- nbd: defer config put in recv_work (Ming Lei) [RHEL-154215]
- block: freeze queue when updating zone resources (Ming Lei) [RHEL-154215]
- block: handle zone management operations completions (Ming Lei) [RHEL-154215]
- null_blk: set dma alignment to logical block size (Ming Lei) [RHEL-154215]
- block: make REQ_OP_ZONE_OPEN a write operation (Ming Lei) [RHEL-154215]
- block: fix op_is_zone_mgmt() to handle REQ_OP_ZONE_RESET_ALL (Ming Lei) [RHEL-154215]
- block: require LBA dma_alignment when using PI (Ming Lei) [RHEL-154215]
- block: Remove elevator_lock usage from blkg_conf frozen operations (Ming Lei) [RHEL-154215]
- loop: fix backing file reference leak on validation error (Ming Lei) [RHEL-154215]
- nbd: restrict sockets to TCP and UDP (Ming Lei) [RHEL-154215]
- blk-throttle: fix access race during throttle policy activation (Ming Lei) [RHEL-154215]
- block: use int to store blk_stack_limits() return value (Ming Lei) [RHEL-154215]
- blk-mq: check kobject state_in_sysfs before deleting in blk_mq_unregister_hctx (Ming Lei) [RHEL-154215]
- blk-zoned: Fix a lockdep complaint about recursive locking (Ming Lei) [RHEL-154215]
- null_blk: Fix the description of the cache_size module argument (Ming Lei) [RHEL-154215]
- block: fix kobject double initialization in add_disk (Ming Lei) [RHEL-154215]
- block: ensure discard_granularity is zero when discard is not supported (Ming Lei) [RHEL-154215]
- sunvdc: Balance device refcount in vdc_port_mpgroup_check (Ming Lei) [RHEL-154215]
- block: sanitize chunk_sectors for atomic write limits (Ming Lei) [RHEL-154215]
- block: mtip32xx: Fix usage of dma_map_sg() (Ming Lei) [RHEL-154215]
- zram: refuse to use zero sized block device as backing device (Ming Lei) [RHEL-154215]
- block: sunvdc: add check for mdesc_grab() returning NULL (Ming Lei) [RHEL-154215]
- rbd: avoid use-after-free in do_rbd_add() when rbd_dev_create() fails (Ming Lei) [RHEL-154215]
- rbd: fix possible memory leak in rbd_sysfs_init() (Ming Lei) [RHEL-154215]
- xen-blkfront: Advertise feature-persistent as user requested (Ming Lei) [RHEL-154215]
- xen-blkback: Advertise feature-persistent as user requested (Ming Lei) [RHEL-154215]
- xen-blkfront: Apply 'feature_persistent' parameter when connect (Ming Lei) [RHEL-154215]
- xen-blkback: Apply 'feature_persistent' parameter when connect (Ming Lei) [RHEL-154215]
- xen-blkback: fix persistent grants negotiation (Ming Lei) [RHEL-154215]
- xen/blkfront: fix comment for need_copy (Ming Lei) [RHEL-154215]
- zram: clear IDLE flag after recompression (Ming Lei) [RHEL-154215]
- drm/mgag200: fix mgag200_bmc_stop_scanout() (Jocelyn Falempe) [RHEL-148287]
* Wed Mar 25 2026 CKI KWF Bot <cki-ci-bot+kwf-gitlab-com@redhat.com> [5.14.0-688.el9]
- HID: intel-thc-hid: intel-thc: Fix incorrect pointer arithmetic in I2C regs save (Benjamin Tissoires) [RHEL-142234] {CVE-2025-39818}
- NFSv4: Check for delegation validity in nfs_start_delegation_return_locked() (Scott Mayhew) [RHEL-151415]
- perf/amd/ibs: Avoid calling perf_allow_kernel() from the IBS NMI handler (Michael Petlan) [RHEL-155340]
- perf: Extend the bit width of the arch-specific flag (Michael Petlan) [RHEL-155340]
- perf: Remove unnecessary parameter of security check (Michael Petlan) [RHEL-155340]
- scsi: target: iscsi: Fix use-after-free in iscsit_dec_session_usage_count() (CKI Backport Bot) [RHEL-150423] {CVE-2026-23193}
- nfsd: add list_head nf_gc to struct nfsd_file (Roberto Bergantinos Corpas) [RHEL-152552]
- redhat: genlog: add new JIRA cloud server hostname (Jan Stancek)
- gfs2: less aggressive low-memory log flushing (Andreas Gruenbacher) [RHEL-153055]
- io_uring: graduate to full support (Jeff Moyer) [RHEL-120699]
- netfilter: nf_tables: fix use-after-free in nf_tables_addchain() (CKI Backport Bot) [RHEL-153270] {CVE-2026-23231}
- net: atm: fix /proc/net/atm/lec handling (Hangbin Liu) [RHEL-146424] {CVE-2025-38180}
- net: atm: add lec_mutex (Hangbin Liu) [RHEL-146424]
- macvlan: observe an RCU grace period in macvlan_common_newlink() error path (Hangbin Liu) [RHEL-150227]
- macvlan: fix error recovery in macvlan_common_newlink() (Hangbin Liu) [RHEL-150227] {CVE-2026-23209}
- spi: tegra210-quad: Protect curr_xfer check in IRQ handler (Charles Mirabile) [RHEL-145814]
- spi: tegra210-quad: Protect curr_xfer clearing in tegra_qspi_non_combined_seq_xfer (Charles Mirabile) [RHEL-145814]
- spi: tegra210-quad: Protect curr_xfer in tegra_qspi_combined_seq_xfer (Charles Mirabile) [RHEL-145814]
- spi: tegra210-quad: Protect curr_xfer assignment in tegra_qspi_setup_transfer_one (Charles Mirabile) [RHEL-145814]
- spi: tegra210-quad: Move curr_xfer read inside spinlock (Charles Mirabile) [RHEL-145814]
- spi: tegra210-quad: Return IRQ_HANDLED when timeout already processed transfer (Charles Mirabile) [RHEL-145814]
- migrate: correct lock ordering for hugetlb file folios (Luiz Capitulino) [RHEL-147267] {CVE-2026-23097}
- ALSA: aloop: Fix racy access at PCM trigger (Jaroslav Kysela) [RHEL-150131] {CVE-2026-23191}
- netfilter: nf_tables: fix inverted genmask check in nft_map_catchall_activate() (CKI Backport Bot) [RHEL-149749] {CVE-2026-23111}
- bonding: fix use-after-free due to enslave fail after slave array update (CKI Backport Bot) [RHEL-152386] {CVE-2026-23171}
- Add signing key for Nvidia Jetson and Bluefield GPU signing keys (Enrique Belarte Luque) [RHEL-145938]
- Add NVIDIA Jetson signing key for OOT modules (Enrique Belarte Luque) [RHEL-145938]
- vsock: lock down child_ns_mode as write-once (Stefano Garzarella) [RHEL-117126]
- vsock: Use container_of() to get net namespace in sysctl handlers (Stefano Garzarella) [RHEL-117126]
- vsock: prevent child netns mode switch from local to global (Stefano Garzarella) [RHEL-117126]
- vsock: fix child netns mode initialization (Stefano Garzarella) [RHEL-117126]
- vsock: add netns support to virtio transports (Stefano Garzarella) [RHEL-117126]
- virtio: set skb owner of virtio_transport_reset_no_sock() reply (Stefano Garzarella) [RHEL-117126]
- vsock: add netns to vsock core (Stefano Garzarella) [RHEL-117126]
- vhost/vsock: improve RCU read sections around vhost_vsock_get() (Stefano Garzarella) [RHEL-117126]
- vsock: fix lock inversion in vsock_assign_transport() (Stefano Garzarella) [RHEL-117126]
- vsock: Do not allow binding to VMADDR_PORT_ANY (Stefano Garzarella) [RHEL-117126]
- vsock: reset socket state when de-assigning the transport (Stefano Garzarella) [RHEL-117126]
- vsock/virtio: cancel close work in the destructor (Stefano Garzarella) [RHEL-117126]
- dpll: zl3073x: Fix output pin phase adjustment sign (Ivan Vecera) [RHEL-149693]
- mm/hugetlb: fix excessive IPI broadcasts when unsharing PMD tables using mmu_gather (Rafael Aquini) [RHEL-150765]
- mm/hugetlb: add missing hugetlb_lock in __unmap_hugepage_range() (Rafael Aquini) [RHEL-150765]
- mm/hugetlb: convert use of struct page to folio in __unmap_hugepage_range() (Rafael Aquini) [RHEL-150765]
- mm/hugetlb: refactor __unmap_hugepage_range() to take folio instead of page (Rafael Aquini) [RHEL-150765]
- mm/hugetlb: refactor unmap_hugepage_range() to take folio instead of page (Rafael Aquini) [RHEL-150765]
- mm/hugetlb: pass folio instead of page to unmap_ref_private() (Rafael Aquini) [RHEL-150765]
- mm/hugetlb: fix two comments related to huge_pmd_unshare() (Rafael Aquini) [RHEL-150765]
- mm/hugetlb: fix hugetlb_pmd_shared() (Rafael Aquini) [RHEL-150765] {CVE-2026-23100}
- mm/hugetlb: fix copy_hugetlb_page_range() to use ->pt_share_count (Rafael Aquini) [RHEL-150765]
- mm: hugetlb: independent PMD page table shared count (Rafael Aquini) [RHEL-150765] {CVE-2024-57883}
- mm/rmap: fix two comments related to huge_pmd_unshare() (Rafael Aquini) [RHEL-150765]
- mm/rmap: introduce and use hugetlb_remove_rmap() (Rafael Aquini) [RHEL-150765]
- x86/mm/64: define ARCH_PAGE_TABLE_SYNC_MASK and arch_sync_kernel_mappings() (Rafael Aquini) [RHEL-150765] {CVE-2025-39845}
- mm: introduce and use {pgd,p4d}_populate_kernel() (Rafael Aquini) [RHEL-150765]
- mm: move page table sync declarations to linux/pgtable.h (Rafael Aquini) [RHEL-150765] {CVE-2025-39844}
- redhat: update self-test data (Patrick Talbert)
- redhat: set defaults for 9.8 (Patrick Talbert)
- gitlab-ci: disttag override for 9.8 (Patrick Talbert)
- ipv6: BUG() in pskb_expand_head() as part of calipso_skbuff_setattr() (CKI Backport Bot) [RHEL-143546] {CVE-2025-71085}
- s390/pci: Avoid deadlock between PCI error recovery and mlx5 crdump (Mete Durlu) [RHEL-157931]
- pNFS: fix a missing wake up while waiting on NFS_LAYOUT_DRAIN (Olga Kornievskaia) [RHEL-151429]
- USB: storage: Remove subclass and protocol overrides from Novatek quirk (Desnes Nunes) [RHEL-147786]
- usb: uas: fix urb unmapping issue when the uas device is remove during ongoing data transfer (Desnes Nunes) [RHEL-147786] {CVE-2025-68331}
- xhci: dbgtty: fix device unregister: fixup (Desnes Nunes) [RHEL-147786]
- xhci: dbgtty: fix device unregister (Desnes Nunes) [RHEL-147786]
- tty: fix tty_port_tty_*hangup() kernel-doc (Desnes Nunes) [RHEL-147786]
- tty: introduce and use tty_port_tty_vhangup() helper (Desnes Nunes) [RHEL-147786]
- usb: storage: sddr55: Reject out-of-bound new_pba (Desnes Nunes) [RHEL-147786] {CVE-2025-40345}
- USB: serial: option: add support for Rolling RW101R-GL (Desnes Nunes) [RHEL-147786]
- usb: typec: ucsi: psy: Set max current to zero when disconnected (Desnes Nunes) [RHEL-147786]
- drivers/usb/dwc3: fix PCI parent check (Desnes Nunes) [RHEL-147786]
- usb: storage: Fix memory leak in USB bulk transport (Desnes Nunes) [RHEL-147786] {CVE-2025-68288}
- xhci: sideband: Fix race condition in sideband unregister (Desnes Nunes) [RHEL-147786]
- xhci: dbgtty: Fix data corruption when transmitting data form DbC to host (Desnes Nunes) [RHEL-147786]
- xhci: fix stale flag preventig URBs after link state error is cleared (Desnes Nunes) [RHEL-147786]
- USB: serial: ftdi_sio: add support for u-blox EVK-M101 (Desnes Nunes) [RHEL-147786]
- usb: gadget: udc: fix use-after-free in usb_gadget_state_work (Desnes Nunes) [RHEL-147786] {CVE-2025-68282}
- USB: serial: option: add Telit FN920C04 ECM compositions (Desnes Nunes) [RHEL-147786]
- usb: roles: get usb role switch from parent only for usb-b-connector (Desnes Nunes) [RHEL-147786]
- Revert "tcpm: allow looking for role_sw device in the main node" (Desnes Nunes) [RHEL-147786]
- USB: serial: option: add Quectel RG255C (Desnes Nunes) [RHEL-147786]
- tcpm: allow looking for role_sw device in the main node (Desnes Nunes) [RHEL-147786]
- tcpm: switch check for role_sw device with fw_node (Desnes Nunes) [RHEL-147786]
- usb/core/quirks: Add Huawei ME906S to wakeup quirk (Desnes Nunes) [RHEL-147786]
- USB: serial: option: add UNISOC UIS7720 (Desnes Nunes) [RHEL-147786]
- xhci: dbc: enable back DbC in resume if it was enabled before suspend (Desnes Nunes) [RHEL-147786]
- xhci: dbc: fix bogus 1024 byte prefix if ttyDBC read races with stall event (Desnes Nunes) [RHEL-147786]
- usb: xhci-pci: Fix USB2-only root hub registration (Desnes Nunes) [RHEL-147786]
- dt-bindings: usb: switch: split out ports definition (Desnes Nunes) [RHEL-147786]
- dt-bindings: phy: qcom,sc8280xp-qmp-usb43dp: Add ports and orientation-switch (Desnes Nunes) [RHEL-147786]
- usb: typec: mux: gpio-sbu: Make enable gpio optional (Desnes Nunes) [RHEL-147786]
- dt-bindings: usb: gpio-sbu-mux: Make 'enable-gpios' optional (Desnes Nunes) [RHEL-147786]
- usb: dwc3: Don't call clk_bulk_disable_unprepare() twice (Desnes Nunes) [RHEL-147786]
- dt-bindings: usb: dwc3-imx8mp: dma-range is required only for imx8mp (Desnes Nunes) [RHEL-147786]
- usb: vhci-hcd: Prevent suspending virtually attached devices (Desnes Nunes) [RHEL-147786]
- USB: serial: option: add SIMCom 8230C compositions (Desnes Nunes) [RHEL-147786]
- thunderbolt: Fix use-after-free in tb_dp_dprx_work (Desnes Nunes) [RHEL-147786] {CVE-2025-40002}
- docs: driver-api: fix spelling of "buses". (Desnes Nunes) [RHEL-147786]
- media: Documentation: media: Improve camera sensor documentation (Desnes Nunes) [RHEL-147786]
- ipmi: Add docs for the IPMI IPMB driver (Desnes Nunes) [RHEL-147786]
- usb: xhci: align PORTSC trace with one-based port numbering (Desnes Nunes) [RHEL-147786]
- usb: xhci: correct indentation for PORTSC tracing function (Desnes Nunes) [RHEL-147786]
- usb: xhci: improve TR Dequeue Pointer mask (Desnes Nunes) [RHEL-147786]
- usb: xhci-pci: add support for hosts with zero USB3 ports (Desnes Nunes) [RHEL-147786]
- usb: xhci: Update a comment about Stop Endpoint retries (Desnes Nunes) [RHEL-147786]
- Revert "usb: xhci: Avoid Stop Endpoint retry loop if the endpoint seems Running" (Desnes Nunes) [RHEL-147786]
- usb: gadget: Introduce free_usb_request helper (Desnes Nunes) [RHEL-147786]
- usb: gadget: Store endpoint pointer in usb_request (Desnes Nunes) [RHEL-147786]
- phy: fsl-imx8mq-usb: fix typec orientation switch when built as module (Desnes Nunes) [RHEL-147786]
- usb: typec: Stub out typec_switch APIs when CONFIG_TYPEC=n (Desnes Nunes) [RHEL-147786]
- usb: mon: Increase BUFF_MAX to 64 MiB to support multi-MB URBs (Desnes Nunes) [RHEL-147786]
- usb: xhci: plat: Facilitate using autosuspend for xhci plat devices (Desnes Nunes) [RHEL-147786]
- redhat/configs: Enable DWC3 Generic Platform Driver on RHEL aarch64 (Desnes Nunes) [RHEL-147786]
- usb: dwc3: add generic driver to support flattened (Desnes Nunes) [RHEL-147786]
- clk: Provide devm_clk_bulk_get_all_enabled() helper (Desnes Nunes) [RHEL-147786]
- dt-bindings: usb: dwc3: add support for SpacemiT K1 (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update thunderbolt.h header file (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update xdomain.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update usb4_port.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update usb4.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update tunnel.h function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update tunnel.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update tmu.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Add missing documentation in tb.h (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update tb.h function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update tb.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update switch.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update retimer.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update property.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update path.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update nvm.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Add missing documentation in nhi_regs.h ring_desc structure (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update nhi.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update lc.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update eeprom.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update domain.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update dma_port.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Add missing documentation in ctl.h tb_cfg_request struct (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update ctl.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update clx.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update cap.c function documentation (Desnes Nunes) [RHEL-147786]
- thunderbolt: Update acpi.c function documentation (Desnes Nunes) [RHEL-147786]
- usb: typec: tipd: Handle mode transitions for CD321x (Desnes Nunes) [RHEL-147786]
- usb: typec: tipd: Read data status in probe and cache its value (Desnes Nunes) [RHEL-147786]
- usb: typec: tipd: Use read_power_status function in probe (Desnes Nunes) [RHEL-147786]
- usb: typec: tipd: Update partner identity when power status was updated (Desnes Nunes) [RHEL-147786]
- usb: typec: tipd: Register DisplayPort and Thunderbolt altmodes for cd321x (Desnes Nunes) [RHEL-147786]
- usb: typec: tipd: Read USB4, Thunderbolt and DisplayPort status for cd321x (Desnes Nunes) [RHEL-147786]
- usb: typec: tipd: Add cd321x struct with separate size (Desnes Nunes) [RHEL-147786]
- usb: typec: tipd: Trace data status for CD321x correctly (Desnes Nunes) [RHEL-147786]
- usb: typec: tipd: Move switch_power_state to tipd_data (Desnes Nunes) [RHEL-147786]
- usb: typec: tipd: Move initial irq mask to tipd_data (Desnes Nunes) [RHEL-147786]
- usb: typec: tipd: Clear interrupts first (Desnes Nunes) [RHEL-147786]
- usb: host: enable USB offload during system sleep (Desnes Nunes) [RHEL-147786]
- xhci: sideband: add api to trace sideband usage (Desnes Nunes) [RHEL-147786]
- usb: offload: add apis for offload usage tracking (Desnes Nunes) [RHEL-147786]
- usb: xhci-plat: separate dev_pm_ops for each pm_event (Desnes Nunes) [RHEL-147786]
- usb: dwc3: core: Introduce glue callbacks for flattened implementations (Desnes Nunes) [RHEL-147786]
- usb: host: tegra: Remove manual wake IRQ disposal (Desnes Nunes) [RHEL-147786]
- usb: host: xhci-tegra: Use platform_get_irq_optional() for wake IRQs (Desnes Nunes) [RHEL-147786]
- usb: xhci: tegra: Support USB wakeup function for Tegra234 (Desnes Nunes) [RHEL-147786]
- usb: udc: Add trace event for usb_gadget_set_state (Desnes Nunes) [RHEL-147786]
- usb: typec: tcpci: add wakeup support (Desnes Nunes) [RHEL-147786]
- dt-bindings: extcon: linux,extcon-usb-gpio: GPIO must be provided (Desnes Nunes) [RHEL-147786]
- redhat/configs: Adding CONFIG_EXTCON_MAX14526 (Desnes Nunes) [RHEL-147786]
- extcon: max14526: depends on I2C to prevent build warning/errors (Desnes Nunes) [RHEL-147786]
- extcon: max14526: avoid defined but not used warning (Desnes Nunes) [RHEL-147786]
- extcon: Add basic support for Maxim MAX14526 MUIC (Desnes Nunes) [RHEL-147786]
- dt-bindings: extcon: Document Maxim MAX14526 MUIC (Desnes Nunes) [RHEL-147786]
- usb: gadget: tegra-xudc: Remove redundant ternary operators (Desnes Nunes) [RHEL-147786]
- usb: core: support eUSB2 double bandwidth large isoc URB frames (Desnes Nunes) [RHEL-147786]
- usb: xhci: Add host support for eUSB2 double isochronous bandwidth devices (Desnes Nunes) [RHEL-147786]
- usb: core: Introduce usb_endpoint_is_hs_isoc_double() (Desnes Nunes) [RHEL-147786]
- usb: xhci: Use usb_endpoint_max_periodic_payload() (Desnes Nunes) [RHEL-147786]
- usb: core: Add a function to get USB version independent periodic payload (Desnes Nunes) [RHEL-147786]
- usb: core: eUSB2 companion descriptor is for isoc IN endpoints only (Desnes Nunes) [RHEL-147786]
- usb: core: Parse eUSB2 companion descriptors for high speed devices only (Desnes Nunes) [RHEL-147786]
- usb: core: Use le16_to_cpu() to read __le16 value in usb_parse_endpoint() (Desnes Nunes) [RHEL-147786]
- usb: typec: ucsi: Add check for UCSI version (Desnes Nunes) [RHEL-147786]
- usb: host: xhci-tegra: Remove redundant ternary operators (Desnes Nunes) [RHEL-147786]
- dt-bindings: usb: IXP4xx UDC bindings (Desnes Nunes) [RHEL-147786]
- usb: dwc3: Refactor dwc3_mode_show (Desnes Nunes) [RHEL-147786]
- usb: dwc3: Add trace event for dwc3_set_prtcap (Desnes Nunes) [RHEL-147786]
- usb: storage: realtek_cr: Simplify residue calculation in rts51x_bulk_transport() (Desnes Nunes) [RHEL-147786]
- usb: misc: Update link to EHSET pdf doc (Desnes Nunes) [RHEL-147786]
- usb: usblp: Use min_t() to improve usblp_read() (Desnes Nunes) [RHEL-147786]
- USB: serial: oti6858: remove extranenous ; after comment (Desnes Nunes) [RHEL-147786]
- thunderbolt: Use string choices helpers (Desnes Nunes) [RHEL-147786]
- mmc: rtsx_usb_sdmmc: use modern PM macros (Desnes Nunes) [RHEL-147786]
- mmc: rtsx_usb_sdmmc: Fix uninitialized variable issue (Desnes Nunes) [RHEL-147786]
- Documentation: driver-api: usb: Limit toctree depth (Desnes Nunes) [RHEL-147786]
- misc: rtsx: usb card reader: add OCP support (Desnes Nunes) [RHEL-147786]
- memstick: Add timeout to prevent indefinite waiting (Desnes Nunes) [RHEL-147786]
- misc: rtsx_pci: Add separate CD/WP pin polarity reversal support (Desnes Nunes) [RHEL-147786]
- usb: gadget: f_ncm: Fix MAC assignment NCM ethernet (Desnes Nunes) [RHEL-147786]
- USB: Check no positive return values from pm_runtime_resume_and_get() (Desnes Nunes) [RHEL-147786]
- usb: typec: ucsi: Add support for READ_POWER_LEVEL command (Desnes Nunes) [RHEL-147786]
- thunderbolt: Use is_pciehp instead of is_hotplug_bridge (Desnes Nunes) [RHEL-147786]
- PCI: Move is_pciehp check out of pciehp_is_native() (Desnes Nunes) [RHEL-147786]
- PCI: pciehp: Use is_pciehp instead of is_hotplug_bridge (Desnes Nunes) [RHEL-147786]
- PCI/portdrv: Use is_pciehp instead of is_hotplug_bridge (Desnes Nunes) [RHEL-147786]
- PCI/ACPI: Fix runtime PM ref imbalance on Hot-Plug Capable ports (Desnes Nunes) [RHEL-147786]
- PCI: Allow PCI bridges to go to D3Hot on all non-x86 (Desnes Nunes) [RHEL-147786]
- dt-bindings: usb: Drop duplicate nvidia,tegra20-ehci.txt (Desnes Nunes) [RHEL-147786]
- usb: dwc3: qcom: Remove extcon functionality from glue layer (Desnes Nunes) [RHEL-147786]
- USB: lower "Device is not authorized for usage" message to info (Desnes Nunes) [RHEL-147786]
- usb: dwc3: qcom: Add shutdown handler (Desnes Nunes) [RHEL-147786]
- thunderbolt: Use Linux Foundation IDs for XDomain discovery (Desnes Nunes) [RHEL-147786]
- phy: hisilicon: hi6220-usb: drop unused module alias (Desnes Nunes) [RHEL-147786]
- dt-bindings: phy: fsl,imx8mq-usb: Drop 'db' suffix duplicating dtschema (Desnes Nunes) [RHEL-147786]
- thunderbolt: Compare HMAC values in constant time (Desnes Nunes) [RHEL-147786]
- s390/ap: Expose ap_bindings_complete_count counter via sysfs (Mete Durlu) [RHEL-155897]
- redhat: genlog: add new JIRA cloud server hostname (Jan Stancek)
- ucount: check for CAP_SYS_RESOURCE using ns_capable_noaudit() (Ondrej Mosnacek) [RHEL-135610]
- ipc: don't audit capability check in ipc_permissions() (Ondrej Mosnacek) [RHEL-135610]
- x86/kexec: Copy ACPI root pointer address from config table (Baoquan He) [RHEL-130927]
- redhat: update RHEL_MINOR version for start of RHEL-9.9 development (Jarod Wilson)
- fs: use debug-only asserts around fd allocation and install (Ian Kent) [RHEL-133537]
- fs: fix fd table size alignment properly (Ian Kent) [RHEL-133537]
- fs: fd tables have to be multiples of BITS_PER_LONG (Ian Kent) [RHEL-133537]
- fs/file: fix the check in find_next_fd() (Ian Kent) [RHEL-133537]
- smb: client: fix oops due to uninitialised var in smb2_unlink() (Paulo Alcantara) [RHEL-153749]
- smb/client: remove unused SMB311_posix_query_info() (Paulo Alcantara) [RHEL-153749]
- smb/client: fix buffer size for smb311_posix_qinfo in SMB311_posix_query_info() (Paulo Alcantara) [RHEL-153749]
- smb/client: fix buffer size for smb311_posix_qinfo in smb2_compound_op() (Paulo Alcantara) [RHEL-153749]
- i2c: i801: Revert "i2c: i801: replace acpi_lock with I2C bus lock" (David Arcari) [RHEL-153431]
- x86/boot: Handle relative CONFIG_EFI_SBAT_FILE file paths (Jan Stancek) [RHEL-150459]
- ice: fix page leak for zero-size Rx descriptors (Petr Oros) [RHEL-152865]
- nfsd: use correct loop termination in nfsd4_revoke_states() (Olga Kornievskaia) [RHEL-117260]
- nfsd: check that server is running in unlock_filesystem (Olga Kornievskaia) [RHEL-117260]
- nfsd: add list_head nf_gc to struct nfsd_file (Roberto Bergantinos Corpas) [RHEL-152061]
- smb: client: fix broken multichannel with krb5+signing (Paulo Alcantara) [RHEL-143362]
- autofs: use wake_up() instead of wake_up_interruptible(() (Ian Kent) [RHEL-148438]
- autofs: fix memory leak of waitqueues in autofs_catatonic_mode (Ian Kent) [RHEL-148438] {CVE-2023-54134}
- cpufreq: intel_pstate: Fix crash during turbo disable (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Fix NULL pointer dereference in update_cpu_qos_request() (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Enable asym capacity only when CPU SMT is not possible (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Eliminate some code duplication (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Use mutex guard for driver locking (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Add Diamond Rapids OOB mode support (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Improve printing of debug messages (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: hybrid: Adjust energy model rules (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Add and use hybrid_has_l3() (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Add and use hybrid_get_cpu_type() (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Use likely() optimization in intel_pstate_sample() (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Enable HWP without EPP if DEC is enabled (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Adjust frequency percentage computations (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Rearrange freq QoS updates using __free() (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Remove EPB-related code (David Arcari) [RHEL-128576]
- cpufreq: intel_pstate: Rearrange variable declaration involving __free() (David Arcari) [RHEL-128576]
- tools/power cpupower: Show C0 in idle-info dump (David Arcari) [RHEL-128578]
- tools/power cpupower: Reset errno before strtoull() (David Arcari) [RHEL-128578]
- tools/cpupower: Use strcspn() to strip trailing newline (David Arcari) [RHEL-128578]
- tools/cpupower: Fix inverted APERF capability check (David Arcari) [RHEL-128578]
- cpupower: idle_monitor: fix incorrect value logged after stop (David Arcari) [RHEL-128578]
- tools/cpupower: Fix incorrect size in cpuidle_state_disable() (David Arcari) [RHEL-128578]
- tools/cpupower: fix error return value in cpupower_write_sysfs() (David Arcari) [RHEL-128578]
- intel_idle: Add C-states validation (David Arcari) [RHEL-128587]
- intel_idle: Add cmdline option to adjust C-states table (David Arcari) [RHEL-128587]
- intel_idle: Remove unnecessary address-of operators (David Arcari) [RHEL-128587]
- intel_idle: Remove unused driver version constant (David Arcari) [RHEL-128587]
- intel_idle: Remove the 'preferred_cstates' parameter (David Arcari) [RHEL-128587]
- intel_idle: Initialize sysfs after cpuidle driver initialization (David Arcari) [RHEL-128587]
- ALSA: aloop: Fix racy access at PCM trigger (CKI Backport Bot) [RHEL-150882] {CVE-2026-23191}
- powerpc/iommu: bypass DMA APIs for coherent allocations for pre-mapped memory (Mamatha Inamdar) [RHEL-149742]
- NFSD: Fix permission check for read access to executable-only files (Scott Mayhew) [RHEL-150983]
- net/handshake: duplicate handshake cancellations leak socket (Scott Mayhew) [RHEL-150978]
- NFSv4: Check for delegation validity in nfs_start_delegation_return_locked() (Lucas Oakley) [RHEL-148690]
- PCI/sysfs: Calculate bin_attribute size through bin_size() (Myron Stowe) [RHEL-137250]
- x86/kvm: Avoid freeing stack-allocated node in kvm_async_pf_queue_task (Ryosuke Yasuoka) [RHEL-125085]
- tools headers: Sync uapi/asm-generic/socket.h with the kernel sources (Davide Caratti) [RHEL-132649]
- selftests: txtimestamp: add SCM_TS_OPT_ID test (Davide Caratti) [RHEL-132649]
- net_tstamp: add SCM_TS_OPT_ID for RAW sockets (Davide Caratti) [RHEL-132649]
- net_tstamp: add SCM_TS_OPT_ID to provide OPT_ID in control message (Davide Caratti) [RHEL-132649]
- net-timestamp: make sk_tskey more predictable in error path (Davide Caratti) [RHEL-132649]
- net-timestamp: extend SOF_TIMESTAMPING_OPT_ID to HW timestamps (Davide Caratti) [RHEL-132649]
- ipv6: drop feature RTAX_FEATURE_ALLFRAG (Davide Caratti) [RHEL-132649]
- smc: Fix use-after-free in __pnet_find_base_ndev(). (Mete Durlu) [RHEL-126894] {CVE-2025-40064}
- RDMA/bnxt_re: convert timeouts to secs_to_jiffies() (Sreekanth Reddy) [RHEL-108696 RHEL-96539]
- RDMA/bnxt_re: Fix return code of bnxt_re_configure_cc (Sreekanth Reddy) [RHEL-108696 RHEL-96539]
- RDMA/bnxt_re: Fix missing error handling for tx_queue (Sreekanth Reddy) [RHEL-108696 RHEL-96539]
- RDMA/bnxt_re: Fix incorrect display of inactivity_cp in debugfs output (Sreekanth Reddy) [RHEL-108696 RHEL-96539]
- RDMA/bnxt_re: Fix the condition check while programming congestion control (Sreekanth Reddy) [RHEL-108696 RHEL-96539]
- RDMA/bnxt_re: Fix buffer overflow in debugfs code (Sreekanth Reddy) [RHEL-108696 RHEL-96539]
- RDMA/bnxt_re: Congestion control settings using debugfs hook (Sreekanth Reddy) [RHEL-108696 RHEL-96539]
- RDMA/bnxt_re: Use macro instead of hard coded value (Sreekanth Reddy) [RHEL-108696 RHEL-96539]
- RDMA/bnxt_re: Support 2G message size (Sreekanth Reddy) [RHEL-108696 RHEL-96539]
- RDMA/bnxt_re: Fix size of uverbs_copy_to() in BNXT_RE_METHOD_GET_TOGGLE_MEM (Sreekanth Reddy) [RHEL-108696 RHEL-96539]
- RDMA/bnxt_re: Support extended stats for Thor2 VF (Sreekanth Reddy) [RHEL-108696 RHEL-96539]
###
# The following Emacs magic makes C-c C-e use UTC dates.
# Local Variables:
# rpm-change-log-uses-utc: t
# End:
###