kernel/kernel.spec

5033 lines
240 KiB
RPMSpec
Executable File

# 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
# 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 433
%define kversion 5
%define tarfile_release 5.14.0-433.el9
# This is needed to do merge window version magic
%define patchlevel 14
# This allows pkg_release to have configurable %%{?dist} tag
%define specrelease 433%{?buildid}%{?dist}
# This defines the kabi tarball version
%define kabiversion 5.14.0-433.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-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}
# bpf tool
%define with_bpftool %{?_without_bpftool: 0} %{?!_without_bpftool: 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}
#
# ipa_clone support
%define with_ipaclones %{?_without_ipaclones: 0} %{?!_without_ipaclones: 1}
# 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 ipa_clone for now
%define with_ipaclones 0
# no stablelist
%define with_kernel_abi_stablelists 0
# Fedora builds these separately
%define with_perf 0
%define with_tools 0
%define with_bpftool 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}
# clang does not support the -fdump-ipa-clones option
%global with_ipaclones 0
%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
# kpatch_kcflags are extra compiler flags applied to base kernel
# -fdump-ipa-clones is enabled only for base kernels on selected arches
%if %{with_ipaclones}
%ifarch x86_64 ppc64le
%define kpatch_kcflags -fdump-ipa-clones
%else
%define with_ipaclones 0
%endif
%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_bpftool 0
%define with_kernel_abi_stablelists 0
%define with_selftests 0
%define with_cross 0
%define with_cross_headers 0
%define with_ipaclones 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_bpftool 0
%define with_kernel_abi_stablelists 0
%define with_selftests 0
%define with_cross 0
%define with_cross_headers 0
%define with_ipaclones 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_bpftool 0
%define with_kernel_abi_stablelists 0
%define with_selftests 0
%define with_cross 0
%define with_cross_headers 0
%define with_ipaclones 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
# selftests require bpftool to be built. If bpftools is disabled, then disable selftests
%if %{with_bpftool} == 0
%define with_selftests 0
%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_bpftool 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
%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/compressed/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 Image.gz
%define kernel_image arch/arm64/boot/Image.gz
%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_debuginfo 0
%define with_perf 0
%define with_tools 0
%define with_bpftool 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
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
%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: libbpf-devel >= 0.6.0-1
BuildRequires: libbabeltrace-devel
BuildRequires: libtraceevent-devel
%ifnarch %{arm} s390x
BuildRequires: numactl-devel
%endif
%ifarch aarch64
BuildRequires: opencsd-devel >= 1.0.0
%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
%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_bpftool}
BuildRequires: python3-docutils
BuildRequires: zlib-devel binutils-devel
%endif
%if %{with_selftests}
BuildRequires: clang llvm fuse-devel
%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-51.git20231114.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 TPM operations in UKI initramfs
BuildRequires: tpm2-tools
# For Azure CVM specific udev rules
BuildRequires: WALinuxAgent-cvm
# 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 redhatsecureboot501
%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
%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
Source84: mod-internal.list
Source85: mod-partner.list
Source86: mod-kvm.list
Source100: rheldup3.x509
Source101: rhelkpatch1.x509
Source102: rhelimaca1.x509
Source103: rhelima.x509
Source104: rhelima_centos.x509
Source105: nvidiagpuoot001.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
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\
%{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}/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
%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_bpftool}
%define bpftoolversion 7.3.0
%package -n bpftool
Summary: Inspection and simple manipulation of eBPF programs and maps
Version: %{bpftoolversion}
%description -n bpftool
This package contains the bpftool, which allows inspection and simple
manipulation of eBPF programs and maps.
%package -n bpftool-debuginfo
Summary: Debug information for package bpftool
Version: %{bpftoolversion}
Group: Development/Debug
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{specversion}-%{release}
AutoReqProv: no
%description -n bpftool-debuginfo
This package provides debug information for the bpftool package.
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_sbindir}/bpftool(\.debug)?|XXX' -o bpftool-debuginfo.list}
# Setting "Version:" above overrides the internal {version} macro,
# need to restore it here
%define version %{specversion}
# with_bpftool
%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}
#
# kernel-<variant>-ipaclones-internal package
#
%define kernel_ipaclones_package() \
%package %{?1:%{1}-}ipaclones-internal\
Summary: *.ipa-clones files generated by -fdump-ipa-clones for kernel%{?1:-%{1}}\
Group: System Environment/Kernel\
AutoReqProv: no\
%description %{?1:%{1}-}ipaclones-internal\
This package provides *.ipa-clones files.\
%{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}
%if %{with_realtime}
#
# this macro creates a kernel-<subpackage>-kvm package
# %%kernel_kvm_package <subpackage>
#
%define kernel_kvm_package() \
%package %{?1:%{1}-}kvm\
Summary: KVM modules for package kernel%{?1:-%{1}}\
Group: System Environment/Kernel\
Requires: kernel%{?1:-%{1}} = %{version}-%{release}\
Provides: installonlypkg(kernel-module)\
Provides: kernel%{?1:-%{1}}-kvm-%{_target_cpu} = %{version}-%{release}\
AutoReq: no\
%description -n kernel%{?1:-%{1}}-kvm\
This package provides KVM modules for package kernel%{?1:-%{1}}.\
%{nil}
%endif
#
# 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"\
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"\
%package %{?1:%{1}-}uki-virt\
Summary: %{variant_summary} unified kernel image for virtual machines\
Provides: installonlypkg(kernel)\
Provides: kernel-%{?1:%{1}-}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\
%endif\
%endif\
%if "%{1}" == "rt" || "%{1}" == "rt-debug"\
%{expand:%%kernel_kvm_package %{?1:%{1}}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
%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 !%{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 uki-virt
Prebuilt default unified kernel image for virtual machines.
%endif
%if %{with_ipaclones}
%kernel_ipaclones_package
%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} %{py3_shbang_opts}" -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
# 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
cat rheldup3.pem rhelkpatch1.pem rhelimaca1.pem nvidiagpuoot001.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
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}"
# add kpatch flags for base kernel
if [ "$Variant" == "" ]; then
KCFLAGS="$KCFLAGS %{?kpatch_kcflags}"
fi
}
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/Build $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/main.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
cp -a --parents tools/bpf/resolve_btfids/Build $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-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
%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
%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
if [ "$Variant" = "rt" ] || [ "$Variant" = "rt-debug" ]; then
# Identify modules in the kernel-rt-kvm package
%{SOURCE20} $RPM_BUILD_ROOT lib/modules/$KernelVer %{SOURCE86} kvm
fi
#
# 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 [ "$Variant" = "rt" ] || [ "$Variant" = "rt-debug" ]; then
# don't include anything going into kernel-rt-kvm in the file lists
xargs rm -rf < mod-kvm.list
fi
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" ]; then
popd
# RHEL/CentOS specific .SBAT entries
%if 0%{?centos}
SBATsuffix="centos"
%else
SBATsuffix="rhel"
%endif
SBAT=$(cat <<- EOF
linux,1,Red Hat,linux,$KernelVer,mailto:secalert@redhat.com
linux.$SBATsuffix,1,Red Hat,linux,$KernelVer,mailto:secalert@redhat.com
kernel-uki-virt.$SBATsuffix,1,Red Hat,kernel-uki-virt,$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
%if %{signkernel}
%if 0%{?centos}
UKI_secureboot_name=centossecureboot204
%else
UKI_secureboot_name=redhatsecureboot504
%endif
UKI_secureboot_cert=%{_datadir}/pki/sb-certs/secureboot-uki-virt-%{_arch}.cer
%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
# signkernel
%endif
pushd $RPM_BUILD_ROOT
# Variant != rt && Variant != rt-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 [ "$Variant" = "rt" ] || [ "$Variant" = "rt-debug" ]; then
rm -f $RPM_BUILD_ROOT/mod-kvm.list
fi
%if %{with_cross}
make -C $RPM_BUILD_ROOT/lib/modules/$KernelVer/build M=scripts 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_ipaclones}
MAXPROCS=$(echo %{?_smp_mflags} | sed -n 's/-j\s*\([0-9]\+\)/\1/p')
if [ -z "$MAXPROCS" ]; then
MAXPROCS=1
fi
if [ "$Variant" == "" ]; then
mkdir -p $RPM_BUILD_ROOT/$DevelDir-ipaclones
find . -name '*.ipa-clones' | xargs -i{} -r -n 1 -P $MAXPROCS install -m 644 -D "{}" "$RPM_BUILD_ROOT/$DevelDir-ipaclones/{}"
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
%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_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}
# 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}" 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 HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_STRLCPY=1 NO_BIONIC=1 LIBBPF_DYNAMIC=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}" %{make} %{?make_opts}
%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/iio/
%{tools_make}
popd
pushd tools/gpio/
%{tools_make}
popd
# build VM tools
pushd tools/vm/
%{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
%{tools_make}
popd
%endif
if [ -f $DevelDir/vmlinux.h ]; then
RPM_VMLINUX_H=$DevelDir/vmlinux.h
fi
%if %{with_bpftool}
%global bpftool_make \
%{__make} EXTRA_CFLAGS="${RPM_OPT_FLAGS}" EXTRA_LDFLAGS="%{__global_ldflags}" DESTDIR=$RPM_BUILD_ROOT %{?make_opts} VMLINUX_H="${RPM_VMLINUX_H}" V=1
pushd tools/bpf/bpftool
%{bpftool_make}
popd
%else
echo "bpftools disabled ... disabling selftests"
%endif
%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
# Prevent bpf selftests to build bpftool repeatedly:
export BPFTOOL=$(pwd)/tools/bpf/bpftool/bpftool
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 mm livepatch net net/forwarding net/mptcp netfilter tc-testing memfd drivers/net/bonding" 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/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
%buildroot_save_unstripped "usr/libexec/kselftests/bpf/test_progs"
%buildroot_save_unstripped "usr/libexec/kselftests/bpf/test_progs-no_alu32"
popd
export -n BPFTOOL
%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_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}
%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/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/vm/
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 [ -f $DevelDir/vmlinux.h ]; then
RPM_VMLINUX_H=$DevelDir/vmlinux.h
fi
%if %{with_bpftool}
pushd tools/bpf/bpftool
%{bpftool_make} prefix=%{_prefix} bash_compdir=%{_sysconfdir}/bash_completion.d/ mandir=%{_mandir} install doc-install
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 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/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 netfilter selftests
pushd tools/testing/selftests/netfilter
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/netfilter/{} \;
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/netfilter/{} \;
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/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
%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"\
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}
%if %{with_realtime}
#
# This macro defines a %%post script for a kernel*-kvm package.
# It also defines a %%postun script that does the same thing.
# %%kernel_kvm_post [<subpackage>]
#
%define kernel_kvm_post() \
%{expand:%%post %{?1:%{1}-}kvm}\
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
%{nil}\
%{expand:%%postun %{?1:%{1}-}kvm}\
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
%{nil}
%endif
#
# 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 %{_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}}"\
dracut -f --kver "%{KVERREL}%{?1:+%{1}}" || 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\
%if "%{-v*}" == "rt" || "%{-v*}" == "rt-debug"\
%{expand:%%kernel_kvm_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]
#
%define kernel_variant_preun(v:u:) \
%{expand:%%preun %{?-v:%{-v*}-}%{!?-u*:core}%{?-u*:uki-%{-u*}}}\
/bin/kernel-install remove %{KVERREL}%{?-v:+%{-v*}} || 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
%endif
%kernel_variant_preun
%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_debug}
%if %{efiuki}
%kernel_variant_posttrans -v debug -u virt
%kernel_variant_preun -v debug -u virt
%endif
%kernel_variant_preun -v debug
%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}/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.1.gz
# with_tools
%endif
%if %{with_bpftool}
%files -n bpftool
%{_sbindir}/bpftool
%{_sysconfdir}/bash_completion.d/bpftool
%{_mandir}/man8/bpftool-cgroup.8.gz
%{_mandir}/man8/bpftool-gen.8.gz
%{_mandir}/man8/bpftool-iter.8.gz
%{_mandir}/man8/bpftool-link.8.gz
%{_mandir}/man8/bpftool-map.8.gz
%{_mandir}/man8/bpftool-prog.8.gz
%{_mandir}/man8/bpftool-perf.8.gz
%{_mandir}/man8/bpftool.8.gz
%{_mandir}/man8/bpftool-net.8.gz
%{_mandir}/man8/bpftool-feature.8.gz
%{_mandir}/man8/bpftool-btf.8.gz
%{_mandir}/man8/bpftool-struct_ops.8.gz
%if %{with_debuginfo}
%files -f bpftool-debuginfo.list -n bpftool-debuginfo
%defattr(-,root,root)
%endif
%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}}\
/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 "%{3}" == "rt" || "%{3}" == "rt-debug"\
%{expand:%%files %{?3:%{3}-}kvm}\
/lib/modules/%{KVERREL}%{?3:+%{3}}/kvm\
%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"\
%{expand:%%files %{?3:%{3}-}uki-virt}\
%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*\
/lib/modules/%{KVERREL}%{?3:+%{3}}/%{?-k:%{-k*}}%{!?-k:vmlinuz}-virt.efi\
%ghost /%{image_install_path}/efi/EFI/Linux/%{?-k:%{-k*}}%{!?-k:*}-%{KVERREL}%{?3:+%{3}}.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_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
%define kernel_variant_ipaclones(k:) \
%if %{1}\
%if %{with_ipaclones}\
%{expand:%%files %{?2:%{2}-}ipaclones-internal}\
%defattr(-,root,root)\
%defverify(not mtime)\
/usr/src/kernels/%{KVERREL}%{?2:+%{2}}-ipaclones\
%endif\
%endif\
%{nil}
%kernel_variant_ipaclones %{with_up}
# plz don't put in a version string unless you're going to tag
# and build.
#
#
%changelog
* Mon Mar 25 2024 Scott Weaver <scweaver@redhat.com> [5.14.0-433.el9]
- arm64: dts: ti: k3-j721e-sk: fix PMIC interrupt number (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: fix PMIC interrupt number (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62p5-sk: Enable CPSW MDIO node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62p-mcu/wakeup: Disable MCU and wakeup R5FSS nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: remove assigned-clock-parents for unused VP (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62p: Fix memory ranges for DMSS (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add common1 register space for AM62x SoC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-common-proc-board: Remove Pinmux for CTS and RTS in wkup_uart0 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-common-proc-board: Remove clock-frequency from mcu_uart0 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-common-proc-board: Modify Pinmux for wkup_uart0 and mcu_uart0 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Remove Pinmux for CTS and RTS in wkup_uart0 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: am65x: Fix dtbs_install for Rocktech OLDI overlay (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Fix power domain for VTM node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4: Fix power domain for VTM node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: disable usb lpm (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-main: Add Itap Delay Value For DDR50 speed mode (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-main: Add Itap Delay Value For DDR50 speed mode (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-main: Add Itap Delay Value For DDR52 speed mode (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am6*: Add additional regs for DMA components (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7*: Add additional regs for DMA components (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Add additional regs for DMA components (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Add GPU device node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-evm: Add overlay for PCIE1 Endpoint Mode (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-evm: Add overlay for PCIE0 Endpoint Mode (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-sk: Add TPS6594 family PMICs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: Add support for TPS6594 PMIC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Add support for TPS6594 PMIC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-som-p0: Add TP6594 family PMICs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-som-p0: Add TP6594 family PMICs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-som-p0: Add TP6594 family PMICs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add verdin am62 mallow board (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: verdin-am62: Improve spi1 chip-select pinctrl (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-phyboard-lyra-rdk: Remove HDMI Reset Line Name (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-phyboard-lyra-rdk: Add HDMI support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-phyboard-lyra-rdk: Lower I2C1 frequency (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: phycore-am64: Add R5F DMA Region and Mailboxes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Use OF_ALL_DTBS for combined blobs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62x: Add overlay for IMX219 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7-sk: Enable camera peripherals (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62x: Add overlays for OV5640 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62x-sk: Enable camera peripherals (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-beagleplay: Add overlays for OV5640 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a-main: Enable CSI2-RX (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Enable CSI2-RX (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Add AM652 dtsi file (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-beagleplay: Use UART name in pinmux name (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Add gpio-ranges properties (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-verdin: Enable Verdin UART2 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable SDHCI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable SDHCI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Add full compatible to dss-oldi-io-ctrl node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Add chipid node to wkup_conf bus (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Add chipid node to wkup_conf bus (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Add chipid node to wkup_conf bus (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4: Add chipid node to wkup_conf bus (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Add chipid node to wkup_conf bus (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7-sk: Add interrupt support for IO Expander (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am68-sk-base-board: Add alias for MCU CPSW2G (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Add icssg-prueth nodes for PG2 devices (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Refactor the m.2 and minipcie power pin (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Definitions for runtime pinmuxing (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Drop unused ecap0 PWM (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Re-add aliases (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62x-sk-common: Mark mcu gpio and mcu_gpio_intr as reserved (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62p5-sk: Mark mcu gpio and mcu_gpio_intr as reserved (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-evm/sk: Mark mcu_gpio_intr as reserved (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: Fix typo in epwm_tbclk node name (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-main: Fix DSS irq trigger type (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: minor whitespace cleanup around '=' (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a-main: Fix GPIO pin count in DT nodes (Andrew Halaney) [RHEL-25014]
- dts: ti: k3-am625-beagleplay: Add beaglecc1352 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am654-idk: Add ICSSG Ethernet ports (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am654-icssg2: add ICSSG2 Ethernet support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-main: Add ICSSG IEP nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62p5-sk: Updates for SK EVM (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62p: Add nodes for more IPs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: Add DP and HDMI support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Enable DisplayPort-0 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-main: Add DSS and DP-bridge node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-main: Add WIZ and SERDES PHY nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-main: Add system controller and SERDES lane mux (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j712s2-mcu: Add the mcu domain watchdog instances (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-main: Add the main domain watchdog instances (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-mcu: Add the mcu domain watchdog instances (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-main: Add the main domain watchdog instances (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Add MCU domain ESM instance (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4: Add ESM instances (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Add ESM instances (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-main: Add BCDMA instance for CSI2RX (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-main: Add BCDMA instance for CSI2RX (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-*: Convert NAVSS to simple-bus (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-*: Convert DMSS to simple-bus (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Fix HDMI Audio overlay in Makefile (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7-sk: Enable audio on AM62A (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7-sk: Add support for TPS6593 PMIC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7-sk: Drop i2c-1 to 100Khz (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7-sk: Split vcc_3v3 regulators (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a-main: Add nodes for McASP (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-tqma64xxl-mbax4xxl: update gpio-led configuration (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-tqma64xxl-mbax4xxl: add chassis-type (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-tqma64xxl-mbax4xxl: add muxing for GPIOs on pin headers (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-tqma64xxl: add supply regulator for I2C devices (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: Add DDR carveout memory nodes for C71x DSP (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: Add DDR carveout memory nodes for R5F (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am68-sk-som: Add DDR carveout memory nodes for C71x DSP (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am68-sk-som: Add DDR carveout memory nodes for R5F (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-som-p0: Add DDR carveout memory nodes for C71x DSPs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-som-p0: Add DDR carveout memory nodes for R5F (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-main: Add C7x remote processsor nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-main: Add MAIN R5F remote processsor nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-mcu: Add MCU R5F cluster nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-mcu-wakeup: Add MCU domain ESM instance (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-beagleplay: Fix typo in ramoops reg (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Add GPIO expander on I2C0 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am68-sk: Add DT node for USB (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am68-sk: Add DT node for PCIe (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add USB Type C swap defines for J721S2 SoC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: verdin-am62: disable MIPI DSI bridge (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am654-base-board: Add I2C I/O expander (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: phycore-am64: Add RTC interrupt pin (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Fix indentation in watchdog nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-evm-gesi: Specify base dtb for overlay file (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-sk: Add boot phase tags marking (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-evm: Add boot phase tags marking (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Add phase tags marking (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-sk: Add boot phase tags marking (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-beagleplay: Add boot phase tags marking (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625: Add boot phase tags marking (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: verdin-am62: add iw416 based bluetooth (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: verdin-am62: Add DSI display support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add support for the AM62P5 Starter Kit (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Introduce AM62P5 family of SoCs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: Add phase tags marking (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Add phase tags marking (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4: Add phase tags marking (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-beagleplay: Add HDMI support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: am62x-sk: Add overlay for HDMI audio (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62x-sk-common: Add HDMI support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Add node for DSS (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62x-sk-common: Update main-i2c1 frequency (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable C6x DSP nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4: Enable C7x DSP nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable C7x DSP nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-*: fix fss node dtbs check warnings (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable TSCADC nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable TSCADC nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable TSCADC nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Enable GPIO nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Enable GPIO nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable GPIO nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable OSPI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Enable OSPI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable OSPI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable OSPI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Enable SDHCI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Enable SDHCI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable SDHCI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4: Fix interrupt ranges for wkup & main gpio (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3: Add cfg reg region to ringacc node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Correct Pin mux offset for ADC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: verdin-am62: dahlia: add sound card (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: verdin-am62: dev: add sound card (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: verdin-am62: Set I2S_1 MCLK rate (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Enable AUDIO_REFCLKx (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: correct pinmux offset for ospi (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Correct Pin mux offset for ospi (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7: Add MCU MCAN nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am68-sk-base-board: Add HDMI support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-main: Add DSS node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3: Fix epwm_tbclk node name to generic name (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Merge the two main_conf nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a: Remove syscon compatible from epwm_tbclk (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7-sk: Enable dual role support for Type-C port (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-verdin: enable CAN_2 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Add MCU MCAN nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3: Fixup remaining pin group node names for make dtbs checks (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-tqma64xxl-mbax4xxl: add SD-card and WLAN overlays (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add TQ-Systems TQMa64XxL SoM and MBaX4XxL carrier board Device Trees (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Add overlay to enable main CPSW2G with GESI (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-main: Add main CPSW2G devicetree node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Add Support for UFS peripheral (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-main: Add DT node for UFS (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Add support for CAN instances 3 and 5 in main domain (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Add overlay to enable CPSW9G ports with GESI (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-main: Add dts nodes for EHRPWMs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-pinctrl: Introduce debounce select mux macros (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Remove power-domains from crypto node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Use local header for SERDES MUX idle-state values (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-som-p0: Remove Duplicated wkup_i2c0 node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Fix compatible of ti,*-ehrpwm-tbclk (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: add missing space before { (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: minor whitespace cleanup around '=' (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Unify pin group node names for make dtbs checks (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: add verdin am62 yavia (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: add verdin am62 dahlia (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: add verdin am62 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add basic support for phyBOARD-Lyra-AM625 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-som-p0: Enable wakeup_i2c0 and eeprom (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-som-p0: Enable wakeup_i2c0 and eeprom (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Add ESM support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Add ESM support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Add ESM support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Add ESM support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-mcu-wakeup: Remove 0x unit address prefix from nodename (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-common-proc-board: Add uart pinmux (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am68-sk-som: Enable wakeup_i2c0 and eeprom (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am68-sk-base-board: Add uart pinmux (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am68-sk-base-board: Add pinmux for RPi Header (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Fix wkup pinmux range (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Drop SoC level aliases (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-common-proc-board: Define aliases at board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-common-proc-board: Add uart pinmux (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-common-proc-board: remove duplicate main_i2c0 pin mux (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Configure pinctrl for timer IO pads (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Add general purpose timers (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: Add pinmux for RPi Header (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Use phandle to stdout UART node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Only set UART baud for used ports (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Drop SoC level aliases (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-common-proc-board: Define aliases at board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-sk: Define aliases at board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-beagleboneai64: Add wakeup_uart pinmux (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-som-p0: Enable wakeup_i2c0 and eeprom (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j721e-common-proc-board: Add uart pinmux (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j721e-som/common-proc-board: Add product links (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-sk: Enable wakeup_i2c0 and eeprom (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-sk: Add missing uart pinmuxes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am68-sk-base-board: Fixup reference to phandles array (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am654-base-board: Fixup reference to phandles array (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-iot*: Fixup reference to phandles array (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-sk: Fixup reference to phandles array (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-evm: Fixup reference to phandles array (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-sk: Fixup reference to phandles array (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: Add eMMC mmc0 support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Change CPTS clock parent (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: Enable wakeup_i2c0 and eeprom (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: Add mcu and wakeup uarts (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: Enable mcu network port (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am69-sk: Fix main_i2c0 alias (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Enable wakeup_i2c0 and eeprom (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Add mcu and wakeup uarts (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Fix main_i2c0 alias (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4: Fix wakeup pinmux range and pinctrl node offsets (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-common-proc-board: Fixup reference to phandles array (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-som/common-proc-board: Fixup reference to phandles array (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-phyboard-electra-rdk: Fixup reference to phandles array (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-beagleboneai64: Fixup reference to phandles array (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-beagleboneai64: Move eeprom WP gpio pinctrl to eeprom node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-beagleboneai64: Move camera gpio pinctrl to gpio node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-som-p0/common-proc-board: Fixup reference to phandles array (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-sk: Fixup reference to phandles array (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4: Configure pinctrl for timer IO (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4: Add general purpose timers (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Configure pinctrl for timer IO (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Add general purpose timers (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Configure pinctrl for timer IO (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Add general purpose timers (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-mcu-wakeup: Add sa3_secproxy and mcu_sec_proxy (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-mcu-wakeup: Add sa3_secproxy and mcu_sec_proxy (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-mcu: Add mcu_secproxy (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-iot2050-common: Rename rtc8564 nodename (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-main: Drop deprecated ti,otap-del-sel property (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-main: Fix mcan node name (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-mcu: Add mcu_secproxy (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-mcu: Add mcu_secproxy (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a-main: Add sa3_secproxy (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Add sa3_secproxy (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-sk/evm: Describe OSPI flash partition info (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am654-baseboard: Describe OSPI flash partition info (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-som: Describe OSPI and Hyperflash partition info (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-sk: Describe OSPI flash partition info (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Describe OSPI and QSPI flash partition info (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-common-proc-board: Add OSPI/Hyperflash select pinmux (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add LED controller to phyBOARD-Electra (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Add support for OSPI and QSPI flashes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-mcu-wakeup: Add FSS OSPI0 and FSS OSPI1 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable MDIO nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable Mailbox nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable PCIe nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Remove PCIe endpoint nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-beagleboneai64: Fix mailbox node status (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-common-proc-board: Add OSPI/Hyperflash select pinmux (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-som-p0: Add HyperFlash node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-mcu-wakeup: Add HyperBus node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: am65x: Add Rocktech OLDI panel DT overlay (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-main: Enable support for high speed modes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Add pinmux information for ADC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-mcu-wakeup: Add support for ADC nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-main: Update delay select values for MMC subsystems (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62x-sk-common: Improve documentation of mcasp1_pins (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62x-sk-common: Add eeprom (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62x-sk-common: Describe main_uart1 and wkup_uart (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62x-sk-common: Drop extra EoL (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3: j721s2/j784s4: Switch to https links (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j721s2: Add VTM node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j7200: Add VTM node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j721e: Add VTM node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j784s4: Add VTM node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a-wakeup: add VTM node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-wakeup: add VTM node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: add VTM node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-common-proc-board: Enable PCIe (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-main: Add PCIe device tree node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Add support for OSPI Flashes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-common-proc-board: Add USB support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-common-proc-board: Enable SERDES0 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-mcu-wakeup: Add support of OSPI (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-main: Add SERDES and WIZ device tree node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-main: Add support for USB (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625: Enable Type-C port for USB0 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Reserve memory for remote proc IPC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-main: Add C71x DSP nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-main: Add R5F cluster nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7-sk: Describe main_uart1 and wkup_uart (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-som: Enable I2C (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Fix physical address of pin (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-main: Remove "syscon" nodes added for pcieX_ctrl (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: add missing cache properties (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Drop aliases (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am654-base-board: Add aliases (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am654-base-board: Add board detect eeprom (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am654-base-board: Add missing PMIC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am654-base-board: Add VTT GPIO regulator for DDR (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am654-base-board: Rename regulator node name (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am654-base-board: Add missing pinmux wkup_uart, mcu_uart and mcu_i2c (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a: Add watchdog nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a: Add general purpose timers (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-common-proc-board: Drop bootargs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-common-proc-board: Drop bootargs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-*: Drop bootargs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65*: Drop bootargs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62x-sk-common: Drop bootargs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-sk|evm: Drop bootargs, add aliases (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-evm: Add VTT GPIO regulator for DDR (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-evm: Rename regulator node name (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-evm: Describe main_uart1 pins (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-evm: Enable main_i2c0 and eeprom (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-sk: Rename regulator node name (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-sk: Describe main_uart1 pins (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-sk: Enable main_i2c0 and eeprom (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-sk: Fix mmc1 pinmux (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Add general purpose timers (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Add eMMC mmc0 support (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Enable audio on SK-AM62(-LP) (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Add McASP nodes (Andrew Halaney) [RHEL-25014]
- arm64: ti: dts: Add support for AM62x LP SK (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Refractor AM625 SK dts (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-sk: Add ti,vbus-divider property to usbss1 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4: Add MCSPI nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Add MCSPI nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Add MCSPI nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Add MCSPI nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add k3-am625-beagleplay (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am68-sk-base-board: Update IO EXP GPIO lines for Rev E2 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Add overlay to enable CPSW5G ports in QSGMII mode (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j7200-main: Add CPSW5G nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Add overlay to enable CPSW9G ports in QSGMII mode (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Add watchdog nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-wakeup: Introduce RTC node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-common-proc-board: Add pinmux information for ADC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Add CPSW9G nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-evm: Enable MCU CPSW2G (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-mcu-wakeup: Add support for ADC nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-main: Enable crypto accelerator (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Use local header for pinctrl register values (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-sk: Remove firmware-name override for R5F (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7: Correct L2 cache size to 512KB (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625: Correct L2 cache size to 512KB (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j784s4-*: Add 'ti,sci-dev-id' for NAVSS nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-main: Remove ti,strobe-sel property (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7-sk: Fix DDR size to full 4GB (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Fix GPIO numbers in DT (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Makefile: Rearrange entries alphabetically (Andrew Halaney) [RHEL-25014]
- arch: arm64: dts: Add support for AM69 Starter Kit (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Add support for M.2 variant (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Add layout of OSPI flash (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Fix wakeup pinmux range (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am68-sk: Add support for AM68 SK base board (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add initial support for AM68 SK System on Module (Andrew Halaney) [RHEL-25014]
- arm64: dts: Update cache properties for ti (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add support for phyBOARD-Electra-AM642 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add support for J784S4 EVM board (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7-sk: Enable USB1 node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a7-sk: Enable ethernet port (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a-main: Add more peripheral nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62a-mcu: Add MCU domain peripherals (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add initial support for J784S4 SoC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-sk: Add support for USB (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Add support for USB (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Update OTAP and ITAP delay select (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Fix clocks for McSPI (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add k3-j721e-beagleboneai64 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-main: Enable crypto accelerator (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: Drop RNG clock (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-main: Drop RNG clock (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-main: Drop RNG clock (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j721e-common-proc-board: Fix sound node-name (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Fix the interrupt ranges property for main & wkup gpio intr (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-mcu-wakeup: Drop dma-coherent in crypto node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-main: Drop dma-coherent in crypto node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-main: Drop dma-coherent in crypto node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Add general purpose timers for am62 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Add general purpose timers for am65 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Configure pinctrl for timer IO pads (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Trim addresses to 8 digits (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-sk: Add pinmux for RPi Header (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-main: Add dts nodes for EHRPWMs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-sk: Add 1.4GHz OPP (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625: Introduce operating-points table (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable McASP nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable Mailbox nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable PCIe nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable MCAN nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable MDIO nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: MDIO pinmux should belong to the MDIO node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable ECAP nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable EPWM nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable SPI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable I2C nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Enable UART nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Rename clock-names adc_tsc_fck to fck (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Enable I2C nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Enable MCAN nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Enable Mailbox nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Enable Mailbox nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable Mailbox nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Enable UART nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Enable I2C nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Enable UART nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable MCAN nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable MCASP nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable I2C nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Enable UART nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Enable OSPI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Enable SDHCI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Enable MCAN nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Enable MDIO nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: MDIO pinmux should belong to the MDIO node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Enable ECAP nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Enable EPWM nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Enable SPI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Enable I2C nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Enable UART nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable GPMC and ELM nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable MCAN nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable MDIO nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: MDIO pinmux should belong to the MDIO node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable PCIe nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable ECAP nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable EPWM nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable SPI nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable I2C nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Enable UART nodes at the board level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: fix main pinmux range (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add support for AM62A7-SK (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Introduce AM62A7 family of SoCs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-sk: Add epwm nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Add epwm nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-sk: Add DT entry for onboard LEDs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-mcu-wakeup: Add SA2UL node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-main: Do not exclusively claim SA2UL (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-main: Move SA2UL to unused PSI-L thread ID (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-main: Disable RNG node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-main: Add main domain watchdog entries (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: Add ELM (Error Location Module) node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: Add GPMC memory controller node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-main: fix RNG node clock id (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: Enable crypto accelerator (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Add SA2UL address space to Main CBASS ranges (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: Add main_cpts label (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-main: Enable crypto accelerator (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-sk: Enable ramoops (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-sk: Add pinmux corresponding to main_uart0 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Align gpio-key node names with dtschema (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Adjust whitespace around '=' (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: Remove support for HS400 speed mode (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Fix overlapping GICD memory region (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-sk: Enable HDMI (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-sk: Enable DisplayPort (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-common-proc-board: add DP to j7 evm (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-*: add DP & DP PHY (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Add SA3UL ranges in cbass_main (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Add support for MCAN (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62-mcu: Enable MCU GPIO module (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-sk: Add ECAP APWM nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am625-sk: Enable on board peripherals (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am62: Add more peripheral nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-mcu: remove incorrect UART base clock rates (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-sk: Enable WLAN connected to SDHCI0 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add support for AM62-SK (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Introduce base support for AM62x SoC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-*: Drop address and size cells from flash nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-*: Fix whitespace around flash@0 nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Fix gic-v3 compatible regs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Fix gic-v3 compatible regs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Fix gic-v3 compatible regs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Fix gic-v3 compatible regs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Fix gic-v3 compatible regs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-mcu-wakeup: Fix the interrupt-parent for wkup_gpioX instances (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64: Add ESM0 to device memory map (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65*: Remove #address-cells/#size-cells from flash nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: Add RTI watchdog nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2-common-proc-board: Alias console uart to serial2 (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721s2: Move aliases to board dts (Andrew Halaney) [RHEL-25014]
- arch: arm64: ti: Add support J721S2 Common Processor Board (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add initial support for J721S2 System on Module (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add initial support for J721S2 SoC (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Disable mcasp nodes at dtsi level (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-evm/sk: Add support for main domain mcan nodes in EVM and disable them on SK (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: Add support for MCAN (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-common-proc-board: Add support for mcu and main mcan nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Add support for MCAN nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: am654-base-board/am65-iot2050-common: Disable mcan nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-mcu: Add Support for MCAN (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: add timesync router node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Correct the d-cache-sets info (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: Fix the L2 cache sets (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200: Fix the L2 cache sets (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642: Fix the L2 cache sets (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j721e-main: Fix 'dtbs_check' in serdes_ln_ctrl node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j7200-main: Fix 'dtbs_check' serdes_ln_ctrl node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e: correct cache-sets info (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-sk: Add DDR carveout memory nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-sk: Add IPC sub-mailbox nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Add support for J721E SK (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Add support for product generation 2 boards (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Prepare for adding 2nd-generation boards (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Add/enabled mailboxes and carve-outs for R5F cores (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Disable SR2.0-only PRUs (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: iot2050: Flip mmc device ordering on Advanced devices (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j7200-common-proc-board: Add j7200-evm compatible (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-common-proc-board: Add j721e-evm compatible (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: Add ICSSG nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: Makefile: Collate AM64 platforms together (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65: Relocate thermal-zones to SoC specific location (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: ti-k3*: Introduce aliases for mmc nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am65-main: Cleanup "ranges" property in "pcie" DT node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j7200-main: Add *max-virtual-functions* for pcie-ep DT node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j7200-main: Fix "bus-range" upto 256 bus number for PCIe (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: j7200-main: Fix "vendor-id"/"device-id" properties of pcie node (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-main: Fix "bus-range" upto 256 bus number for PCIe (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-j721e-main: Fix "max-virtual-functions" in PCIe EP nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-mcu: Add pinctrl (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-sk: Add pwm nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am642-evm: Add pwm nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: Add ecap pwm nodes (Andrew Halaney) [RHEL-25014]
- arm64: dts: ti: k3-am64-main: Add epwm nodes (Andrew Halaney) [RHEL-25014]
- kbuild: Cleanup DT Overlay intermediate files as appropriate (Andrew Halaney) [RHEL-25014]
- kbuild: Allow DTB overlays to built into .dtbo.S files (Andrew Halaney) [RHEL-25014]
- kbuild: Allow DTB overlays to built from .dtso named source files (Andrew Halaney) [RHEL-25014]
- tools/rtla: Exit with EXIT_SUCCESS when help is invoked (John Kacur) [RHEL-28660]
- tools/rtla: Replace setting prio with nice for SCHED_OTHER (John Kacur) [RHEL-28660]
- tools/rtla: Remove unused sched_getattr() function (John Kacur) [RHEL-28660]
- tools/rtla: Fix clang warning about mount_point var size (John Kacur) [RHEL-28660]
- tools/rtla: Fix uninitialized bucket/data->bucket_size warning (John Kacur) [RHEL-28660]
- tools/rtla: Fix Makefile compiler options for clang (John Kacur) [RHEL-28660]
- tools/rv: Fix curr_reactor uninitialized variable (John Kacur) [RHEL-28660]
- tools/rv: Fix Makefile compiler options for clang (John Kacur) [RHEL-28660]
- netfs, fscache: Prevent Oops in fscache_put_cache() (Pavel Reichl) [RHEL-28890] {CVE-2024-26612}
- bnx2fc: Remove spin_lock_bh while release resources after upload. (John Meneghini) [RHEL-9662]
- ice: fold ice_ptp_read_time into ice_ptp_gettimex64 (Michal Schmidt) [RHEL-19000]
- ice: avoid the PTP hardware semaphore in gettimex64 path (Michal Schmidt) [RHEL-19000]
- ice: add ice_adapter for shared data across PFs on the same NIC (Michal Schmidt) [RHEL-19000]
- overlay: disable EVM (Coiby Xu) [RHEL-29566]
- evm: add support to disable EVM on unsupported filesystems (Coiby Xu) [RHEL-29566]
- evm: don't copy up 'security.evm' xattr (Coiby Xu) [RHEL-29566]
- mm, vmscan: remove ISOLATE_UNMAPPED (Nico Pache) [RHEL-28667]
- trace-vmscan-postprocess: sync with tracepoints updates (Nico Pache) [RHEL-28667]
- tracing: incorrect isolate_mote_t cast in mm_vmscan_lru_isolate (Nico Pache) [RHEL-28667]
- mm/mglru: skip special VMAs in lru_gen_look_around() (Nico Pache) [RHEL-28667]
- mm/mglru: reclaim offlined memcgs harder (Nico Pache) [RHEL-28667]
- mm/mglru: try to stop at high watermarks (Nico Pache) [RHEL-28667]
- mm/mglru: fix underprotected page cache (Nico Pache) [RHEL-28667]
- mm: multi-gen LRU: reuse some legacy trace events (Nico Pache) [RHEL-28667]
- mm: multi-gen LRU: improve design doc (Nico Pache) [RHEL-28667]
- mm: multi-gen LRU: clean up sysfs code (Nico Pache) [RHEL-28667]
- printk: allow disabling printk per-console device kthreads at boot (Luis Claudio R. Goncalves) [RHEL-17709]
- powerpc/pseries/iommu: IOMMU table is not initialized for kdump over SR-IOV (Mamatha Inamdar) [RHEL-25055]
- IB/hfi1: Fix sdma.h tx->num_descs off-by-one error (Daniel Vacek) [RHEL-26063]
- ASoC: Intel: soc-acpi: rt713+rt1316, no sdw-dmic config (Jaroslav Kysela) [RHEL-26456]
- hv_netvsc: Register VF in netvsc_probe if NET_DEVICE_REGISTER missed (Maxim Levitsky) [RHEL-26435]
- hv_netvsc: Fix race condition between netvsc_probe and netvsc_remove (Maxim Levitsky) [RHEL-26435]
- mlxsw: spectrum_acl_tcam: Fix stack corruption (Ivan Vecera) [RHEL-26463] {CVE-2024-26586}
* Wed Mar 20 2024 Lucas Zampieri <lzampier@redhat.com> [5.14.0-432.el9]
- mm/page_alloc: don't wake kswapd from rmqueue() unless __GFP_KSWAPD_RECLAIM is specified (Waiman Long) [RHEL-24120]
- debugobjects: Recheck debug_objects_enabled before reporting (Waiman Long) [RHEL-24120]
- debugobjects: Don't wake up kswapd from fill_pool() (Waiman Long) [RHEL-24120]
- RDMA/cma: Avoid GID lookups on iWARP devices (Benjamin Coddington) [RHEL-12457]
- RDMA/cma: Deduplicate error flow in cma_validate_port() (Benjamin Coddington) [RHEL-12457]
- RDMA/core: Set gid_attr.ndev for iWARP devices (Benjamin Coddington) [RHEL-12457]
- RDMA/siw: Fabricate a GID on tun and loopback devices (Benjamin Coddington) [RHEL-12457]
- redhat: Enable -Werror for aarch64 (Eric Chanudet) [RHEL-29316]
- redhat: redhat/Makefile: include the subtrees merge script in the makefiles (Derek Barbosa)
- crypto: dh - implement FIPS PCT (Vladis Dronov) [RHEL-25845]
- crypto: tcrypt - add ffdhe2048(dh) test (Vladis Dronov) [RHEL-25845]
- crypto: dh - Make public key test FIPS-only (Vladis Dronov) [RHEL-25845]
- tools/resolve_btfids: Fix cross-compilation to non-host endianness (Viktor Malik) [RHEL-16042]
- tools/resolve_btfids: Refactor set sorting with types from btf_ids.h (Viktor Malik) [RHEL-16042]
- powerpc/mm: Fix null-pointer dereference in pgtable_cache_add (Mamatha Inamdar) [RHEL-29120] {CVE-2023-52607}
- gfs2: Fix invalid metadata access in punch_hole (Andrew Price) [RHEL-28241]
- i2c: Fix a potential use after free (David Arcari) [RHEL-26851] {CVE-2019-25162}
- i2c: i801: Fix block process call transactions (David Arcari) [RHEL-26479] {CVE-2024-26593}
- sched/membarrier: reduce the ability to hammer on sys_membarrier (Wander Lairson Costa) [RHEL-23428] {CVE-2024-26602}
* Mon Mar 18 2024 Lucas Zampieri <lzampier@redhat.com> [5.14.0-431.el9]
- pinctrl: bcm2835: Handle gpiochip_add_pin_range() errors (Eric Chanudet) [RHEL-28621]
- pinctrl-bcm2835.c: fix race condition when setting gpio dir (Eric Chanudet) [RHEL-28621]
- pinctrl: bcm2835: Remove of_node_put() in bcm2835_of_gpio_ranges_fallback() (Eric Chanudet) [RHEL-28621]
- pinctrl: bcm2835: Make the irqchip immutable (Eric Chanudet) [RHEL-28621]
- pinctrl: bcm2835: drop irq_enable/disable callbacks (Eric Chanudet) [RHEL-28621]
- pinctrl-bcm2835: don't call pinctrl_gpio_direction() (Eric Chanudet) [RHEL-28621]
- pinctrl: bcm2835: Silence uninit warning (Eric Chanudet) [RHEL-28621]
- pinctrl: bcm2835: Allow building driver as a module (Eric Chanudet) [RHEL-28621]
- pinctrl: bcm2835: Replace BUG with BUG_ON (Eric Chanudet) [RHEL-28621]
- block: Rename BLK_STS_NEXUS to BLK_STS_RESV_CONFLICT (Ming Lei) [RHEL-25988]
- block: Add PR callouts for read keys and reservation (Ming Lei) [RHEL-25988]
- block: sed-opal: handle empty atoms when parsing response (Ming Lei) [RHEL-25988]
- virtio-blk: Ensure no requests in virtqueues before deleting vqs. (Ming Lei) [RHEL-25988]
- blk-iocost: Fix an UBSAN shift-out-of-bounds warning (Ming Lei) [RHEL-25988]
- blk-wbt: Fix detection of dirty-throttled tasks (Ming Lei) [RHEL-25988]
- block: Fix where bio IO priority gets set (Ming Lei) [RHEL-25988]
- aoe: avoid potential deadlock at set_capacity (Ming Lei) [RHEL-25988]
- block: Fix WARNING in _copy_from_iter (Ming Lei) [RHEL-25988]
- block: Move checking GENHD_FL_NO_PART to bdev_add_partition() (Ming Lei) [RHEL-25988]
- block: Treat sequential write preferred zone type as invalid (Ming Lei) [RHEL-25988]
- block: remove disk_clear_zoned (Ming Lei) [RHEL-25988]
- sd: remove the !ZBC && blk_queue_is_zoned case in sd_read_block_characteristics (Ming Lei) [RHEL-25988]
- drivers/block/xen-blkback/common.h: Fix spelling typo in comment (Ming Lei) [RHEL-25988]
- blk-cgroup: don't use removal safe list iterators (Ming Lei) [RHEL-25988]
- block: floor the discard granularity to the physical block size (Ming Lei) [RHEL-25988]
- mtd_blkdevs: use the default discard granularity (Ming Lei) [RHEL-25988]
- zram: use the default discard granularity (Ming Lei) [RHEL-25988]
- null_blk: use the default discard granularity (Ming Lei) [RHEL-25988]
- nbd: use the default discard granularity (Ming Lei) [RHEL-25988]
- ubd: use the default discard granularity (Ming Lei) [RHEL-25988]
- block: default the discard granularity to sector size (Ming Lei) [RHEL-25988]
- block: remove two comments in bio_split_discard (Ming Lei) [RHEL-25988]
- block: rename and document BLK_DEF_MAX_SECTORS (Ming Lei) [RHEL-25988]
- loop: don't abuse BLK_DEF_MAX_SECTORS (Ming Lei) [RHEL-25988]
- aoe: don't abuse BLK_DEF_MAX_SECTORS (Ming Lei) [RHEL-25988]
- null_blk: don't cap max_hw_sectors to BLK_DEF_MAX_SECTORS (Ming Lei) [RHEL-25988]
- loop: don't update discard limits from loop_set_status (Ming Lei) [RHEL-25988]
- blk-wbt: remove the separate write cache tracking (Ming Lei) [RHEL-25988]
- block: reject invalid operation in submit_bio_noacct (Ming Lei) [RHEL-25988]
- drbd: actlog: fix kernel-doc warnings and spelling (Ming Lei) [RHEL-25988]
- block: skip start/end time stamping for passthrough IO (Ming Lei) [RHEL-25988]
- block: export disk_clear_zoned() (Ming Lei) [RHEL-25988]
- sd: only call disk_clear_zoned when needed (Ming Lei) [RHEL-25988]
- block: simplify disk_set_zoned (Ming Lei) [RHEL-25988]
- block: remove support for the host aware zone model (Ming Lei) [RHEL-25988]
- dm error: Add support for zoned block devices (Ming Lei) [RHEL-25988]
- virtio_blk: remove the broken zone revalidation support (Ming Lei) [RHEL-25988]
- virtio_blk: cleanup zoned device probing (Ming Lei) [RHEL-25988]
- block: add check of 'minors' and 'first_minor' in device_add_disk() (Ming Lei) [RHEL-25988]
- block: skip cgroups for passthrough io (Ming Lei) [RHEL-25988]
- block: improve struct request_queue layout (Ming Lei) [RHEL-25988]
- block: support adding less than len in bio_add_hw_page (Ming Lei) [RHEL-25988]
- block: prevent an integer overflow in bvec_try_merge_hw_page (Ming Lei) [RHEL-25988]
- block: Set memalloc_noio to false on device_add_disk() error path (Ming Lei) [RHEL-25988]
- block/rnbd-srv: Check for unlikely string overflow (Ming Lei) [RHEL-25988]
- block: Remove special-casing of compound pages (Ming Lei) [RHEL-25988]
- block: skip QUEUE_FLAG_STATS and rq-qos for passthrough io (Ming Lei) [RHEL-25988]
- block: move a few definitions out of CONFIG_BLK_DEV_ZONED (Ming Lei) [RHEL-25988]
- block/rnbd: add support for REQ_OP_WRITE_ZEROES (Ming Lei) [RHEL-25988]
- block: renumber QUEUE_FLAG_HW_WC (Ming Lei) [RHEL-25988]
- block: Document the role of the two attribute groups (Ming Lei) [RHEL-25988]
- block: warn once for each partition in bio_check_ro() (Ming Lei) [RHEL-25988]
- block: move .bd_inode into 1st cacheline of block_device (Ming Lei) [RHEL-25988]
- nbd: pass nbd_sock to nbd_read_reply() instead of index (Ming Lei) [RHEL-25988]
- block/null_blk: Fix double blk_mq_start_request() warning (Ming Lei) [RHEL-25988]
- nbd: fix null-ptr-dereference while accessing 'nbd->config' (Ming Lei) [RHEL-25988]
- nbd: factor out a helper to get nbd_config without holding 'config_lock' (Ming Lei) [RHEL-25988]
- nbd: fold nbd config initialization into nbd_alloc_config() (Ming Lei) [RHEL-25988]
- blk-core: use pr_warn_ratelimited() in bio_check_ro() (Ming Lei) [RHEL-25988]
- nbd: fix uaf in nbd_open (Ming Lei) [RHEL-25988]
- powerpc/pseries: PLPKS SED Opal keystore support (Ming Lei) [RHEL-25988]
- block: sed-opal: keystore access for SED Opal keys (Ming Lei) [RHEL-25988]
- block:sed-opal: SED Opal keystore (Ming Lei) [RHEL-25988]
- partitions/ibm: Introduce defines for magic string length values (Ming Lei) [RHEL-25988]
- partitions/ibm: Replace strncpy() and improve readability (Ming Lei) [RHEL-25988]
- partitions/ibm: Remove unnecessary memset (Ming Lei) [RHEL-25988]
- aoe: replace strncpy with strscpy (Ming Lei) [RHEL-25988]
- null_blk: replace strncpy with strscpy (Ming Lei) [RHEL-25988]
- block/null_blk: add queue_rqs() support (Ming Lei) [RHEL-25988]
- blk-mq: update driver tags request table when start request (Ming Lei) [RHEL-25988]
- blk-mq: support batched queue_rqs() on shared tags queue (Ming Lei) [RHEL-25988]
- blk-mq: remove RQF_MQ_INFLIGHT (Ming Lei) [RHEL-25988]
- blk-mq: account active requests when get driver tag (Ming Lei) [RHEL-25988]
- blk-throttle: check for overflow in calculate_bytes_allowed (Ming Lei) [RHEL-25988]
- block: Fix regression in sed-opal for a saved key. (Ming Lei) [RHEL-25988]
- block: Don't invalidate pagecache for invalid falloc modes (Ming Lei) [RHEL-25988]
- block: correct stale comment in rq_qos_wait (Ming Lei) [RHEL-25988]
- blk-mq: fix tags UAF when shrinking q->nr_hw_queues (Ming Lei) [RHEL-25988]
- block: fix pin count management when merging same-page segments (Ming Lei) [RHEL-25988]
- null_blk: fix poll request timeout handling (Ming Lei) [RHEL-25988]
- s390/dasd: fix string length handling (Ming Lei) [RHEL-25988]
- block: don't add or resize partition on the disk with GENHD_FL_NO_PART (Ming Lei) [RHEL-25988]
- blk-throttle: consider 'carryover_ios/bytes' in throtl_trim_slice() (Ming Lei) [RHEL-25988]
- blk-throttle: use calculate_io/bytes_allowed() for throtl_trim_slice() (Ming Lei) [RHEL-25988]
- blk-throttle: fix wrong comparation while 'carryover_ios/bytes' is negative (Ming Lei) [RHEL-25988]
- blk-throttle: print signed value 'carryover_bytes/ios' for user (Ming Lei) [RHEL-25988]
- block: use strscpy() to instead of strncpy() (Ming Lei) [RHEL-25988]
- block: sed-opal: keyring support for SED keys (Ming Lei) [RHEL-25988]
- block: sed-opal: Implement IOC_OPAL_REVERT_LSP (Ming Lei) [RHEL-25988]
- block: sed-opal: Implement IOC_OPAL_DISCOVERY (Ming Lei) [RHEL-25988]
- blk-mq: prealloc tags when increase tagset nr_hw_queues (Ming Lei) [RHEL-25988]
- blk-mq: delete redundant tagset map update when fallback (Ming Lei) [RHEL-25988]
- blk-mq: fix tags leak when shrink nr_hw_queues (Ming Lei) [RHEL-25988]
- blk-cgroup: Fix NULL deref caused by blkg_policy_data being installed before init (Ming Lei) [RHEL-25988]
- block: Bring back zero_fill_bio_iter (Ming Lei) [RHEL-25988]
- block: Allow bio_iov_iter_get_pages() with bio->bi_bdev unset (Ming Lei) [RHEL-25988]
- block: Add some exports for bcachefs (Ming Lei) [RHEL-25988]
- block: fix bad lockdep annotation in blk-iolatency (Ming Lei) [RHEL-25988]
- swim3: mark swim3_init() static (Ming Lei) [RHEL-25988]
- block: remove init_mutex and open-code blk_iolatency_try_init (Ming Lei) [RHEL-25988]
- block/mq-deadline: use correct way to throttling write requests (Ming Lei) [RHEL-25988]
- iocost_monitor: improve it by adding iocg wait_ms (Ming Lei) [RHEL-25988]
- iocost_monitor: print vrate inuse along with base_vrate (Ming Lei) [RHEL-25988]
- iocost_monitor: fix kernel queue kobj changes (Ming Lei) [RHEL-25988]
- block: cleanup bio_integrity_prep (Ming Lei) [RHEL-25988]
- block: Improve performance for BLK_MQ_F_BLOCKING drivers (Ming Lei) [RHEL-25988]
- scsi: Remove a blk_mq_run_hw_queues() call (Ming Lei) [RHEL-25988]
- scsi: Inline scsi_kick_queue() (Ming Lei) [RHEL-25988]
- block: refactor to use helper (Ming Lei) [RHEL-25988]
- blk-flush: reuse rq queuelist in flush state machine (Ming Lei) [RHEL-25988]
- blk-flush: count inflight flush_data requests (Ming Lei) [RHEL-25988]
- blk-mq: use percpu csd to remote complete instead of per-rq csd (Ming Lei) [RHEL-25988]
- block: don't allow enabling a cache on devices that don't support it (Ming Lei) [RHEL-25988]
- block: cleanup queue_wc_store (Ming Lei) [RHEL-25988]
- nbd: automatically load module on genl access (Ming Lei) [RHEL-25988]
- blk-wbt: Replace strlcpy with strscpy (Ming Lei) [RHEL-25988]
- kyber: Replace strlcpy with strscpy (Ming Lei) [RHEL-25988]
- block: null_blk: cleanup null_queue_rq() (Ming Lei) [RHEL-25988]
- block: null_blk: Fix handling of fake timeout request (Ming Lei) [RHEL-25988]
- fbdev/simplefb: change loglevel when the power domains cannot be parsed (Robert Foss) [RHEL-17425]
- fbdev/simplefb: Suppress error on missing power domains (Robert Foss) [RHEL-17425]
- IMA: reject unknown hash algorithms in ima_get_hash_algo (Joel Slebodnick) [RHEL-26952]
- redhat/configs: aarch64: enable SCMI pmdomain driver (Radu Rendec) [RHEL-26434]
- firmware: arm_scmi: Add generic OPP support to the SCMI performance domain (Radu Rendec) [RHEL-26434]
- OPP: Extend support for the opp-level beyond required-opps (Radu Rendec) [RHEL-26434]
- OPP: Switch to use dev_pm_domain_set_performance_state() (Radu Rendec) [RHEL-26434]
- PM: domains: Implement the ->set_performance_state() callback for genpd (Radu Rendec) [RHEL-26434]
- PM: domains: Introduce dev_pm_domain_set_performance_state() (Radu Rendec) [RHEL-26434]
- pmdomain: arm: Fix NULL dereference on scmi_perf_domain removal (Radu Rendec) [RHEL-26434]
- pmdomain: arm: Avoid polling for scmi_perf_domain (Radu Rendec) [RHEL-26434]
- pmdomain: arm: Add the SCMI performance domain (Radu Rendec) [RHEL-26434]
- PM: domains: Allow genpd providers to manage OPP tables directly by its FW (Radu Rendec) [RHEL-26434]
- cpufreq: scmi: Add support to parse domain-id using #power-domain-cells (Radu Rendec) [RHEL-26434]
- dt-bindings: power: Clarify performance capabilities of power-domains (Radu Rendec) [RHEL-26434]
- dt-bindings: firmware: arm,scmi: Extend bindings for protocol@13 (Radu Rendec) [RHEL-26434]
- dt-bindings: arm: cpus: Add a power-domain-name for a performance-domain (Radu Rendec) [RHEL-26434]
- cpufreq: scmi: Avoid one OF parsing in scmi_get_sharing_cpus() (Radu Rendec) [RHEL-26434]
- arm64: dts: qcom: sa8775p-ride: Describe sgmii_phy1 irq (Andrew Halaney) [RHEL-28917]
- arm64: dts: qcom: sa8775p-ride: Describe sgmii_phy0 irq (Andrew Halaney) [RHEL-28917]
- Bluetooth: Fix bogus check for re-auth no supported with non-ssp (Bastien Nocera) [RHEL-18225 RHEL-18227] {CVE-2020-10135}
- redhat/configs: enable pwr-mlxbf (Nirmala Dalvi) [RHEL-21119]
- power: reset: pwr-mlxbf: support graceful reboot instead of emergency reset (Nirmala Dalvi) [RHEL-21119]
- power: reset: use capital "OR" for multiple licenses in SPDX (Nirmala Dalvi) [RHEL-21119]
- power: reset: pwr-mlxbf: change rst_pwr_hid and low_pwr_hid from global to local variables (Nirmala Dalvi) [RHEL-21119]
- power: reset: pwr-mlxbf: add missing include (Nirmala Dalvi) [RHEL-21119]
- power: reset: pwr-mlxbf: add BlueField SoC power control driver (Nirmala Dalvi) [RHEL-21119]
- redhat/configs: enable pinctrl_mlxbf3 This driver is required to support the pinctrl device on the Bluefield-3 card. (Nirmala Dalvi) [RHEL-21115]
- pinctrl: mlxbf3: Remove gpio_disable_free() (Nirmala Dalvi) [RHEL-21115]
- pinctrl: use capital "OR" for multiple licenses in SPDX (Nirmala Dalvi) [RHEL-21115]
- pinctrl: mlxbf3: set varaiable mlxbf3_pmx_funcs storage-class-specifier to static (Nirmala Dalvi) [RHEL-21115]
- pinctrl: mlxbf3: Add pinctrl driver support (Nirmala Dalvi) [RHEL-21115]
- redhat/configs: enable gpio_mlxbf3 (Nirmala Dalvi) [RHEL-21113]
- gpio: mlxbf3: add an error code check in mlxbf3_gpio_probe (Nirmala Dalvi) [RHEL-21113]
- gpio: mlxbf3: use capital "OR" for multiple licenses in SPDX (Nirmala Dalvi) [RHEL-21113]
- gpio: mlxbf3: Support add_pin_ranges() (Nirmala Dalvi) [RHEL-21113]
- gpio: mlxbf3: Add gpio driver support (Nirmala Dalvi) [RHEL-21113]
- redhat/configs: enable mlxbf-pmc (Luiz Capitulino) [RHEL-21122]
- platform/mellanox: mlxbf-pmc: Ignore unsupported performance blocks (Luiz Capitulino) [RHEL-21122]
- platform/mellanox: mlxbf-pmc: mlxbf_pmc_event_list(): make size ptr optional (Luiz Capitulino) [RHEL-21122]
- platform/mellanox: mlxbf-pmc: Cleanup signed/unsigned mix-up (Luiz Capitulino) [RHEL-21122]
- platform/mellanox: mlxbf-pmc: Replace uintN_t with kernel-style types (Luiz Capitulino) [RHEL-21122]
- platform/mellanox: mlxbf-pmc: Fix offset calculation for crspace events (Luiz Capitulino) [RHEL-21122]
- platform/mellanox: Check devm_hwmon_device_register_with_groups() return value (Luiz Capitulino) [RHEL-21122]
- platform/mellanox: Add null pointer checks for devm_kasprintf() (Luiz Capitulino) [RHEL-21122]
- platform/mellanox: mlxbf-pmc: Add support for BlueField-3 (Luiz Capitulino) [RHEL-21122]
- platform/mellanox: mlxbf-pmc: Fix reading of unprogrammed events (Luiz Capitulino) [RHEL-21122]
- platform/mellanox: mlxbf-pmc: Fix potential buffer overflows (Luiz Capitulino) [RHEL-21122]
- platform/mellanox: mlxbf-pmc: fix sscanf() error checking (Luiz Capitulino) [RHEL-21122]
- platform/mellanox: mlxbf-pmc: fix kernel-doc notation (Luiz Capitulino) [RHEL-21122]
- SUNRPC: Remove stale comments (Jeffrey Layton) [RHEL-22860]
- NFSD: Remove BUG_ON in nfsd4_process_cb_update() (Jeffrey Layton) [RHEL-22860]
- NFSD: Replace comment with lockdep assertion (Jeffrey Layton) [RHEL-22860]
- NFSD: Remove unused @reason argument (Jeffrey Layton) [RHEL-22860]
- NFSD: Add callback operation lifetime trace points (Jeffrey Layton) [RHEL-22860]
- NFSD: Rename nfsd_cb_state trace point (Jeffrey Layton) [RHEL-22860]
- NFSD: Replace dprintks in nfsd4_cb_sequence_done() (Jeffrey Layton) [RHEL-22860]
- NFSD: Add nfsd_seq4_status trace event (Jeffrey Layton) [RHEL-22860]
- NFSD: Retransmit callbacks after client reconnects (Jeffrey Layton) [RHEL-22860]
- NFSD: Reschedule CB operations when backchannel rpc_clnt is shut down (Jeffrey Layton) [RHEL-22860]
- NFSD: Convert the callback workqueue to use delayed_work (Jeffrey Layton) [RHEL-22860]
- NFSD: Reset cb_seq_status after NFS4ERR_DELAY (Jeffrey Layton) [RHEL-22860]
- NFSv4, NFSD: move enum nfs_cb_opnum4 to include/linux/nfs4.h (Jeffrey Layton) [RHEL-22860]
- tls: fix use-after-free on failed backlog decryption (Sabrina Dubroca) [RHEL-26410] {CVE-2024-26584}
- tls: separate no-async decryption request handling from async (Sabrina Dubroca) [RHEL-26410] {CVE-2024-26584}
- tls: decrement decrypt_pending if no async completion will be called (Sabrina Dubroca) [RHEL-26416] {CVE-2024-26583}
- net: tls: fix use-after-free with partial reads and async decrypt (Sabrina Dubroca) [RHEL-26398] {CVE-2024-26582}
- net: tls: handle backlogging of crypto requests (Sabrina Dubroca) [RHEL-26410] {CVE-2024-26584}
- tls: fix race between tx work scheduling and socket close (Sabrina Dubroca) [RHEL-26361] {CVE-2024-26585}
- tls: fix race between async notify and socket close (Sabrina Dubroca) [RHEL-26416] {CVE-2024-26583}
- net: tls: factor out tls_*crypt_async_wait() (Sabrina Dubroca) [RHEL-26416] {CVE-2024-26583}
- i2c: mlxbf: Use devm_platform_get_and_ioremap_resource() (Luiz Capitulino) [RHEL-21116]
- I2C: Explicitly include correct DT includes (Luiz Capitulino) [RHEL-21116]
- i2c: mlxbf: Use dev_err_probe in probe function (Luiz Capitulino) [RHEL-21116]
- i2c: Convert to platform remove callback returning void (Luiz Capitulino) [RHEL-21116]
- i2c: mlxbf: depend on ACPI; clean away ifdeffage (Luiz Capitulino) [RHEL-21116]
- i2c: mlxbf: remove device tree support (Luiz Capitulino) [RHEL-21116]
- i2c: mlxbf: support BlueField-3 SoC (Luiz Capitulino) [RHEL-21116]
- i2c: mlxbf: add multi slave functionality (Luiz Capitulino) [RHEL-21116]
- i2c: mlxbf: support lock mechanism (Luiz Capitulino) [RHEL-21116]
- i2c: mlxbf: Fix frequency calculation (Luiz Capitulino) [RHEL-21116]
- i2c: mlxbf: Refactor _UID handling to use acpi_dev_uid_to_integer() (Luiz Capitulino) [RHEL-21116]
- i2c: mlxbf: remove IRQF_ONESHOT (Luiz Capitulino) [RHEL-21116]
- i2c: mlxbf: prevent stack overflow in mlxbf_i2c_smbus_start_transaction() (Luiz Capitulino) [RHEL-21116]
- i2c: mlxbf: incorrect base address passed during io write (Luiz Capitulino) [RHEL-21116]
- Revert "Merge: EDAC: add initial support for El Capitan" (Scott Weaver)
- SEV: disable SEV-ES DebugSwap by default (Paolo Bonzini) [RHEL-22997]
- dm-integrity, dm-verity: reduce stack usage for recheck (Benjamin Marzinski) [RHEL-20912]
- dm-crypt: recheck the integrity tag after a failure (Benjamin Marzinski) [RHEL-20912]
- dm-crypt: don't modify the data when using authenticated encryption (Benjamin Marzinski) [RHEL-20912]
- dm-verity: recheck the hash after a failure (Benjamin Marzinski) [RHEL-20912]
- dm-integrity: recheck the integrity tag after a failure (Benjamin Marzinski) [RHEL-20912]
- tracing/timerlat: Move hrtimer_init to timerlat_fd open() (John Kacur) [RHEL-26665]
- gfs2: Fix kernel NULL pointer dereference in gfs2_rgrp_dump (Andrew Price) [RHEL-26500] {CVE-2023-52448}
- NFSv4: Always ask for type with READDIR (Benjamin Coddington) [RHEL-15843]
- sunrpc: have svc tasks sleep in TASK_INTERRUPTIBLE instead of TASK_IDLE (Jeffrey Layton) [RHEL-22742]
- smb: client: fix OOB in receive_encrypted_standard() (Scott Mayhew) [RHEL-21687] {CVE-2024-0565}
- EDAC/amd64: Add support for family 0x19, models 0x90-9f devices (Aristeu Rozanski) [RHEL-10022]
- EDAC/mc: Add support for HBM3 memory type (Aristeu Rozanski) [RHEL-10022]
- x86/MCE/AMD: Add new MA_LLC, USR_DP, and USR_CP bank types (Aristeu Rozanski) [RHEL-10022]
- EDAC/mce_amd: Remove SMCA Extended Error code descriptions (Aristeu Rozanski) [RHEL-10022]
- x86/mce/amd, EDAC/mce_amd: Move long names to decoder module (Aristeu Rozanski) [RHEL-10022]
- EDAC/amd64: Cache and use GPU node map (Aristeu Rozanski) [RHEL-10022]
- EDAC/amd64: Add support for AMD heterogeneous Family 19h Model 30h-3Fh (Aristeu Rozanski) [RHEL-10022]
- EDAC/amd64: Document heterogeneous system enumeration (Aristeu Rozanski) [RHEL-10022]
- x86/MCE/AMD, EDAC/mce_amd: Decode UMC_V2 ECC errors (Aristeu Rozanski) [RHEL-10022]
- EDAC/amd64: Fix indentation in umc_determine_edac_cap() (Aristeu Rozanski) [RHEL-10022]
- EDAC: Sanitize MODULE_AUTHOR strings (Aristeu Rozanski) [RHEL-10022]
- EDAC/amd64: Add get_err_info() to pvt->ops (Aristeu Rozanski) [RHEL-10022]
- EDAC/amd64: Split dump_misc_regs() into dct/umc functions (Aristeu Rozanski) [RHEL-10022]
- EDAC/amd64: Split init_csrows() into dct/umc functions (Aristeu Rozanski) [RHEL-10022]
- EDAC/amd64: Split determine_edac_cap() into dct/umc functions (Aristeu Rozanski) [RHEL-10022]
- fprobe: Ensure running fprobe_exit_handler() finished before calling rethook_free() (Viktor Malik) [RHEL-26131]
- fprobe: Release rethook after the ftrace_ops is unregistered (Viktor Malik) [RHEL-26131]
- fs,hugetlb: fix NULL pointer dereference in hugetlbs_fill_super {CVE-2024-0841} (Audra Mitchell) [RHEL-20615] {CVE-2024-0841}
- smb: client: fix parsing of SMB3.1.1 POSIX create context (Paulo Alcantara) [RHEL-26242] {CVE-2023-52434}
- smb: client: fix potential OOBs in smb2_parse_contexts() (Paulo Alcantara) [RHEL-26242] {CVE-2023-52434}
* Thu Mar 14 2024 Lucas Zampieri <lzampier@redhat.com> [5.14.0-430.el9]
- genirq: Wake interrupt threads immediately when changing affinity (Crystal Wood) [RHEL-9148]
- scsi: core: Move scsi_host_busy() out of host lock if it is for per-command (Ming Lei) [RHEL-23941]
- scsi: core: Move scsi_host_busy() out of host lock for waking up EH handler (Ming Lei) [RHEL-23941]
- tracing/timerlat: Move hrtimer_init to timerlat_fd open() (John Kacur) [RHEL-28655]
- crypto: akcipher - Disable signing and decryption (Herbert Xu) [RHEL-17113] {CVE-2023-6240}
- RDMA/siw: Fix connection failure handling (Kamal Heib) [RHEL-28044] {CVE-2023-52513}
- x86/mm: Fix memory encryption features advertisement (Vitaly Kuznetsov) [RHEL-26662]
- x86/coco: Export cc_vendor (Vitaly Kuznetsov) [RHEL-26662]
- afs: fix __afs_break_callback() / afs_drop_open_mmap() race (Marc Dionne) [RHEL-25171]
- afs: Increase buffer size in afs_update_volume_status() (Marc Dionne) [RHEL-25171]
- afs: Fix ignored callbacks over ipv4 (Marc Dionne) [RHEL-25171]
- rxrpc: Fix counting of new acks and nacks (Marc Dionne) [RHEL-25171]
- rxrpc: Fix response to PING RESPONSE ACKs to a dead call (Marc Dionne) [RHEL-25171]
- rxrpc: Fix delayed ACKs to not set the reference serial number (Marc Dionne) [RHEL-25171]
- rxrpc: Fix generation of serial numbers to skip zero (Marc Dionne) [RHEL-25171]
- afs: Fix missing/incorrect unlocking of RCU read lock (Marc Dionne) [RHEL-25171]
- afs: Remove afs_dynroot_d_revalidate() as it is redundant (Marc Dionne) [RHEL-25171]
- afs: Fix error handling with lookup via FS.InlineBulkStatus (Marc Dionne) [RHEL-25171]
- afs: Don't use certain unnecessary folio_*() functions (Marc Dionne) [RHEL-25171]
- rxrpc: Fix use of Don't Fragment flag (Marc Dionne) [RHEL-25171]
- rxrpc: Fix skbuff cleanup of call's recvmsg_queue and rx_oos_queue (Marc Dionne) [RHEL-25171]
- afs: trace: Log afs_make_call(), including server address (Marc Dionne) [RHEL-25171]
- afs: Fix offline and busy message emission (Marc Dionne) [RHEL-25171]
- afs: Fix fileserver rotation (Marc Dionne) [RHEL-25171]
- afs: Overhaul invalidation handling to better support RO volumes (Marc Dionne) [RHEL-25171]
- afs: Parse the VolSync record in the reply of a number of RPC ops (Marc Dionne) [RHEL-25171]
- afs: Don't leave DONTUSE/NEWREPSITE servers out of server list (Marc Dionne) [RHEL-25171]
- afs: Fix comment in afs_do_lookup() (Marc Dionne) [RHEL-25171]
- afs: Apply server breaks to mmap'd files in the call processor (Marc Dionne) [RHEL-25171]
- afs: Move the vnode/volume validity checking code into its own file (Marc Dionne) [RHEL-25171]
- afs: Defer volume record destruction to a workqueue (Marc Dionne) [RHEL-25171]
- afs: Make it possible to find the volumes that are using a server (Marc Dionne) [RHEL-25171]
- afs: Combine the endpoint state bools into a bitmask (Marc Dionne) [RHEL-25171]
- afs: Keep a record of the current fileserver endpoint state (Marc Dionne) [RHEL-25171]
- afs: Dispatch vlserver probes in priority order (Marc Dionne) [RHEL-25171]
- afs: Dispatch fileserver probes in priority order (Marc Dionne) [RHEL-25171]
- afs: Mark address lists with configured priorities (Marc Dionne) [RHEL-25171]
- afs: Provide a way to configure address priorities (Marc Dionne) [RHEL-25171]
- afs: Remove the unimplemented afs_cmp_addr_list() (Marc Dionne) [RHEL-25171]
- afs: Add some more info to /proc/net/afs/servers (Marc Dionne) [RHEL-25171]
- rxrpc: Create a procfile to display outstanding client conn bundles (Marc Dionne) [RHEL-25171]
- afs: Fold the afs_addr_cursor struct in (Marc Dionne) [RHEL-25171]
- afs: Use peer + service_id as call address (Marc Dionne) [RHEL-25171]
- afs: Add a tracepoint for struct afs_addr_list (Marc Dionne) [RHEL-25171]
- afs: Automatically generate trace tag enums (Marc Dionne) [RHEL-25171]
- afs: Rename some fields (Marc Dionne) [RHEL-25171]
- afs: Simplify error handling (Marc Dionne) [RHEL-25171]
- afs: Don't put afs_call in afs_wait_for_call_to_complete() (Marc Dionne) [RHEL-25171]
- afs: Wrap most op->error accesses with inline funcs (Marc Dionne) [RHEL-25171]
- afs: Use op->nr_iterations=-1 to indicate to begin fileserver iteration (Marc Dionne) [RHEL-25171]
- afs: Handle the VIO and UAEIO aborts explicitly (Marc Dionne) [RHEL-25171]
- afs: Rename addr_list::failed to probe_failed (Marc Dionne) [RHEL-25171]
- afs: Don't skip server addresses for which we didn't get an RTT reading (Marc Dionne) [RHEL-25171]
- rxrpc, afs: Allow afs to pin rxrpc_peer objects (Marc Dionne) [RHEL-25171]
- afs: Turn the afs_addr_list address array into an array of structs (Marc Dionne) [RHEL-25171]
- afs: Add comments on abort handling (Marc Dionne) [RHEL-25171]
- rxrpc_find_service_conn_rcu: fix the usage of read_seqbegin_or_lock() (Marc Dionne) [RHEL-25171]
- afs: use read_seqbegin() in afs_check_validity() and afs_getattr() (Marc Dionne) [RHEL-25171]
- afs: fix the usage of read_seqbegin_or_lock() in afs_find_server*() (Marc Dionne) [RHEL-25171]
- afs: fix the usage of read_seqbegin_or_lock() in afs_lookup_volume_rcu() (Marc Dionne) [RHEL-25171]
- afs: Fix use-after-free due to get/remove race in volume tree (Marc Dionne) [RHEL-25171]
- afs: Fix overwriting of result of DNS query (Marc Dionne) [RHEL-25171]
- afs: Fix dynamic root lookup DNS check (Marc Dionne) [RHEL-25171]
- afs: Fix the dynamic root's d_delete to always delete unused dentries (Marc Dionne) [RHEL-25171]
- afs: Fix refcount underflow from error handling race (Marc Dionne) [RHEL-25171]
- afs: do not test the return value of folio_start_writeback() (Marc Dionne) [RHEL-25171]
- afs: Mark a superblock for an R/O or Backup volume as SB_RDONLY (Marc Dionne) [RHEL-25171]
- afs: Fix file locking on R/O volumes to operate in local mode (Marc Dionne) [RHEL-25171]
- afs: Return ENOENT if no cell DNS record can be found (Marc Dionne) [RHEL-25171]
- afs: Make error on cell lookup failure consistent with OpenAFS (Marc Dionne) [RHEL-25171]
- afs: Fix afs_server_list to be cleaned up with RCU (Marc Dionne) [RHEL-25171]
- rxrpc: Defer the response to a PING ACK until we've parsed it (Marc Dionne) [RHEL-25171]
- rxrpc: Fix RTT determination to use any ACK as a source (Marc Dionne) [RHEL-25171]
- rxrpc: Fix some minor issues with bundle tracing (Marc Dionne) [RHEL-25171]
- rxrpc: Fix two connection reaping bugs (Marc Dionne) [RHEL-25171]
- afs: Provide a splice-read wrapper (Marc Dionne) [RHEL-25171]
- rxrpc: Replace fake flex-array with flexible-array member (Marc Dionne) [RHEL-25171]
- x86/cpu/intel: Detect TME keyid bits before setting MTRR mask registers (Paolo Bonzini) [RHEL-23426]
- x86/cpu: Allow reducing x86_phys_bits during early_identify_cpu() (Paolo Bonzini) [RHEL-23426]
- x86/boot: Move x86_cache_alignment initialization to correct spot (Paolo Bonzini) [RHEL-23426]
- x86/sev-es: Set x86_virt_bits to the correct value straight away, instead of a two-phase approach (Paolo Bonzini) [RHEL-23426]
- KVM: x86: make KVM_REQ_NMI request iff NMI pending for vcpu (Prasad Pandit) [RHEL-2815]
- drm/tegra: Remove existing framebuffer only if we support display (Robert Foss) [RHEL-26130]
- Deprecate qla4xxx in RHEL-9 (Chris Leech) [RHEL-1241]
- dm-bufio: fix no-sleep mode (Benjamin Marzinski) [RHEL-23968]
- selftests: rtnetlink: add MACsec offload tests (Sabrina Dubroca) [RHEL-24616]
- netdevsim: add dummy macsec offload (Sabrina Dubroca) [RHEL-24616]
- selftests: rtnetlink: Make the set of tests to run configurable (Sabrina Dubroca) [RHEL-24616]
* Mon Mar 11 2024 Lucas Zampieri <lzampier@redhat.com> [5.14.0-429.el9]
- workqueue: Avoid using isolated cpus' timers on queue_delayed_work (Leonardo Bras) [RHEL-20254]
- cnic,bnx2,bnx2x: use UIO_MEM_DMA_COHERENT (Chris Leech) [RHEL-26081]
- uio: introduce UIO_MEM_DMA_COHERENT type (Chris Leech) [RHEL-26081]
- Reapply "dma-mapping: reject __GFP_COMP in dma_alloc_attrs" (Chris Leech) [RHEL-26081]
- Reapply "cnic: don't pass bogus GFP_ flags to dma_alloc_coherent" (Chris Leech) [RHEL-26081]
- block: add check that partition length needs to be aligned with block size (Ming Lei) [RHEL-26616] {CVE-2023-52458}
* Wed Mar 06 2024 Lucas Zampieri <lzampier@redhat.com> [5.14.0-428.el9]
- x86/fpu: Stop relying on userspace for info to fault in xsave buffer (Steve Best) [RHEL-26672] {CVE-2024-26603}
- redhat: configs: Enable CONFIG_MEMTEST to enable memory test (Eric Chanudet) [RHEL-24906]
- x86/smpboot/64: Handle X2APIC BIOS inconsistency gracefully (David Arcari) [RHEL-19514]
- x86/apic: Fake primary thread mask for XEN/PV (David Arcari) [RHEL-19514]
- cpu/hotplug: Remove dependancy against cpu_primary_thread_mask (David Arcari) [RHEL-19514]
- x86/smpboot: Fix the parallel bringup decision (David Arcari) [RHEL-19514]
- x86/realmode: Make stack lock work in trampoline_compat() (David Arcari) [RHEL-19514]
- x86/smp: Initialize cpu_primary_thread_mask late (David Arcari) [RHEL-19514]
- cpu/hotplug: Fix off by one in cpuhp_bringup_mask() (David Arcari) [RHEL-19514]
- x86/apic: Fix use of X{,2}APIC_ENABLE in asm with older binutils (David Arcari) [RHEL-19514]
- x86/tsc: Defer marking TSC unstable to a worker (David Arcari) [RHEL-19514]
- cpu/hotplug: Remove unused function declaration cpu_set_state_online() (David Arcari) [RHEL-19514]
- x86/smpboot/64: Implement arch_cpuhp_init_parallel_bringup() and enable it (David Arcari) [RHEL-19514]
- x86/smpboot: Support parallel startup of secondary CPUs (David Arcari) [RHEL-19514]
- x86/apic/x2apic: Allow CPU cluster_mask to be populated in parallel (David Arcari) [RHEL-19514]
- x86/smpboot: Remove initial_gs (David Arcari) [RHEL-19514]
- x86/smpboot: Remove early_gdt_descr on 64-bit (David Arcari) [RHEL-19514]
- x86/smpboot: Implement a bit spinlock to protect the realmode stack (David Arcari) [RHEL-19514]
- x86/apic: Save the APIC virtual base address (David Arcari) [RHEL-19514]
- x86/smpboot: Remove initial_stack on 64-bit (David Arcari) [RHEL-19514]
- cpu/hotplug: Allow "parallel" bringup up to CPUHP_BP_KICK_AP_STATE (David Arcari) [RHEL-19514]
- x86/apic: Provide cpu_primary_thread mask (David Arcari) [RHEL-19514]
- x86/smpboot: Enable split CPU startup (David Arcari) [RHEL-19514]
- cpu/hotplug: Provide a split up CPUHP_BRINGUP mechanism (David Arcari) [RHEL-19514]
- cpu/hotplug: Remove unused state functions (David Arcari) [RHEL-19514]
- riscv: Switch to hotplug core state synchronization (David Arcari) [RHEL-19514]
- MIPS: SMP_CPS: Switch to hotplug core state synchronization (David Arcari) [RHEL-19514]
- arm64: smp: Switch to hotplug core state synchronization (David Arcari) [RHEL-19514]
- ARM: smp: Switch to hotplug core state synchronization (David Arcari) [RHEL-19514]
- cpu/hotplug: Remove cpu_report_state() and related unused cruft (David Arcari) [RHEL-19514]
- cpu/hotplug: Add debug printks for hotplug callback failures (David Arcari) [RHEL-19514]
- cpu/hotplug: Do not bail-out in DYING/STARTING sections (David Arcari) [RHEL-19514]
- cpu/hotplug: Initialise all cpuhp_cpu_state structs earlier (David Arcari) [RHEL-19514]
- x86/smpboot: Switch to hotplug core state synchronization (David Arcari) [RHEL-19514]
- cpu/hotplug: Add CPU state tracking and synchronization (David Arcari) [RHEL-19514]
- x86/xen/hvm: Get rid of DEAD_FROZEN handling (David Arcari) [RHEL-19514]
- x86/xen/smp_pv: Remove wait for CPU online (David Arcari) [RHEL-19514]
- x86/smpboot: Remove wait for cpu_online() (David Arcari) [RHEL-19514]
- cpu/hotplug: Rework sparse_irq locking in bringup_cpu() (David Arcari) [RHEL-19514]
- x86/smpboot: Remove cpu_callin_mask (David Arcari) [RHEL-19514]
- x86/smpboot: Make TSC synchronization function call based (David Arcari) [RHEL-19514]
- x86/smpboot: Move synchronization masks to SMP boot code (David Arcari) [RHEL-19514]
- x86/cpu/cacheinfo: Remove cpu_callout_mask dependency (David Arcari) [RHEL-19514]
- gitlab-ci: enable arm64/s390x/ppc64le debug builds (Michael Hofmann)
- PCI/ASPM: Fix deadlock when enabling ASPM (Myron Stowe) [RHEL-26162]
- MAINTAINERS: Orphan Cadence PCIe IP (Myron Stowe) [RHEL-26162]
- Revert "PCI/ASPM: Remove pcie_aspm_pm_state_change()" (Myron Stowe) [RHEL-26162]
- Revert "PCI: acpiphp: Reassign resources on bridge if necessary" (Myron Stowe) [RHEL-26162]
- PCI/ASPM: Add pci_disable_link_state_locked() lockdep assert (Myron Stowe) [RHEL-26162]
- PCI/ASPM: Clean up __pci_disable_link_state() 'sem' parameter (Myron Stowe) [RHEL-26162]
- PCI: qcom: Clean up ASPM comment (Myron Stowe) [RHEL-26162]
- PCI: qcom: Fix potential deadlock when enabling ASPM (Myron Stowe) [RHEL-26162]
- PCI: vmd: Fix potential deadlock when enabling ASPM (Myron Stowe) [RHEL-26162]
- PCI/ASPM: Add pci_enable_link_state_locked() (Myron Stowe) [RHEL-26162]
- PCI: loongson: Limit MRRS to 256 (Myron Stowe) [RHEL-26162]
- PCI: Simplify pcie_capability_clear_and_set_word() to ..._clear_word() (Myron Stowe) [RHEL-26162]
- PCI: endpoint: Fix double free in __pci_epc_create() (Myron Stowe) [RHEL-26162]
- PCI: Replace unnecessary UTF-8 in Kconfig (Myron Stowe) [RHEL-26162]
- logic_pio: Remove logic_outb(), _outw(), outl() duplicate declarations (Myron Stowe) [RHEL-26162]
- PCI: Make pci_assign_unassigned_resources() non-init (Myron Stowe) [RHEL-26162]
- PCI: Prevent xHCI driver from claiming AMD VanGogh USB3 DRD device (Myron Stowe) [RHEL-26162]
- PCI/portdrv: Use FIELD_GET() (Myron Stowe) [RHEL-26162]
- PCI/VC: Use FIELD_GET() (Myron Stowe) [RHEL-26162]
- PCI/PTM: Use FIELD_GET() (Myron Stowe) [RHEL-26162]
- PCI/PME: Use FIELD_GET() (Myron Stowe) [RHEL-26162]
- PCI/ATS: Use FIELD_GET() (Myron Stowe) [RHEL-26162]
- PCI/ATS: Show PASID Capability register width in bitmasks (Myron Stowe) [RHEL-26162]
- PCI: Use FIELD_GET() in Sapphire RX 5600 XT Pulse quirk (Myron Stowe) [RHEL-26162]
- PCI: Use FIELD_GET() (Myron Stowe) [RHEL-26162]
- PCI/MSI: Use FIELD_GET/PREP() (Myron Stowe) [RHEL-26162]
- PCI/DPC: Use defines with DPC reason fields (Myron Stowe) [RHEL-26162]
- PCI/DPC: Use defined fields with DPC_CTL register (Myron Stowe) [RHEL-26162]
- PCI/DPC: Use FIELD_GET() (Myron Stowe) [RHEL-26162]
- PCI: hotplug: Use FIELD_GET/PREP() (Myron Stowe) [RHEL-26162]
- PCI: dwc: Use FIELD_GET/PREP() (Myron Stowe) [RHEL-26162]
- PCI: cadence: Use FIELD_GET() (Myron Stowe) [RHEL-26162]
- PCI: Use FIELD_GET() to extract Link Width (Myron Stowe) [RHEL-26162]
- PCI: mvebu: Use FIELD_PREP() with Link Width (Myron Stowe) [RHEL-26162]
- PCI: tegra194: Use FIELD_GET()/FIELD_PREP() with Link Width fields (Myron Stowe) [RHEL-26162]
- scsi: ipr: Do PCI error checks on own line (Myron Stowe) [RHEL-26162]
- PCI: xgene: Do PCI error check on own line & keep return value (Myron Stowe) [RHEL-26162]
- PCI: Do error check on own line to split long "if" conditions (Myron Stowe) [RHEL-26162]
- atm: iphase: Do PCI error checks on own line (Myron Stowe) [RHEL-26162]
- sh: pci: Do PCI error check on own line (Myron Stowe) [RHEL-26162]
- alpha: Streamline convoluted PCI error handling (Myron Stowe) [RHEL-26162]
- dt-bindings: PCI: xilinx-xdma: Add schemas for Xilinx XDMA PCIe Root Port Bridge (Myron Stowe) [RHEL-26162]
- PCI: xilinx-cpm: Move IRQ definitions to a common header (Myron Stowe) [RHEL-26162]
- PCI: xilinx-nwl: Modify ECAM size to enable support for 256 buses (Myron Stowe) [RHEL-26162]
- PCI: xilinx-nwl: Rename the NWL_ECAM_VALUE_DEFAULT macro (Myron Stowe) [RHEL-26162]
- dt-bindings: PCI: xilinx-nwl: Modify ECAM size in the DT example (Myron Stowe) [RHEL-26162]
- PCI: xilinx-nwl: Remove redundant code that sets Type 1 header fields (Myron Stowe) [RHEL-26162]
- dt-bindings: PCI: xilinx-nwl: Convert to YAML schemas of Xilinx NWL PCIe Root Port Bridge (Myron Stowe) [RHEL-26162]
- PCI: tegra194: Use Mbps_to_icc() macro for setting icc speed (Myron Stowe) [RHEL-26162]
- PCI: qcom-ep: Use PCIE_SPEED2MBS_ENC() macro for encoding link speed (Myron Stowe) [RHEL-26162]
- PCI: qcom: Use PCIE_SPEED2MBS_ENC() macro for encoding link speed (Myron Stowe) [RHEL-26162]
- misc: pci_endpoint_test: Add Device ID for R-Car S4-8 PCIe controller (Myron Stowe) [RHEL-26162]
- MAINTAINERS: Update PCI DRIVER FOR RENESAS R-CAR for R-Car Gen4 (Myron Stowe) [RHEL-26162]
- PCI: rcar-gen4: Add endpoint mode support (Myron Stowe) [RHEL-26162]
- PCI: rcar-gen4: Add R-Car Gen4 PCIe controller support for host mode (Myron Stowe) [RHEL-26162]
- dt-bindings: PCI: renesas: Add R-Car Gen4 PCIe Endpoint (Myron Stowe) [RHEL-26162]
- dt-bindings: PCI: renesas: Add R-Car Gen4 PCIe Host (Myron Stowe) [RHEL-26162]
- dt-bindings: PCI: dwc: Update maxItems of reg and reg-names (Myron Stowe) [RHEL-26162]
- PCI: dwc: endpoint: Introduce .pre_init() and .deinit() (Myron Stowe) [RHEL-26162]
- PCI: dwc: Expose dw_pcie_write_dbi2() to module (Myron Stowe) [RHEL-26162]
- PCI: dwc: Expose dw_pcie_ep_exit() to module (Myron Stowe) [RHEL-26162]
- PCI: dwc: Add EDMA_UNROLL capability flag (Myron Stowe) [RHEL-26162]
- PCI: dwc: endpoint: Add multiple PFs support for dbi2 (Myron Stowe) [RHEL-26162]
- PCI: tegra194: Drop PCI_EXP_LNKSTA_NLW setting (Myron Stowe) [RHEL-26162]
- PCI: dwc: Add missing PCI_EXP_LNKCAP_MLW handling (Myron Stowe) [RHEL-26162]
- PCI: dwc: Add dw_pcie_link_set_max_link_width() (Myron Stowe) [RHEL-26162]
- PCI: Add T_PVPERL macro (Myron Stowe) [RHEL-26162]
- PCI: qcom-ep: Add dedicated callback for writing to DBI2 registers (Myron Stowe) [RHEL-26162]
- PCI: layerscape-ep: Set 64-bit DMA mask (Myron Stowe) [RHEL-26162]
- PCI: cadence: Drop unused member from struct cdns_plat_pcie (Myron Stowe) [RHEL-26162]
- PCI: qcom: Enable ASPM for platforms supporting 1.9.0 ops (Myron Stowe) [RHEL-26162]
- PCI: dwc: Add host_post_init() callback (Myron Stowe) [RHEL-26162]
- drm/qxl: Use pci_is_vga() to identify VGA devices (Myron Stowe) [RHEL-26162]
- drm/virtio: Use pci_is_vga() to identify VGA devices (Myron Stowe) [RHEL-26162]
- PCI/sysfs: Enable 'boot_vga' attribute via pci_is_vga() (Myron Stowe) [RHEL-26162]
- PCI/VGA: Select VGA devices earlier (Myron Stowe) [RHEL-26162]
- PCI/VGA: Use pci_is_vga() to identify VGA devices (Myron Stowe) [RHEL-26162]
- PCI: Add pci_is_vga() helper (Myron Stowe) [RHEL-26162]
- PCI: Lengthen reset delay for VideoPropulsion Torrent QN16e card (Myron Stowe) [RHEL-26162]
- x86/PCI: Avoid PME from D3hot/D3cold for AMD Rembrandt and Phoenix USB4 (Myron Stowe) [RHEL-26162]
- PCI/sysfs: Protect driver's D3cold preference from user space (Myron Stowe) [RHEL-26162]
- PCI/P2PDMA: Remove redundant goto (Myron Stowe) [RHEL-26162]
- PCI/P2PDMA: Fix undefined behavior bug in struct pci_p2pdma_pagemap (Myron Stowe) [RHEL-26162]
- PCI: acpiphp: Allow built-in drivers for Attention Indicators (Myron Stowe) [RHEL-26162]
- PCI: keystone: Don't discard .probe() callback (Myron Stowe) [RHEL-26162]
- PCI: keystone: Don't discard .remove() callback (Myron Stowe) [RHEL-26162]
- PCI: kirin: Don't discard .remove() callback (Myron Stowe) [RHEL-26162]
- PCI: exynos: Don't discard .remove() callback (Myron Stowe) [RHEL-26162]
- PCI/ACPI: Use acpi_evaluate_dsm_typed() (Myron Stowe) [RHEL-26162]
- drm/radeon: Use pci_get_base_class() to reduce duplicated code (Myron Stowe) [RHEL-26162]
- drm/amdgpu: Use pci_get_base_class() to reduce duplicated code (Myron Stowe) [RHEL-26162]
- drm/nouveau: Use pci_get_base_class() to reduce duplicated code (Myron Stowe) [RHEL-26162]
- ALSA: hda: Use pci_get_base_class() to reduce duplicated code (Myron Stowe) [RHEL-26162]
- PCI: Add pci_get_base_class() helper (Myron Stowe) [RHEL-26162]
- PCI: endpoint: Use IS_ERR_OR_NULL() helper function (Myron Stowe) [RHEL-26162]
- PCI/ASPM: Fix L1 substate handling in aspm_attr_store_common() (Myron Stowe) [RHEL-26162]
- Revert "PCI/ASPM: Disable only ASPM_STATE_L1 when driver, disables L1" (Myron Stowe) [RHEL-26162]
- PCI/ASPM: Convert printk() to pr_*() and add include (Myron Stowe) [RHEL-26162]
- PCI/ASPM: Remove unnecessary includes (Myron Stowe) [RHEL-26162]
- PCI/ASPM: Use FIELD_MAX() instead of literals (Myron Stowe) [RHEL-26162]
- PCI/ASPM: Use time constants (Myron Stowe) [RHEL-26162]
- PCI/ASPM: Return U32_MAX instead of bit magic construct (Myron Stowe) [RHEL-26162]
- PCI/ASPM: Use FIELD_GET/PREP() to access PCIe capability fields (Myron Stowe) [RHEL-26162]
- PCI: Add PCI_L1SS_CTL2 fields (Myron Stowe) [RHEL-26162]
- PCI/AER: Factor out interrupt toggling into helpers (Myron Stowe) [RHEL-26162]
- pinctrl: intel: use the correct _PM_OPS() export macro (David Arcari) [RHEL-26354]
- pinctrl: don't put the reference to GPIO device in pinctrl_pins_show() (David Arcari) [RHEL-26354]
- PM: Provide EXPORT_NS_GPL_DEV_SLEEP_PM_OPS (David Arcari) [RHEL-26354]
- pinctrl: intel: Add Intel Meteor Point pin controller and GPIO support (David Arcari) [RHEL-26354]
- pinctrl: core: Remove unused members from struct group_desc (David Arcari) [RHEL-26354]
- pinctrl: imx: Convert to use grp member (David Arcari) [RHEL-26354]
- pinctrl: imx: Use temporary variable to hold pins (David Arcari) [RHEL-26354]
- pinctrl: freescale: remove generic pin config core support (David Arcari) [RHEL-26354]
- pinctrl: core: Embed struct pingroup into struct group_desc (David Arcari) [RHEL-26354]
- pinctrl: core: Add a convenient define PINCTRL_GROUP_DESC() (David Arcari) [RHEL-26354]
- pinctrl: baytrail: use gpiochip_dup_line_label() (David Arcari) [RHEL-26354]
- gpiolib: provide gpiochip_dup_line_label() (David Arcari) [RHEL-26354]
- pinctrl: core: Make pins const unsigned int pointer in struct group_desc (David Arcari) [RHEL-26354]
- pinctrl: Convert unsigned to unsigned int (David Arcari) [RHEL-26354]
- pinctrl: don't include GPIOLIB private header (David Arcari) [RHEL-26354]
- pinctrl: stop using gpiod_to_chip() (David Arcari) [RHEL-26354]
- gpiolib: add gpio_device_get_label() stub for !GPIOLIB (David Arcari) [RHEL-26354]
- gpiolib: add gpio_device_get_base() stub for !GPIOLIB (David Arcari) [RHEL-26354]
- gpiolib: add gpiod_to_gpio_device() stub for !GPIOLIB (David Arcari) [RHEL-26354]
- gpiolib: Fix scope-based gpio_device refcounting (David Arcari) [RHEL-26354]
- gpiolib: provide gpio_device_get_label() (David Arcari) [RHEL-26354]
- gpiolib: provide gpio_device_get_base() (David Arcari) [RHEL-26354]
- gpiolib: provide gpiod_to_gpio_device() (David Arcari) [RHEL-26354]
- gpiolib: add support for scope-based management to gpio_device (David Arcari) [RHEL-26354]
- gpiolib: make gpio_device_get() and gpio_device_put() public (David Arcari) [RHEL-26354]
- pinctrl: baytrail: Simplify code with cleanup helpers (David Arcari) [RHEL-26354]
- pinctrl: Bulk conversion to generic_handle_domain_irq() (David Arcari) [RHEL-26354]
- pinctrl: baytrail: Move default strength assignment to a switch-case (David Arcari) [RHEL-26354]
- pinctrl: baytrail: Factor out byt_gpio_force_input_mode() (David Arcari) [RHEL-26354]
- pinctrl: baytrail: Fix types of config value in byt_pin_config_set() (David Arcari) [RHEL-26354]
- pinctrl: avoid reload of p state in list iteration (David Arcari) [RHEL-26354]
- pinctrl: intel: Add a generic Intel pin control platform driver (David Arcari) [RHEL-26354]
- devres: Provide krealloc_array (David Arcari) [RHEL-26354]
- redhat/configs: enable new intel pinctrl configs (David Arcari) [RHEL-26354]
- pinctrl: intel: Revert "Unexport intel_pinctrl_probe()" (David Arcari) [RHEL-26354]
- pinctrl: intel: allow independent COMPILE_TEST (David Arcari) [RHEL-26354]
- pinctrl: intel: Refactor intel_pinctrl_get_soc_data() (David Arcari) [RHEL-26354]
- pinctrl: intel: Move default strength assignment to a switch-case (David Arcari) [RHEL-26354]
- pinctrl: intel: Make PM ops functions static (David Arcari) [RHEL-26354]
- pinctrl: tigerlake: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: sunrisepoint: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: meteorlake: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: lewisburg: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: lakefield: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: jasperlake: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: icelake: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: geminilake: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: emmitsburg: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: elkhartlake: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: denverton: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: cedarfork: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: cannonlake: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: broxton: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: alderlake: Switch to use Intel pin control PM ops (David Arcari) [RHEL-26354]
- pinctrl: intel: Provide Intel pin control wide PM ops structure (David Arcari) [RHEL-26354]
- Remove custom EXPORT_NS_GPL_DEV_PM_OPS macro (David Arcari) [RHEL-26354]
- PM: Improve EXPORT_*_DEV_PM_OPS macros (David Arcari) [RHEL-26354]
- export: fix string handling of namespace in EXPORT_SYMBOL_NS (David Arcari) [RHEL-26354]
- PM: core: Add NS varients of EXPORT[_GPL]_SIMPLE_DEV_PM_OPS and runtime pm equiv (David Arcari) [RHEL-26354]
- pinctrl: change the signature of pinctrl_ready_for_gpio_range() (David Arcari) [RHEL-26354]
- pinctrl: change the signature of gpio_to_pin() (David Arcari) [RHEL-26354]
- pinctrl: change the signature of pinctrl_match_gpio_range() (David Arcari) [RHEL-26354]
- pinctrl: change the signature of pinctrl_get_device_gpio_range() (David Arcari) [RHEL-26354]
- pinctrl: change the signature of pinctrl_gpio_direction() (David Arcari) [RHEL-26354]
- treewide: rename pinctrl_gpio_set_config_new() (David Arcari) [RHEL-26354]
- treewide: rename pinctrl_gpio_direction_output_new() (David Arcari) [RHEL-26354]
- treewide: rename pinctrl_gpio_direction_input_new() (David Arcari) [RHEL-26354]
- treewide: rename pinctrl_gpio_free_new() (David Arcari) [RHEL-26354]
- treewide: rename pinctrl_gpio_request_new() (David Arcari) [RHEL-26354]
- treewide: rename pinctrl_gpio_can_use_line_new() (David Arcari) [RHEL-26354]
- gpio: cdev: use pinctrl_gpio_can_use_line_new() (David Arcari) [RHEL-26354]
- pinctrl: remove pinctrl_gpio_set_config() (David Arcari) [RHEL-26354]
- pinctrl: remove pinctrl_gpio_direction_output() (David Arcari) [RHEL-26354]
- pinctrl: remove pinctrl_gpio_direction_input() (David Arcari) [RHEL-26354]
- pinctrl: remove pinctrl_gpio_free() (David Arcari) [RHEL-26354]
- pinctrl: remove pinctrl_gpio_request() (David Arcari) [RHEL-26354]
- pinctrl: remove pinctrl_gpio_can_use_line() (David Arcari) [RHEL-26354]
- pinctrl: intel: use new pinctrl GPIO helpers (David Arcari) [RHEL-26354]
- gpio: aspeed: use new pinctrl GPIO helpers (David Arcari) [RHEL-26354]
- gpio: aspeed: fix the GPIO number passed to pinctrl_gpio_set_config() (David Arcari) [RHEL-26354]
- gpio: vf610: use new pinctrl GPIO helpers (David Arcari) [RHEL-26354]
- pinctrl: bcm: use new pinctrl GPIO helpers (David Arcari) [RHEL-26354]
- gpio: tegra: use new pinctrl GPIO helpers (David Arcari) [RHEL-26354]
- gpiolib: generic: use new pinctrl GPIO helpers (David Arcari) [RHEL-26354]
- pinctrl: provide new GPIO-to-pinctrl glue helpers (David Arcari) [RHEL-26354]
- pinctrl: intel: use acpi_dev_uid_match() for matching _UID (David Arcari) [RHEL-26354]
- ACPI: utils: Introduce acpi_dev_uid_match() for matching _UID (David Arcari) [RHEL-26354]
- pinctrl: remove unneeded extern specifiers from consumer.h (David Arcari) [RHEL-26354]
- kernel.h: Move ARRAY_SIZE() to a separate header (David Arcari) [RHEL-26354]
- Revert "pinctrl: avoid unsafe code pattern in find_pinctrl()" (David Arcari) [RHEL-26354]
- pinctrl: intel: fetch community only when we need it (David Arcari) [RHEL-26354]
- pinctrl: core: Remove unneeded {} around one line conditional body (David Arcari) [RHEL-26354]
- pinctrl: denverton: Replace MODULE_ALIAS() with MODULE_DEVICE_TABLE() (David Arcari) [RHEL-26354]
- pinctrl: broxton: Replace MODULE_ALIAS() with MODULE_DEVICE_TABLE() (David Arcari) [RHEL-26354]
- pinctrl: intel: Replace kernel.h by what is actually being used (David Arcari) [RHEL-26354]
- pinctrl: baytrail: Replace kernel.h by what is actually being used (David Arcari) [RHEL-26354]
- pinctrl: Replace kernel.h by what is actually being used (David Arcari) [RHEL-26354]
- pinctrl: baytrail: drop runtime PM support (David Arcari) [RHEL-26354]
- pinctrl: intel: refine intel_config_set_pull() function (David Arcari) [RHEL-26354]
- pinctrl: denverton: Enable platform device in the absence of ACPI enumeration (David Arcari) [RHEL-26354]
- pinctrl: intel: Simplify code with cleanup helpers (David Arcari) [RHEL-26354]
- pinctrl: avoid unsafe code pattern in find_pinctrl() (David Arcari) [RHEL-26354]
- pinctrl: baytrail: fix debounce disable case (David Arcari) [RHEL-26354]
- pinctrl: pinmux: Remove duplicate error message in pin_request() (David Arcari) [RHEL-26354]
- pinctrl: intel: consolidate ACPI dependency (David Arcari) [RHEL-26354]
- pinctrl: baytrail: Make use of pm_ptr() (David Arcari) [RHEL-26354]
- pinctrl: baytrail: reuse common functions from pinctrl-intel (David Arcari) [RHEL-26354]
- pinctrl: intel: export common pinctrl functions (David Arcari) [RHEL-26354]
- pinctrl: baytrail: consolidate common mask operation (David Arcari) [RHEL-26354]
- pinctrl: pinmux: handle radix_tree_insert() errors in pinmux_generic_add_function() (David Arcari) [RHEL-26354]
- pinctrl: core: handle radix_tree_insert() errors in pinctrl_register_one_pin() (David Arcari) [RHEL-26354]
- pinctrl: core: handle radix_tree_insert() errors in pinctrl_generic_add_group() (David Arcari) [RHEL-26354]
- pinctrl: baytrail: invert if condition (David Arcari) [RHEL-26354]
- pinctrl: baytrail: add warning for BYT_VAL_REG retrieval failure (David Arcari) [RHEL-26354]
- pinctrl: baytrail: reduce scope of spinlock in ->dbg_show() hook (David Arcari) [RHEL-26354]
- pinctrl: intel: refine ->irq_set_type() hook (David Arcari) [RHEL-26354]
- pinctrl: intel: refine ->set_mux() hook (David Arcari) [RHEL-26354]
- pinctrl: baytrail: Use str_hi_lo() helper (David Arcari) [RHEL-26354]
- pinctrl: Relax user input size in pinmux_select() (David Arcari) [RHEL-26354]
- pinctrl: Duplicate user memory in one go in pinmux_select() (David Arcari) [RHEL-26354]
- pinctrl: baytrail: Unify style of error and debug messages (David Arcari) [RHEL-26354]
- pinctrl: baytrail: Use BIT() in BYT_PULL_ASSIGN_* definitions (David Arcari) [RHEL-26354]
- pinctrl: sunrisepoint: Replace SPT_COMMUNITY() by INTEL_COMMUNITY_*() (David Arcari) [RHEL-26354]
- pinctrl: tigerlake: Replace TGL_COMMUNITY() by INTEL_COMMUNITY_GPPS() (David Arcari) [RHEL-26354]
- pinctrl: lewisburg: Replace LBG_COMMUNITY() by INTEL_COMMUNITY_SIZE() (David Arcari) [RHEL-26354]
- pinctrl: lakefield: Replace LKF_COMMUNITY() by INTEL_COMMUNITY_GPPS() (David Arcari) [RHEL-26354]
- pinctrl: jasperlake: Replace JSL_COMMUNITY() by INTEL_COMMUNITY_GPPS() (David Arcari) [RHEL-26354]
- pinctrl: icelake: Replace ICL_COMMUNITY() by INTEL_COMMUNITY_GPPS() (David Arcari) [RHEL-26354]
- pinctrl: geminilake: Replace GLK_COMMUNITY() by INTEL_COMMUNITY_SIZE() (David Arcari) [RHEL-26354]
- pinctrl: emmitsburg: Replace EBG_COMMUNITY() by INTEL_COMMUNITY_GPPS() (David Arcari) [RHEL-26354]
- pinctrl: elkhartlake: Replace EHL_COMMUNITY() by INTEL_COMMUNITY_GPPS() (David Arcari) [RHEL-26354]
- pinctrl: denverton: Replace DNV_COMMUNITY() by INTEL_COMMUNITY_GPPS() (David Arcari) [RHEL-26354]
- pinctrl: cedarfork: Replace CDF_COMMUNITY() by INTEL_COMMUNITY_GPPS() (David Arcari) [RHEL-26354]
- pinctrl: cannonlake: Replace CNL_COMMUNITY() by INTEL_COMMUNITY_GPPS() (David Arcari) [RHEL-26354]
- pinctrl: broxton: Replace BXT_COMMUNITY() by INTEL_COMMUNITY_SIZE() (David Arcari) [RHEL-26354]
- pinctrl: alderlake: Replace ADL_COMMUNITY() by INTEL_COMMUNITY_GPPS() (David Arcari) [RHEL-26354]
- pinctrl: intel: Enumerate PWM device when community has a capability (David Arcari) [RHEL-26354]
- pwm: lpss: Rename pwm_lpss_probe() --> devm_pwm_lpss_probe() (David Arcari) [RHEL-26354]
- pwm: lpss: Allow other drivers to enable PWM LPSS (David Arcari) [RHEL-26354]
- pwm: lpss: Include headers we are the direct user of (David Arcari) [RHEL-26354]
- pwm: lpss: Rename MAX_PWMS --> LPSS_MAX_PWMS (David Arcari) [RHEL-26354]
- pwm: lpss: Add a comment to the bypass field (David Arcari) [RHEL-26354]
- pwm: lpss: Move resource mapping to the glue drivers (David Arcari) [RHEL-26354]
- pwm: lpss: Deduplicate board info data structures (David Arcari) [RHEL-26354]
- pinctrl: intel: Add Intel Moorefield pin controller support (David Arcari) [RHEL-26354]
- pinctrl: sunrisepoint: Deduplicate COMMUNITY macro code (David Arcari) [RHEL-26354]
- pinctrl: tigerlake: Deduplicate COMMUNITY macro code (David Arcari) [RHEL-26354]
- pinctrl: alderlake: Deduplicate COMMUNITY macro code (David Arcari) [RHEL-26354]
- pinctrl: cannonlake: Deduplicate COMMUNITY macro code (David Arcari) [RHEL-26354]
- pinctrl: icelake: Deduplicate COMMUNITY macro code (David Arcari) [RHEL-26354]
- pinctrl: core: Use device_match_of_node() helper (David Arcari) [RHEL-26354]
- redhat/configs: intel pinctrl config cleanup (David Arcari) [RHEL-26354]
- config: wifi: enable MT7925E card (Jose Ignacio Tornos Martinez) [RHEL-14693]
- shmem: support idmapped mounts for tmpfs (Giuseppe Scrivano) [RHEL-23900]
- iommu/vt-d: Fix incorrect cache invalidation for mm notification (Jerry Snitselaar) [RHEL-26541]
- mmu_notifiers: rename invalidate_range notifier (Jerry Snitselaar) [RHEL-26541]
- mmu_notifiers: don't invalidate secondary TLBs as part of mmu_notifier_invalidate_range_end() (Jerry Snitselaar) [RHEL-26541]
- mmu_notifiers: call invalidate_range() when invalidating TLBs (Jerry Snitselaar) [RHEL-26541]
- mmu_notifiers: fixup comment in mmu_interval_read_begin() (Jerry Snitselaar) [RHEL-26541]
- mlxbf_gige: Enable the GigE port in mlxbf_gige_open (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: Fix intermittent no ip issue (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: fix receive packet race condition (Luiz Capitulino) [RHEL-21118]
- net: ethernet: mellanox: Convert to platform remove callback returning void (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: Remove two unused function declarations (Luiz Capitulino) [RHEL-21118]
- net: mellanox: mlxbf_gige: Fix skb_panic splat under memory pressure (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: fix white space in mlxbf_gige_eth_ioctl (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: add "set_link_ksettings" ethtool callback (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: support 10M/100M/1G speeds on BlueField-3 (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: add MDIO support for BlueField-3 (Luiz Capitulino) [RHEL-21118]
- net/mlxbf_gige: Fix an IS_ERR() vs NULL bug in mlxbf_gige_mdio_probe (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: clear MDIO gateway lock after read (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: compute MDIO period based on i1clk (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: remove own module name define and use KBUILD_MODNAME instead (Luiz Capitulino) [RHEL-21118]
- net/mlxbf_gige: use eth_zero_addr() to clear mac address (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: remove driver-managed interrupt counts (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: increase MDIO polling rate to 5us (Luiz Capitulino) [RHEL-21118]
- net: mellanox: mlxbf_gige: Replace non-standard interrupt handling (Luiz Capitulino) [RHEL-21118]
- mlxbf_gige: clear valid_polarity upon open (Luiz Capitulino) [RHEL-21118]
- net/mlxbf_gige: Make use of devm_platform_ioremap_resourcexxx() (Luiz Capitulino) [RHEL-21118]
- redhat: update self-test data (Scott Weaver)
- redhat: enable zstream release numbering for RHEL 9.4 (Scott Weaver)
- redhat: set default dist suffix for RHEL 9.4 (Scott Weaver)
- redhat: fix changelog copying (Jan Stancek)
- Bump RHEL_MINOR for 9.5 (Lucas Zampieri)
- redhat: do not compress the full kernel changelog in the src.rpm (Herton R. Krzesinski)
- redhat: ship all the changelog from source git into kernel-doc (Herton R. Krzesinski)
- redhat: create an empty changelog file when changing its name (Herton R. Krzesinski)
###
# The following Emacs magic makes C-c C-e use UTC dates.
# Local Variables:
# rpm-change-log-uses-utc: t
# End:
###