|
Justin Vreeland |
1fc083 |
# All Global changes to build and install go here.
|
|
Justin Vreeland |
1fc083 |
# Per the below section about __spec_install_pre, any rpm
|
|
Justin Vreeland |
1fc083 |
# environment changes that affect %%install need to go
|
|
Justin Vreeland |
1fc083 |
# here before the %%install macro is pre-built.
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
# Disable LTO in userspace packages.
|
|
Justin Vreeland |
1fc083 |
%global _lto_cflags %{nil}
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
# Option to enable compiling with clang instead of gcc.
|
|
Justin Vreeland |
1fc083 |
%bcond_with toolchain_clang
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
%if %{with toolchain_clang}
|
|
Justin Vreeland |
1fc083 |
%global toolchain clang
|
|
Justin Vreeland |
1fc083 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# Cross compile on copr for arm
|
|
Justin Vreeland |
1fc083 |
# See https://bugzilla.redhat.com/1879599
|
|
Justin Vreeland |
1fc083 |
%if 0%{?_with_cross_arm:1}
|
|
Justin Vreeland |
1fc083 |
%global _target_cpu armv7hl
|
|
Justin Vreeland |
1fc083 |
%global _arch arm
|
|
Justin Vreeland |
1fc083 |
%global _build_arch arm
|
|
Justin Vreeland |
1fc083 |
%global _with_cross 1
|
|
Justin Vreeland |
1fc083 |
%endif
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
# The kernel's %%install section is special
|
|
Justin Vreeland |
1fc083 |
# Normally the %%install section starts by cleaning up the BUILD_ROOT
|
|
Justin Vreeland |
1fc083 |
# like so:
|
|
Justin Vreeland |
1fc083 |
#
|
|
Justin Vreeland |
1fc083 |
# %%__spec_install_pre %%{___build_pre}\
|
|
Justin Vreeland |
1fc083 |
# [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf "${RPM_BUILD_ROOT}"\
|
|
Justin Vreeland |
1fc083 |
# mkdir -p `dirname "$RPM_BUILD_ROOT"`\
|
|
Justin Vreeland |
1fc083 |
# mkdir "$RPM_BUILD_ROOT"\
|
|
Justin Vreeland |
1fc083 |
# %%{nil}
|
|
Justin Vreeland |
1fc083 |
#
|
|
Justin Vreeland |
1fc083 |
# But because of kernel variants, the %%build section, specifically
|
|
Justin Vreeland |
1fc083 |
# BuildKernel(), moves each variant to its final destination as the
|
|
Justin Vreeland |
1fc083 |
# variant is built. This violates the expectation of the %%install
|
|
Justin Vreeland |
1fc083 |
# section. As a result we snapshot the current env variables and
|
|
Justin Vreeland |
1fc083 |
# purposely leave out the removal section. All global wide changes
|
|
Justin Vreeland |
1fc083 |
# should be added above this line otherwise the %%install section
|
|
Justin Vreeland |
1fc083 |
# will not see them.
|
|
Justin Vreeland |
1fc083 |
%global __spec_install_pre %{___build_pre}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# At the time of this writing (2019-03), RHEL8 packages use w2.xzdio
|
|
Justin Vreeland |
794d92 |
# compression for rpms (xz, level 2).
|
|
Justin Vreeland |
794d92 |
# Kernel has several large (hundreds of mbytes) rpms, they take ~5 mins
|
|
Justin Vreeland |
794d92 |
# to compress by single-threaded xz. Switch to threaded compression,
|
|
Justin Vreeland |
794d92 |
# and from level 2 to 3 to keep compressed sizes close to "w2" results.
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# NB: if default compression in /usr/lib/rpm/redhat/macros ever changes,
|
|
Justin Vreeland |
794d92 |
# this one might need tweaking (e.g. if default changes to w3.xzdio,
|
|
Justin Vreeland |
794d92 |
# change below to w4T.xzdio):
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This is disabled on i686 as it triggers oom errors
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifnarch i686
|
|
Justin Vreeland |
794d92 |
%define _binary_payload w3T.xzdio
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
Summary: The Linux kernel
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# For a kernel released for public testing, released_kernel should be 1.
|
|
Justin Vreeland |
794d92 |
# For internal testing builds during development, it should be 0.
|
|
Justin Vreeland |
794d92 |
# For rawhide and/or a kernel built from an rc or git snapshot,
|
|
Justin Vreeland |
794d92 |
# released_kernel should be 0.
|
|
Justin Vreeland |
794d92 |
# For a stable, released kernel, released_kernel should be 1.
|
|
Justin Vreeland |
1fc083 |
%global released_kernel 0
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
d5a02a |
%global distro_build 76
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
# hyperscale
|
|
Justin Vreeland |
1fc083 |
# %if 0%{?fedora}
|
|
Justin Vreeland |
1fc083 |
# %define secure_boot_arch x86_64
|
|
Justin Vreeland |
1fc083 |
# %else
|
|
Justin Vreeland |
1fc083 |
# %define secure_boot_arch x86_64
|
|
Justin Vreeland |
1fc083 |
# %endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Signing for secure boot authentication
|
|
Justin Vreeland |
1fc083 |
# %ifarch %{secure_boot_arch}
|
|
Justin Vreeland |
1fc083 |
# %global signkernel 1
|
|
Justin Vreeland |
1fc083 |
# %else
|
|
Justin Vreeland |
794d92 |
%global signkernel 0
|
|
Justin Vreeland |
1fc083 |
# %endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Sign modules on all arches
|
|
Justin Vreeland |
1fc083 |
%global signmodules 0
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Compress modules only for architectures that build modules
|
|
Justin Vreeland |
794d92 |
%ifarch noarch
|
|
Justin Vreeland |
794d92 |
%global zipmodules 0
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
794d92 |
%global zipmodules 1
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{zipmodules}
|
|
Justin Vreeland |
794d92 |
%global zipsed -e 's/\.ko$/\.ko.xz/'
|
|
Justin Vreeland |
794d92 |
# for parallel xz processes, replace with 1 to go back to single process
|
|
Justin Vreeland |
794d92 |
%global zcpu `nproc --all`
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# define buildid .local
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
794d92 |
%if 0%{?fedora}
|
|
Justin Vreeland |
794d92 |
%define primary_target fedora
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
61e3fc |
%define primary_target rhel
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
%define rpmversion 5.14.0
|
|
Justin Vreeland |
1fc083 |
%define stableversion 5.14
|
|
Justin Vreeland |
d5a02a |
%define pkgrelease 76.hs1.el8
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# This is needed to do merge window version magic
|
|
Justin Vreeland |
1fc083 |
%define patchlevel 14
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# allow pkg_release to have configurable %%{?dist} tag
|
|
Justin Vreeland |
d5a02a |
%define specrelease 76.hs1%{?buildid}%{?dist}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
%define pkg_release %{specrelease}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# What parts do we want to build? These are the kernels that are built IF the
|
|
Justin Vreeland |
1fc083 |
# architecture allows it. All should default to 1 (enabled) and be flipped to
|
|
Justin Vreeland |
1fc083 |
# 0 (disabled) by later arch-specific checks.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# The following build options are enabled by default.
|
|
Justin Vreeland |
794d92 |
# Use either --without <opt> in your rpmbuild command or force values
|
|
Justin Vreeland |
794d92 |
# to 0 in here to disable them.
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# standard kernel
|
|
Justin Vreeland |
794d92 |
%define with_up %{?_without_up: 0} %{?!_without_up: 1}
|
|
Justin Vreeland |
794d92 |
# kernel PAE (only valid for ARM (lpae))
|
|
Justin Vreeland |
794d92 |
%define with_pae %{?_without_pae: 0} %{?!_without_pae: 1}
|
|
Justin Vreeland |
794d92 |
# kernel-debug
|
|
Justin Vreeland |
794d92 |
%define with_debug %{?_without_debug: 0} %{?!_without_debug: 1}
|
|
Justin Vreeland |
794d92 |
# kernel-doc
|
|
Justin Vreeland |
794d92 |
%define with_doc %{?_without_doc: 0} %{?!_without_doc: 1}
|
|
Justin Vreeland |
794d92 |
# kernel-headers
|
|
Justin Vreeland |
794d92 |
%define with_headers %{?_without_headers: 0} %{?!_without_headers: 1}
|
|
Justin Vreeland |
794d92 |
%define with_cross_headers %{?_without_cross_headers: 0} %{?!_without_cross_headers: 1}
|
|
Justin Vreeland |
794d92 |
# perf
|
|
Justin Vreeland |
794d92 |
%define with_perf %{?_without_perf: 0} %{?!_without_perf: 1}
|
|
Justin Vreeland |
794d92 |
# tools
|
|
Justin Vreeland |
794d92 |
%define with_tools %{?_without_tools: 0} %{?!_without_tools: 1}
|
|
Justin Vreeland |
794d92 |
# bpf tool
|
|
Justin Vreeland |
794d92 |
%define with_bpftool %{?_without_bpftool: 0} %{?!_without_bpftool: 1}
|
|
Justin Vreeland |
794d92 |
# kernel-debuginfo
|
|
Justin Vreeland |
794d92 |
%define with_debuginfo %{?_without_debuginfo: 0} %{?!_without_debuginfo: 1}
|
|
Justin Vreeland |
794d92 |
# Want to build a the vsdo directories installed
|
|
Justin Vreeland |
794d92 |
%define with_vdso_install %{?_without_vdso_install: 0} %{?!_without_vdso_install: 1}
|
|
Justin Vreeland |
794d92 |
# kernel-zfcpdump (s390 specific kernel for zfcpdump)
|
|
Justin Vreeland |
794d92 |
%define with_zfcpdump %{?_without_zfcpdump: 0} %{?!_without_zfcpdump: 1}
|
|
Justin Vreeland |
794d92 |
# kernel-abi-whitelists
|
|
Justin Vreeland |
1fc083 |
%define with_kernel_abi_whitelists %{?_without_kernel_abi_whitelists: 0} %{?!_without_kernel_abi_whitelists: 1}
|
|
Justin Vreeland |
794d92 |
# internal samples and selftests
|
|
Justin Vreeland |
794d92 |
%define with_selftests %{?_without_selftests: 0} %{?!_without_selftests: 1}
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# Additional options for user-friendly one-off kernel building:
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# Only build the base kernel (--with baseonly):
|
|
Justin Vreeland |
794d92 |
%define with_baseonly %{?_with_baseonly: 1} %{?!_with_baseonly: 0}
|
|
Justin Vreeland |
794d92 |
# Only build the pae kernel (--with paeonly):
|
|
Justin Vreeland |
794d92 |
%define with_paeonly %{?_with_paeonly: 1} %{?!_with_paeonly: 0}
|
|
Justin Vreeland |
794d92 |
# Only build the debug kernel (--with dbgonly):
|
|
Justin Vreeland |
794d92 |
%define with_dbgonly %{?_with_dbgonly: 1} %{?!_with_dbgonly: 0}
|
|
Justin Vreeland |
794d92 |
# Control whether we perform a compat. check against published ABI.
|
|
Justin Vreeland |
735474 |
%define with_kabichk %{?_without_kabichk: 0} %{?!_without_kabichk: 0}
|
|
Justin Vreeland |
794d92 |
# Temporarily disable kabi checks until RC.
|
|
Justin Vreeland |
794d92 |
%define with_kabichk 0
|
|
Justin Vreeland |
794d92 |
# Control whether we perform a compat. check against DUP ABI.
|
|
Justin Vreeland |
794d92 |
%define with_kabidupchk %{?_with_kabidupchk: 1} %{?!_with_kabidupchk: 0}
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# Control whether to run an extensive DWARF based kABI check.
|
|
Justin Vreeland |
794d92 |
# Note that this option needs to have baseline setup in SOURCE300.
|
|
Justin Vreeland |
1fc083 |
%define with_kabidwchk %{?_without_kabidwchk: 0} %{?!_without_kabidwchk: 0}
|
|
Justin Vreeland |
794d92 |
%define with_kabidw_base %{?_with_kabidw_base: 1} %{?!_with_kabidw_base: 0}
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# should we do C=1 builds with sparse
|
|
Justin Vreeland |
794d92 |
%define with_sparse %{?_with_sparse: 1} %{?!_with_sparse: 0}
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# Cross compile requested?
|
|
Justin Vreeland |
794d92 |
%define with_cross %{?_with_cross: 1} %{?!_with_cross: 0}
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# build a release kernel on rawhide
|
|
Justin Vreeland |
794d92 |
%define with_release %{?_with_release: 1} %{?!_with_release: 0}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# verbose build, i.e. no silent rules and V=1
|
|
Justin Vreeland |
794d92 |
%define with_verbose %{?_with_verbose: 1} %{?!_with_verbose: 0}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# check for mismatched config options
|
|
Justin Vreeland |
794d92 |
%define with_configchecks %{?_without_configchecks: 0} %{?!_without_configchecks: 1}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# gcov support
|
|
Justin Vreeland |
794d92 |
%define with_gcov %{?_with_gcov:1}%{?!_with_gcov:0}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# ipa_clone support
|
|
Justin Vreeland |
794d92 |
%define with_ipaclones %{?_without_ipaclones: 0} %{?!_without_ipaclones: 1}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Want to build a vanilla kernel build without any non-upstream patches?
|
|
Justin Vreeland |
794d92 |
%define with_vanilla %{?_with_vanilla: 1} %{?!_with_vanilla: 0}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Set debugbuildsenabled to 1 for production (build separate debug kernels)
|
|
Justin Vreeland |
794d92 |
# and 0 for rawhide (all kernels are debug kernels).
|
|
Justin Vreeland |
794d92 |
# See also 'make debug' and 'make release'.
|
|
Justin Vreeland |
794d92 |
%define debugbuildsenabled 1
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# The kernel tarball/base version
|
|
Justin Vreeland |
1fc083 |
%define kversion 5.14
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
794d92 |
%if 0%{?fedora}
|
|
Justin Vreeland |
794d92 |
# Kernel headers are being split out into a separate package
|
|
Justin Vreeland |
794d92 |
%define with_headers 0
|
|
Justin Vreeland |
794d92 |
%define with_cross_headers 0
|
|
Justin Vreeland |
794d92 |
# no ipa_clone for now
|
|
Justin Vreeland |
794d92 |
%define with_ipaclones 0
|
|
Justin Vreeland |
794d92 |
# no whitelist
|
|
Justin Vreeland |
794d92 |
%define with_kernel_abi_whitelists 0
|
|
Justin Vreeland |
794d92 |
# Fedora builds these separately
|
|
Justin Vreeland |
794d92 |
%define with_perf 0
|
|
Justin Vreeland |
794d92 |
%define with_tools 0
|
|
Justin Vreeland |
794d92 |
%define with_bpftool 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_verbose}
|
|
Justin Vreeland |
794d92 |
%define make_opts V=1
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
794d92 |
%define make_opts -s
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
%if %{with toolchain_clang}
|
|
Justin Vreeland |
1fc083 |
%global make_opts %{make_opts} HOSTCC=clang CC=clang
|
|
Justin Vreeland |
1fc083 |
# clang does not support the -fdump-ipa-clones option
|
|
Justin Vreeland |
1fc083 |
%global with_ipaclones 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# turn off debug kernel and kabichk for gcov builds
|
|
Justin Vreeland |
794d92 |
%if %{with_gcov}
|
|
Justin Vreeland |
794d92 |
%define with_debug 0
|
|
Justin Vreeland |
794d92 |
%define with_kabichk 0
|
|
Justin Vreeland |
794d92 |
%define with_kabidupchk 0
|
|
Justin Vreeland |
794d92 |
%define with_kabidwchk 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# turn off kABI DWARF-based check if we're generating the base dataset
|
|
Justin Vreeland |
794d92 |
%if %{with_kabidw_base}
|
|
Justin Vreeland |
794d92 |
%define with_kabidwchk 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# kpatch_kcflags are extra compiler flags applied to base kernel
|
|
Justin Vreeland |
794d92 |
# -fdump-ipa-clones is enabled only for base kernels on selected arches
|
|
Justin Vreeland |
794d92 |
%if %{with_ipaclones}
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64 ppc64le
|
|
Justin Vreeland |
794d92 |
%define kpatch_kcflags -fdump-ipa-clones
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
794d92 |
%define with_ipaclones 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%define make_target bzImage
|
|
Justin Vreeland |
794d92 |
%define image_install_path boot
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%define KVERREL %{version}-%{release}.%{_target_cpu}
|
|
Justin Vreeland |
794d92 |
%define KVERREL_RE %(echo %KVERREL | sed 's/+/[+]/g')
|
|
Justin Vreeland |
794d92 |
%define hdrarch %_target_cpu
|
|
Justin Vreeland |
794d92 |
%define asmarch %_target_cpu
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if 0%{!?nopatches:1}
|
|
Justin Vreeland |
794d92 |
%define nopatches 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_vanilla}
|
|
Justin Vreeland |
794d92 |
%define nopatches 1
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{nopatches}
|
|
Justin Vreeland |
794d92 |
%define variant -vanilla
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if !%{debugbuildsenabled}
|
|
Justin Vreeland |
794d92 |
%define with_debug 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if !%{with_debuginfo}
|
|
Justin Vreeland |
794d92 |
%define _enable_debug_packages 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%define debuginfodir /usr/lib/debug
|
|
Justin Vreeland |
794d92 |
# Needed because we override almost everything involving build-ids
|
|
Justin Vreeland |
794d92 |
# and debuginfo generation. Currently we rely on the old alldebug setting.
|
|
Justin Vreeland |
794d92 |
%global _build_id_links alldebug
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# kernel PAE is only built on ARMv7
|
|
Justin Vreeland |
794d92 |
%ifnarch armv7hl
|
|
Justin Vreeland |
794d92 |
%define with_pae 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# if requested, only build base kernel
|
|
Justin Vreeland |
794d92 |
%if %{with_baseonly}
|
|
Justin Vreeland |
794d92 |
%define with_pae 0
|
|
Justin Vreeland |
794d92 |
%define with_debug 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# if requested, only build pae kernel
|
|
Justin Vreeland |
794d92 |
%if %{with_paeonly}
|
|
Justin Vreeland |
794d92 |
%define with_up 0
|
|
Justin Vreeland |
794d92 |
%define with_debug 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# if requested, only build debug kernel
|
|
Justin Vreeland |
794d92 |
%if %{with_dbgonly}
|
|
Justin Vreeland |
794d92 |
%define with_up 0
|
|
Justin Vreeland |
794d92 |
%define with_tools 0
|
|
Justin Vreeland |
794d92 |
%define with_perf 0
|
|
Justin Vreeland |
794d92 |
%define with_bpftool 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# turn off kABI DUP check and DWARF-based check if kABI check is disabled
|
|
Justin Vreeland |
794d92 |
%if !%{with_kabichk}
|
|
Justin Vreeland |
794d92 |
%define with_kabidupchk 0
|
|
Justin Vreeland |
794d92 |
%define with_kabidwchk 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_vdso_install}
|
|
Justin Vreeland |
794d92 |
%define use_vdso 1
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifnarch noarch
|
|
Justin Vreeland |
794d92 |
%define with_kernel_abi_whitelists 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Overrides for generic default options
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# only package docs noarch
|
|
Justin Vreeland |
794d92 |
%ifnarch noarch
|
|
Justin Vreeland |
794d92 |
%define with_doc 0
|
|
Justin Vreeland |
794d92 |
%define doc_build_fail true
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if 0%{?fedora}
|
|
Justin Vreeland |
794d92 |
# don't do debug builds on anything but i686 and x86_64
|
|
Justin Vreeland |
794d92 |
%ifnarch i686 x86_64
|
|
Justin Vreeland |
794d92 |
%define with_debug 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# don't build noarch kernels or headers (duh)
|
|
Justin Vreeland |
794d92 |
%ifarch noarch
|
|
Justin Vreeland |
794d92 |
%define with_up 0
|
|
Justin Vreeland |
794d92 |
%define with_headers 0
|
|
Justin Vreeland |
794d92 |
%define with_cross_headers 0
|
|
Justin Vreeland |
794d92 |
%define with_tools 0
|
|
Justin Vreeland |
794d92 |
%define with_perf 0
|
|
Justin Vreeland |
794d92 |
%define with_bpftool 0
|
|
Justin Vreeland |
794d92 |
%define with_selftests 0
|
|
Justin Vreeland |
794d92 |
%define with_debug 0
|
|
Justin Vreeland |
794d92 |
%define all_arch_configs kernel-%{version}-*.config
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# sparse blows up on ppc
|
|
Justin Vreeland |
794d92 |
%ifnarch ppc64le
|
|
Justin Vreeland |
794d92 |
%define with_sparse 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# zfcpdump mechanism is s390 only
|
|
Justin Vreeland |
794d92 |
%ifnarch s390x
|
|
Justin Vreeland |
794d92 |
%define with_zfcpdump 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if 0%{?fedora}
|
|
Justin Vreeland |
794d92 |
# This is not for Fedora
|
|
Justin Vreeland |
794d92 |
%define with_zfcpdump 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Per-arch tweaks
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifarch i686
|
|
Justin Vreeland |
794d92 |
%define asmarch x86
|
|
Justin Vreeland |
794d92 |
%define hdrarch i386
|
|
Justin Vreeland |
794d92 |
%define all_arch_configs kernel-%{version}-i?86*.config
|
|
Justin Vreeland |
794d92 |
%define kernel_image arch/x86/boot/bzImage
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64
|
|
Justin Vreeland |
794d92 |
%define asmarch x86
|
|
Justin Vreeland |
794d92 |
%define all_arch_configs kernel-%{version}-x86_64*.config
|
|
Justin Vreeland |
794d92 |
%define kernel_image arch/x86/boot/bzImage
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifarch ppc64le
|
|
Justin Vreeland |
794d92 |
%define asmarch powerpc
|
|
Justin Vreeland |
794d92 |
%define hdrarch powerpc
|
|
Justin Vreeland |
794d92 |
%define make_target vmlinux
|
|
Justin Vreeland |
794d92 |
%define kernel_image vmlinux
|
|
Justin Vreeland |
794d92 |
%define kernel_image_elf 1
|
|
Justin Vreeland |
1fc083 |
%define use_vdso 0
|
|
Justin Vreeland |
794d92 |
%define all_arch_configs kernel-%{version}-ppc64le*.config
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifarch s390x
|
|
Justin Vreeland |
794d92 |
%define asmarch s390
|
|
Justin Vreeland |
794d92 |
%define hdrarch s390
|
|
Justin Vreeland |
794d92 |
%define all_arch_configs kernel-%{version}-s390x.config
|
|
Justin Vreeland |
794d92 |
%define kernel_image arch/s390/boot/bzImage
|
|
Justin Vreeland |
1fc083 |
%define vmlinux_decompressor arch/s390/boot/compressed/vmlinux
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifarch %{arm}
|
|
Justin Vreeland |
794d92 |
%define all_arch_configs kernel-%{version}-arm*.config
|
|
Justin Vreeland |
794d92 |
%define skip_nonpae_vdso 1
|
|
Justin Vreeland |
794d92 |
%define asmarch arm
|
|
Justin Vreeland |
794d92 |
%define hdrarch arm
|
|
Justin Vreeland |
794d92 |
%define make_target bzImage
|
|
Justin Vreeland |
794d92 |
%define kernel_image arch/arm/boot/zImage
|
|
Justin Vreeland |
794d92 |
# http://lists.infradead.org/pipermail/linux-arm-kernel/2012-March/091404.html
|
|
Justin Vreeland |
794d92 |
%define kernel_mflags KALLSYMS_EXTRA_PASS=1
|
|
Justin Vreeland |
794d92 |
# we only build headers/perf/tools on the base arm arches
|
|
Justin Vreeland |
794d92 |
# just like we used to only build them on i386 for x86
|
|
Justin Vreeland |
794d92 |
%ifnarch armv7hl
|
|
Justin Vreeland |
794d92 |
%define with_headers 0
|
|
Justin Vreeland |
794d92 |
%define with_cross_headers 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
# These currently don't compile on armv7
|
|
Justin Vreeland |
794d92 |
%define with_selftests 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifarch aarch64
|
|
Justin Vreeland |
794d92 |
%define all_arch_configs kernel-%{version}-aarch64*.config
|
|
Justin Vreeland |
794d92 |
%define asmarch arm64
|
|
Justin Vreeland |
794d92 |
%define hdrarch arm64
|
|
Justin Vreeland |
794d92 |
%define make_target Image.gz
|
|
Justin Vreeland |
794d92 |
%define kernel_image arch/arm64/boot/Image.gz
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Should make listnewconfig fail if there's config options
|
|
Justin Vreeland |
794d92 |
# printed out?
|
|
Justin Vreeland |
794d92 |
%if %{nopatches}
|
|
Justin Vreeland |
794d92 |
%define with_configchecks 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# Setting the compiler to clang enables some different config options
|
|
Justin Vreeland |
1fc083 |
# than what is expected, so disable this check for now.
|
|
Justin Vreeland |
1fc083 |
# TODO: What's the best way to fix this? Do wee need a different set of
|
|
Justin Vreeland |
1fc083 |
# configs for clang?
|
|
Justin Vreeland |
1fc083 |
%if %{with toolchain_clang}
|
|
Justin Vreeland |
1fc083 |
%define with_configchecks 0
|
|
Justin Vreeland |
1fc083 |
%endif
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
794d92 |
# To temporarily exclude an architecture from being built, add it to
|
|
Justin Vreeland |
794d92 |
# %%nobuildarches. Do _NOT_ use the ExclusiveArch: line, because if we
|
|
Justin Vreeland |
794d92 |
# don't build kernel-headers then the new build system will no longer let
|
|
Justin Vreeland |
794d92 |
# us use the previous build of that package -- it'll just be completely AWOL.
|
|
Justin Vreeland |
794d92 |
# Which is a BadThing(tm).
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# We only build kernel-headers on the following...
|
|
Justin Vreeland |
794d92 |
%if 0%{?fedora}
|
|
Justin Vreeland |
794d92 |
%define nobuildarches i386
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
1fc083 |
%define nobuildarches i386 i686 %{arm}
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifarch %nobuildarches
|
|
Justin Vreeland |
1fc083 |
# disable BuildKernel commands
|
|
Justin Vreeland |
794d92 |
%define with_up 0
|
|
Justin Vreeland |
794d92 |
%define with_debug 0
|
|
Justin Vreeland |
1fc083 |
%define with_pae 0
|
|
Justin Vreeland |
1fc083 |
%define with_zfcpdump 0
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
794d92 |
%define with_debuginfo 0
|
|
Justin Vreeland |
794d92 |
%define with_perf 0
|
|
Justin Vreeland |
794d92 |
%define with_tools 0
|
|
Justin Vreeland |
794d92 |
%define with_bpftool 0
|
|
Justin Vreeland |
794d92 |
%define with_selftests 0
|
|
Justin Vreeland |
794d92 |
%define _enable_debug_packages 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Architectures we build tools/cpupower on
|
|
Justin Vreeland |
794d92 |
%if 0%{?fedora}
|
|
Justin Vreeland |
794d92 |
%define cpupowerarchs %{ix86} x86_64 ppc64le %{arm} aarch64
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
794d92 |
%define cpupowerarchs i686 x86_64 ppc64le aarch64
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
%if 0%{?use_vdso}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if 0%{?skip_nonpae_vdso}
|
|
Justin Vreeland |
794d92 |
%define _use_vdso 0
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
794d92 |
%define _use_vdso 1
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
794d92 |
%define _use_vdso 0
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# Packages that need to be installed before the kernel is, because the %%post
|
|
Justin Vreeland |
794d92 |
# scripts use them.
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_prereq coreutils, systemd >= 203-2, /usr/bin/kernel-install
|
|
Justin Vreeland |
794d92 |
%define initrd_prereq dracut >= 027
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
Name: kernel%{?variant}
|
|
Justin Vreeland |
794d92 |
License: GPLv2 and Redistributable, no modification permitted
|
|
Justin Vreeland |
794d92 |
URL: https://www.kernel.org/
|
|
Justin Vreeland |
794d92 |
Version: %{rpmversion}
|
|
Justin Vreeland |
794d92 |
Release: %{pkg_release}
|
|
Justin Vreeland |
794d92 |
# DO NOT CHANGE THE 'ExclusiveArch' LINE TO TEMPORARILY EXCLUDE AN ARCHITECTURE BUILD.
|
|
Justin Vreeland |
794d92 |
# SET %%nobuildarches (ABOVE) INSTEAD
|
|
Justin Vreeland |
794d92 |
%if 0%{?fedora}
|
|
Justin Vreeland |
794d92 |
ExclusiveArch: x86_64 s390x %{arm} aarch64 ppc64le
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
794d92 |
ExclusiveArch: noarch i386 i686 x86_64 s390x %{arm} aarch64 ppc64le
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
ExclusiveOS: Linux
|
|
Justin Vreeland |
794d92 |
%ifnarch %{nobuildarches}
|
|
Justin Vreeland |
794d92 |
Requires: kernel-core-uname-r = %{KVERREL}%{?variant}
|
|
Justin Vreeland |
794d92 |
Requires: kernel-modules-uname-r = %{KVERREL}%{?variant}
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# List the packages used during the kernel build
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
BuildRequires: kmod, patch, bash, tar, git-core
|
|
Justin Vreeland |
794d92 |
BuildRequires: bzip2, xz, findutils, gzip, m4, perl-interpreter, perl-Carp, perl-devel, perl-generators, make, diffutils, gawk
|
|
Justin Vreeland |
1fc083 |
BuildRequires: gcc, binutils, redhat-rpm-config, hmaccalc, bison, flex, gcc-c++
|
|
Justin Vreeland |
794d92 |
BuildRequires: net-tools, hostname, bc, elfutils-devel
|
|
Justin Vreeland |
794d92 |
BuildRequires: dwarves
|
|
Justin Vreeland |
794d92 |
BuildRequires: python3-devel
|
|
Justin Vreeland |
1fc083 |
BuildRequires: gcc-plugin-devel
|
|
Justin Vreeland |
d5a02a |
# glibc-static is required for a consistent build environment (specifically
|
|
Justin Vreeland |
d5a02a |
# CONFIG_CC_CAN_LINK_STATIC=y).
|
|
Justin Vreeland |
d5a02a |
BuildRequires: glibc-static
|
|
Justin Vreeland |
d5a02a |
# BuildRequires: kernel-rpm-macros >= 185-9
|
|
Justin Vreeland |
d5a02a |
%ifnarch %{nobuildarches} noarch
|
|
Justin Vreeland |
d5a02a |
BuildRequires: bpftool
|
|
Justin Vreeland |
d5a02a |
%endif
|
|
Justin Vreeland |
794d92 |
%if %{with_headers}
|
|
Justin Vreeland |
794d92 |
BuildRequires: rsync
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%if %{with_doc}
|
|
Justin Vreeland |
1fc083 |
BuildRequires: xmlto, asciidoc, python3-sphinx, python3-sphinx_rtd_theme
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%if %{with_sparse}
|
|
Justin Vreeland |
794d92 |
BuildRequires: sparse
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%if %{with_perf}
|
|
Justin Vreeland |
794d92 |
BuildRequires: zlib-devel binutils-devel newt-devel perl(ExtUtils::Embed) bison flex xz-devel
|
|
Justin Vreeland |
794d92 |
BuildRequires: audit-libs-devel
|
|
Justin Vreeland |
794d92 |
BuildRequires: java-devel
|
|
Justin Vreeland |
794d92 |
%ifnarch %{arm} s390x
|
|
Justin Vreeland |
794d92 |
BuildRequires: numactl-devel
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%if %{with_tools}
|
|
Justin Vreeland |
794d92 |
BuildRequires: gettext ncurses-devel
|
|
Justin Vreeland |
1fc083 |
BuildRequires: libcap-devel libcap-ng-devel
|
|
Justin Vreeland |
794d92 |
%ifnarch s390x
|
|
Justin Vreeland |
794d92 |
BuildRequires: pciutils-devel
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%if %{with_bpftool}
|
|
Justin Vreeland |
794d92 |
BuildRequires: python3-docutils
|
|
Justin Vreeland |
794d92 |
BuildRequires: zlib-devel binutils-devel
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%if %{with_selftests}
|
|
Justin Vreeland |
794d92 |
BuildRequires: clang llvm
|
|
Justin Vreeland |
794d92 |
%ifnarch %{arm}
|
|
Justin Vreeland |
794d92 |
BuildRequires: numactl-devel
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
BuildRequires: libcap-devel libcap-ng-devel rsync
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
BuildConflicts: rhbuildsys(DiskFree) < 500Mb
|
|
Justin Vreeland |
794d92 |
%if %{with_debuginfo}
|
|
Justin Vreeland |
794d92 |
BuildRequires: rpm-build, elfutils
|
|
Justin Vreeland |
794d92 |
BuildConflicts: rpm < 4.13.0.1-19
|
|
Justin Vreeland |
794d92 |
BuildConflicts: dwarves < 1.13
|
|
Justin Vreeland |
794d92 |
# Most of these should be enabled after more investigation
|
|
Justin Vreeland |
794d92 |
%undefine _include_minidebuginfo
|
|
Justin Vreeland |
794d92 |
%undefine _find_debuginfo_dwz_opts
|
|
Justin Vreeland |
794d92 |
%undefine _unique_build_ids
|
|
Justin Vreeland |
794d92 |
%undefine _unique_debug_names
|
|
Justin Vreeland |
794d92 |
%undefine _unique_debug_srcs
|
|
Justin Vreeland |
794d92 |
%undefine _debugsource_packages
|
|
Justin Vreeland |
794d92 |
%undefine _debuginfo_subpackages
|
|
Justin Vreeland |
794d92 |
%global _find_debuginfo_opts -r
|
|
Justin Vreeland |
794d92 |
%global _missing_build_ids_terminate_build 1
|
|
Justin Vreeland |
794d92 |
%global _no_recompute_build_ids 1
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%if %{with_kabidwchk} || %{with_kabidw_base}
|
|
Justin Vreeland |
794d92 |
BuildRequires: kabi-dw
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# hyperscale
|
|
Justin Vreeland |
1fc083 |
# there's a sign-file in the kernel's scripts
|
|
Justin Vreeland |
1fc083 |
# %if %{signkernel}%{signmodules}
|
|
Justin Vreeland |
794d92 |
BuildRequires: openssl openssl-devel
|
|
Justin Vreeland |
1fc083 |
# %if %{signkernel}
|
|
Justin Vreeland |
1fc083 |
# %ifarch x86_64 aarch64
|
|
Justin Vreeland |
794d92 |
BuildRequires: nss-tools
|
|
Justin Vreeland |
794d92 |
BuildRequires: pesign >= 0.10-4
|
|
Justin Vreeland |
1fc083 |
# %endif
|
|
Justin Vreeland |
1fc083 |
# %endif
|
|
Justin Vreeland |
1fc083 |
# %endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_cross}
|
|
Justin Vreeland |
794d92 |
BuildRequires: binutils-%{_build_arch}-linux-gnu, gcc-%{_build_arch}-linux-gnu
|
|
Justin Vreeland |
794d92 |
%define cross_opts CROSS_COMPILE=%{_build_arch}-linux-gnu-
|
|
Justin Vreeland |
1fc083 |
%define __strip %{_build_arch}-linux-gnu-strip
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# These below are required to build man pages
|
|
Justin Vreeland |
794d92 |
%if %{with_perf}
|
|
Justin Vreeland |
794d92 |
BuildRequires: xmlto
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%if %{with_perf} || %{with_tools}
|
|
Justin Vreeland |
794d92 |
BuildRequires: asciidoc
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
%if %{with toolchain_clang}
|
|
Justin Vreeland |
1fc083 |
BuildRequires: clang
|
|
Justin Vreeland |
1fc083 |
%endif
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
# Because this is the kernel, it's hard to get a single upstream URL
|
|
Justin Vreeland |
1fc083 |
# to represent the base without needing to do a bunch of patching. This
|
|
Justin Vreeland |
1fc083 |
# tarball is generated from a src-git tree. If you want to see the
|
|
Justin Vreeland |
1fc083 |
# exact git commit you can run
|
|
Justin Vreeland |
1fc083 |
#
|
|
Justin Vreeland |
1fc083 |
# xzcat -qq ${TARBALL} | git get-tar-commit-id
|
|
Justin Vreeland |
d5a02a |
Source0: linux-5.14.0-76.hs1.el8.tar.xz
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
Source1: Makefile.rhelver
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Name of the packaged file containing signing key
|
|
Justin Vreeland |
794d92 |
%ifarch ppc64le
|
|
Justin Vreeland |
794d92 |
%define signing_key_filename kernel-signing-ppc.cer
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%ifarch s390x
|
|
Justin Vreeland |
794d92 |
%define signing_key_filename kernel-signing-s390.cer
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
Source8: x509.genkey.rhel
|
|
Justin Vreeland |
61e3fc |
# Source9: x509.genkey.fedora
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
794d92 |
%if %{?released_kernel}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
Source10: redhatsecurebootca5.cer
|
|
Justin Vreeland |
1fc083 |
Source11: redhatsecurebootca1.cer
|
|
Justin Vreeland |
1fc083 |
Source12: redhatsecureboot501.cer
|
|
Justin Vreeland |
1fc083 |
Source13: redhatsecureboot301.cer
|
|
Justin Vreeland |
1fc083 |
Source14: secureboot_s390.cer
|
|
Justin Vreeland |
1fc083 |
Source15: secureboot_ppc.cer
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
%define secureboot_ca_1 %{SOURCE10}
|
|
Justin Vreeland |
1fc083 |
%define secureboot_ca_0 %{SOURCE11}
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64 aarch64
|
|
Justin Vreeland |
1fc083 |
%define secureboot_key_1 %{SOURCE12}
|
|
Justin Vreeland |
794d92 |
%define pesign_name_1 redhatsecureboot501
|
|
Justin Vreeland |
1fc083 |
%define secureboot_key_0 %{SOURCE13}
|
|
Justin Vreeland |
794d92 |
%define pesign_name_0 redhatsecureboot301
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%ifarch s390x
|
|
Justin Vreeland |
1fc083 |
%define secureboot_key_0 %{SOURCE14}
|
|
Justin Vreeland |
794d92 |
%define pesign_name_0 redhatsecureboot302
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%ifarch ppc64le
|
|
Justin Vreeland |
1fc083 |
%define secureboot_key_0 %{SOURCE15}
|
|
Justin Vreeland |
794d92 |
%define pesign_name_0 redhatsecureboot303
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# released_kernel
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
Source10: redhatsecurebootca4.cer
|
|
Justin Vreeland |
1fc083 |
Source11: redhatsecurebootca2.cer
|
|
Justin Vreeland |
1fc083 |
Source12: redhatsecureboot401.cer
|
|
Justin Vreeland |
1fc083 |
Source13: redhatsecureboot003.cer
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
%define secureboot_ca_1 %{SOURCE10}
|
|
Justin Vreeland |
1fc083 |
%define secureboot_ca_0 %{SOURCE11}
|
|
Justin Vreeland |
1fc083 |
%define secureboot_key_1 %{SOURCE12}
|
|
Justin Vreeland |
794d92 |
%define pesign_name_1 redhatsecureboot401
|
|
Justin Vreeland |
1fc083 |
%define secureboot_key_0 %{SOURCE13}
|
|
Justin Vreeland |
794d92 |
%define pesign_name_0 redhatsecureboot003
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# released_kernel
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
Source22: mod-extra.list.rhel
|
|
Justin Vreeland |
61e3fc |
# Source16: mod-extra.list.fedora
|
|
Justin Vreeland |
1fc083 |
Source17: mod-blacklist.sh
|
|
Justin Vreeland |
794d92 |
Source18: mod-sign.sh
|
|
Justin Vreeland |
794d92 |
Source79: parallel_xz.sh
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# Source80: filter-x86_64.sh.fedora
|
|
Justin Vreeland |
1fc083 |
# Source81: filter-armv7hl.sh.fedora
|
|
Justin Vreeland |
1fc083 |
# Source82: filter-i686.sh.fedora
|
|
Justin Vreeland |
1fc083 |
# Source83: filter-aarch64.sh.fedora
|
|
Justin Vreeland |
1fc083 |
# Source86: filter-ppc64le.sh.fedora
|
|
Justin Vreeland |
1fc083 |
# Source87: filter-s390x.sh.fedora
|
|
Justin Vreeland |
1fc083 |
# Source89: filter-modules.sh.fedora
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
Source90: filter-x86_64.sh.rhel
|
|
Justin Vreeland |
794d92 |
Source91: filter-armv7hl.sh.rhel
|
|
Justin Vreeland |
794d92 |
Source92: filter-i686.sh.rhel
|
|
Justin Vreeland |
794d92 |
Source93: filter-aarch64.sh.rhel
|
|
Justin Vreeland |
1fc083 |
# Source96: filter-ppc64le.sh.rhel
|
|
Justin Vreeland |
1fc083 |
# Source97: filter-s390x.sh.rhel
|
|
Justin Vreeland |
794d92 |
Source99: filter-modules.sh.rhel
|
|
Justin Vreeland |
794d92 |
%define modsign_cmd %{SOURCE18}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
Source20: kernel-aarch64-rhel.config
|
|
Justin Vreeland |
794d92 |
Source21: kernel-aarch64-debug-rhel.config
|
|
Justin Vreeland |
1fc083 |
# Source30: kernel-ppc64le-rhel.config
|
|
Justin Vreeland |
1fc083 |
# Source31: kernel-ppc64le-debug-rhel.config
|
|
Justin Vreeland |
1fc083 |
# Source32: kernel-s390x-rhel.config
|
|
Justin Vreeland |
1fc083 |
# Source33: kernel-s390x-debug-rhel.config
|
|
Justin Vreeland |
1fc083 |
# Source34: kernel-s390x-zfcpdump-rhel.config
|
|
Justin Vreeland |
794d92 |
Source35: kernel-x86_64-rhel.config
|
|
Justin Vreeland |
794d92 |
Source36: kernel-x86_64-debug-rhel.config
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# Source37: kernel-aarch64-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source38: kernel-aarch64-debug-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source39: kernel-armv7hl-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source40: kernel-armv7hl-debug-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source41: kernel-armv7hl-lpae-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source42: kernel-armv7hl-lpae-debug-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source43: kernel-i686-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source44: kernel-i686-debug-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source45: kernel-ppc64le-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source46: kernel-ppc64le-debug-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source47: kernel-s390x-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source48: kernel-s390x-debug-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source49: kernel-x86_64-fedora.config
|
|
Justin Vreeland |
1fc083 |
# Source50: kernel-x86_64-debug-fedora.config
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
61e3fc |
# Source5000: kernel-x86_64-centos-sig-hyperscale.config
|
|
Justin Vreeland |
61e3fc |
# Source5001: kernel-x86_64-debug-centos-sig-hyperscale.config
|
|
Justin Vreeland |
61e3fc |
# Source5002: filter-x86_64.sh.centos-sig-hyperscale
|
|
Justin Vreeland |
61e3fc |
# Source5003: filter-modules.sh.centos-sig-hyperscale
|
|
Justin Vreeland |
61e3fc |
# Source5004: mod-extra.list.centos-sig-hyperscale
|
|
Justin Vreeland |
61e3fc |
# Source5005: kernel-aarch64-centos-sig-hyperscale.config
|
|
Justin Vreeland |
61e3fc |
# Source5006: kernel-aarch64-debug-centos-sig-hyperscale.config
|
|
Justin Vreeland |
61e3fc |
# Source5007: filter-aarch64.sh.centos-sig-hyperscale
|
|
Justin Vreeland |
61e3fc |
# Source5008: filter-modules.sh.centos-sig-hyperscale
|
|
Justin Vreeland |
61e3fc |
# Source5009: mod-extra.list.centos-sig-hyperscale
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
Source51: generate_all_configs.sh
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
Source52: process_configs.sh
|
|
Justin Vreeland |
794d92 |
Source53: generate_bls_conf.sh
|
|
Justin Vreeland |
794d92 |
Source56: update_scripts.sh
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
Source54: mod-internal.list
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
Source100: rheldup3.x509
|
|
Justin Vreeland |
1fc083 |
Source101: rhelkpatch1.x509
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
Source200: check-kabi
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
Source201: Module.kabi_aarch64
|
|
Justin Vreeland |
794d92 |
Source202: Module.kabi_ppc64le
|
|
Justin Vreeland |
794d92 |
Source203: Module.kabi_s390x
|
|
Justin Vreeland |
794d92 |
Source204: Module.kabi_x86_64
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
Source210: Module.kabi_dup_aarch64
|
|
Justin Vreeland |
794d92 |
Source211: Module.kabi_dup_ppc64le
|
|
Justin Vreeland |
794d92 |
Source212: Module.kabi_dup_s390x
|
|
Justin Vreeland |
794d92 |
Source213: Module.kabi_dup_x86_64
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
Source300: kernel-abi-stablelists-%{rpmversion}-%{distro_build}.tar.bz2
|
|
Justin Vreeland |
d5a02a |
Source301: kernel-kabi-dw-%{rpmversion}-%{pkgrelease}.tar.bz2
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Sources for kernel-tools
|
|
Justin Vreeland |
794d92 |
Source2000: cpupower.service
|
|
Justin Vreeland |
794d92 |
Source2001: cpupower.config
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# Some people enjoy building customized kernels from the dist-git in Fedora and
|
|
Justin Vreeland |
1fc083 |
# use this to override configuration options. One day they may all use the
|
|
Justin Vreeland |
1fc083 |
# source tree, but in the mean time we carry this to support the legacy workflow
|
|
Justin Vreeland |
1fc083 |
Source3000: merge.pl
|
|
Justin Vreeland |
1fc083 |
Source3001: kernel-local
|
|
Justin Vreeland |
1fc083 |
Source3003: Patchlist.changelog
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
Source4000: README.rst
|
|
Justin Vreeland |
e85230 |
|
|
Justin Vreeland |
794d92 |
## Patches needed for building this package
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
%if !%{nopatches}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
Patch1: patch-%{stableversion}-redhat.patch
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# empty final patch to facilitate testing of kernel patches
|
|
Justin Vreeland |
1fc083 |
Patch999999: linux-kernel-test.patch
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# END OF PATCH DEFINITIONS
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%description
|
|
Justin Vreeland |
794d92 |
The kernel meta package
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro does requires, provides, conflicts, obsoletes for a kernel package.
|
|
Justin Vreeland |
794d92 |
# %%kernel_reqprovconf <subpackage>
|
|
Justin Vreeland |
794d92 |
# It uses any kernel_<subpackage>_conflicts and kernel_<subpackage>_obsoletes
|
|
Justin Vreeland |
794d92 |
# macros defined above.
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_reqprovconf \
|
|
Justin Vreeland |
794d92 |
Provides: kernel = %{rpmversion}-%{pkg_release}\
|
|
Justin Vreeland |
794d92 |
Provides: kernel-%{_target_cpu} = %{rpmversion}-%{pkg_release}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Provides: kernel-drm-nouveau = 16\
|
|
Justin Vreeland |
794d92 |
Provides: kernel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Requires(pre): %{kernel_prereq}\
|
|
Justin Vreeland |
794d92 |
Requires(pre): %{initrd_prereq}\
|
|
Justin Vreeland |
d5a02a |
Requires(pre): ((linux-firmware >= 20150904-56.git6ebf5d57) if linux-firmware)\
|
|
Justin Vreeland |
d5a02a |
Recommends: linux-firmware\
|
|
Justin Vreeland |
794d92 |
Requires(preun): systemd >= 200\
|
|
Justin Vreeland |
794d92 |
Conflicts: xfsprogs < 4.3.0-1\
|
|
Justin Vreeland |
794d92 |
Conflicts: xorg-x11-drv-vmmouse < 13.0.99\
|
|
Justin Vreeland |
794d92 |
%{expand:%%{?kernel%{?1:_%{1}}_conflicts:Conflicts: %%{kernel%{?1:_%{1}}_conflicts}}}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%{?kernel%{?1:_%{1}}_obsoletes:Obsoletes: %%{kernel%{?1:_%{1}}_obsoletes}}}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%{?kernel%{?1:_%{1}}_provides:Provides: %%{kernel%{?1:_%{1}}_provides}}}\
|
|
Justin Vreeland |
794d92 |
# We can't let RPM do the dependencies automatic because it'll then pick up\
|
|
Justin Vreeland |
794d92 |
# a correct but undesirable perl dependency from the module headers which\
|
|
Justin Vreeland |
794d92 |
# isn't required for the kernel proper to function\
|
|
Justin Vreeland |
794d92 |
AutoReq: no\
|
|
Justin Vreeland |
794d92 |
AutoProv: yes\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package doc
|
|
Justin Vreeland |
794d92 |
Summary: Various documentation bits found in the kernel source
|
|
Justin Vreeland |
794d92 |
Group: Documentation
|
|
Justin Vreeland |
794d92 |
%description doc
|
|
Justin Vreeland |
794d92 |
This package contains documentation files from the kernel
|
|
Justin Vreeland |
794d92 |
source. Various bits of information about the Linux kernel and the
|
|
Justin Vreeland |
794d92 |
device drivers shipped with it are documented in these files.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
You'll want to install this package if you need a reference to the
|
|
Justin Vreeland |
794d92 |
options that can be passed to Linux kernel modules at load time.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package headers
|
|
Justin Vreeland |
794d92 |
Summary: Header files for the Linux kernel for use by glibc
|
|
Justin Vreeland |
794d92 |
Obsoletes: glibc-kernheaders < 3.0-46
|
|
Justin Vreeland |
794d92 |
Provides: glibc-kernheaders = 3.0-46
|
|
Justin Vreeland |
794d92 |
%if "0%{?variant}"
|
|
Justin Vreeland |
794d92 |
Obsoletes: kernel-headers < %{rpmversion}-%{pkg_release}
|
|
Justin Vreeland |
794d92 |
Provides: kernel-headers = %{rpmversion}-%{pkg_release}
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%description headers
|
|
Justin Vreeland |
794d92 |
Kernel-headers includes the C header files that specify the interface
|
|
Justin Vreeland |
794d92 |
between the Linux kernel and userspace libraries and programs. The
|
|
Justin Vreeland |
794d92 |
header files define structures and constants that are needed for
|
|
Justin Vreeland |
794d92 |
building most standard programs and are also needed for rebuilding the
|
|
Justin Vreeland |
794d92 |
glibc package.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package cross-headers
|
|
Justin Vreeland |
794d92 |
Summary: Header files for the Linux kernel for use by cross-glibc
|
|
Justin Vreeland |
794d92 |
%description cross-headers
|
|
Justin Vreeland |
794d92 |
Kernel-cross-headers includes the C header files that specify the interface
|
|
Justin Vreeland |
794d92 |
between the Linux kernel and userspace libraries and programs. The
|
|
Justin Vreeland |
794d92 |
header files define structures and constants that are needed for
|
|
Justin Vreeland |
794d92 |
building most standard programs and are also needed for rebuilding the
|
|
Justin Vreeland |
794d92 |
cross-glibc package.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package debuginfo-common-%{_target_cpu}
|
|
Justin Vreeland |
794d92 |
Summary: Kernel source files used by %{name}-debuginfo packages
|
|
Justin Vreeland |
794d92 |
Provides: installonlypkg(kernel)
|
|
Justin Vreeland |
794d92 |
%description debuginfo-common-%{_target_cpu}
|
|
Justin Vreeland |
794d92 |
This package is required by %{name}-debuginfo subpackages.
|
|
Justin Vreeland |
794d92 |
It provides the kernel source files common to all builds.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_perf}
|
|
Justin Vreeland |
794d92 |
%package -n perf
|
|
Justin Vreeland |
794d92 |
Summary: Performance monitoring for the Linux kernel
|
|
Justin Vreeland |
794d92 |
License: GPLv2
|
|
Justin Vreeland |
794d92 |
%description -n perf
|
|
Justin Vreeland |
794d92 |
This package contains the perf tool, which enables performance monitoring
|
|
Justin Vreeland |
794d92 |
of the Linux kernel.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package -n perf-debuginfo
|
|
Justin Vreeland |
794d92 |
Summary: Debug information for package perf
|
|
Justin Vreeland |
794d92 |
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
|
|
Justin Vreeland |
794d92 |
AutoReqProv: no
|
|
Justin Vreeland |
794d92 |
%description -n perf-debuginfo
|
|
Justin Vreeland |
794d92 |
This package provides debug information for the perf package.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Note that this pattern only works right to match the .build-id
|
|
Justin Vreeland |
794d92 |
# symlinks because of the trailing nonmatching alternation and
|
|
Justin Vreeland |
794d92 |
# the leading .*, because of find-debuginfo.sh's buggy handling
|
|
Justin Vreeland |
794d92 |
# of matching the pattern against the symlinks file.
|
|
Justin Vreeland |
794d92 |
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_bindir}/perf(\.debug)?|.*%%{_libexecdir}/perf-core/.*|.*%%{_libdir}/traceevent/plugins/.*|.*%%{_libdir}/libperf-jvmti.so(\.debug)?|XXX' -o perf-debuginfo.list}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package -n python3-perf
|
|
Justin Vreeland |
794d92 |
Summary: Python bindings for apps which will manipulate perf events
|
|
Justin Vreeland |
794d92 |
%description -n python3-perf
|
|
Justin Vreeland |
794d92 |
The python3-perf package contains a module that permits applications
|
|
Justin Vreeland |
794d92 |
written in the Python programming language to use the interface
|
|
Justin Vreeland |
794d92 |
to manipulate perf events.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package -n python3-perf-debuginfo
|
|
Justin Vreeland |
794d92 |
Summary: Debug information for package perf python bindings
|
|
Justin Vreeland |
794d92 |
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
|
|
Justin Vreeland |
794d92 |
AutoReqProv: no
|
|
Justin Vreeland |
794d92 |
%description -n python3-perf-debuginfo
|
|
Justin Vreeland |
794d92 |
This package provides debug information for the perf python bindings.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# the python_sitearch macro should already be defined from above
|
|
Justin Vreeland |
794d92 |
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{python3_sitearch}/perf.*so(\.debug)?|XXX' -o python3-perf-debuginfo.list}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# with_perf
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_tools}
|
|
Justin Vreeland |
794d92 |
%package -n kernel-tools
|
|
Justin Vreeland |
794d92 |
Summary: Assortment of tools for the Linux kernel
|
|
Justin Vreeland |
794d92 |
License: GPLv2
|
|
Justin Vreeland |
794d92 |
%ifarch %{cpupowerarchs}
|
|
Justin Vreeland |
794d92 |
Provides: cpupowerutils = 1:009-0.6.p1
|
|
Justin Vreeland |
794d92 |
Obsoletes: cpupowerutils < 1:009-0.6.p1
|
|
Justin Vreeland |
794d92 |
Provides: cpufreq-utils = 1:009-0.6.p1
|
|
Justin Vreeland |
794d92 |
Provides: cpufrequtils = 1:009-0.6.p1
|
|
Justin Vreeland |
794d92 |
Obsoletes: cpufreq-utils < 1:009-0.6.p1
|
|
Justin Vreeland |
794d92 |
Obsoletes: cpufrequtils < 1:009-0.6.p1
|
|
Justin Vreeland |
794d92 |
Obsoletes: cpuspeed < 1:1.5-16
|
|
Justin Vreeland |
794d92 |
Requires: kernel-tools-libs = %{version}-%{release}
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%define __requires_exclude ^%{_bindir}/python
|
|
Justin Vreeland |
794d92 |
%description -n kernel-tools
|
|
Justin Vreeland |
794d92 |
This package contains the tools/ directory from the kernel source
|
|
Justin Vreeland |
794d92 |
and the supporting documentation.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package -n kernel-tools-libs
|
|
Justin Vreeland |
794d92 |
Summary: Libraries for the kernels-tools
|
|
Justin Vreeland |
794d92 |
License: GPLv2
|
|
Justin Vreeland |
794d92 |
%description -n kernel-tools-libs
|
|
Justin Vreeland |
794d92 |
This package contains the libraries built from the tools/ directory
|
|
Justin Vreeland |
794d92 |
from the kernel source.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package -n kernel-tools-libs-devel
|
|
Justin Vreeland |
794d92 |
Summary: Assortment of tools for the Linux kernel
|
|
Justin Vreeland |
794d92 |
License: GPLv2
|
|
Justin Vreeland |
794d92 |
Requires: kernel-tools = %{version}-%{release}
|
|
Justin Vreeland |
794d92 |
%ifarch %{cpupowerarchs}
|
|
Justin Vreeland |
794d92 |
Provides: cpupowerutils-devel = 1:009-0.6.p1
|
|
Justin Vreeland |
794d92 |
Obsoletes: cpupowerutils-devel < 1:009-0.6.p1
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
Requires: kernel-tools-libs = %{version}-%{release}
|
|
Justin Vreeland |
794d92 |
Provides: kernel-tools-devel
|
|
Justin Vreeland |
794d92 |
%description -n kernel-tools-libs-devel
|
|
Justin Vreeland |
794d92 |
This package contains the development files for the tools/ directory from
|
|
Justin Vreeland |
794d92 |
the kernel source.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package -n kernel-tools-debuginfo
|
|
Justin Vreeland |
794d92 |
Summary: Debug information for package kernel-tools
|
|
Justin Vreeland |
794d92 |
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
|
|
Justin Vreeland |
794d92 |
AutoReqProv: no
|
|
Justin Vreeland |
794d92 |
%description -n kernel-tools-debuginfo
|
|
Justin Vreeland |
794d92 |
This package provides debug information for package kernel-tools.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Note that this pattern only works right to match the .build-id
|
|
Justin Vreeland |
794d92 |
# symlinks because of the trailing nonmatching alternation and
|
|
Justin Vreeland |
794d92 |
# the leading .*, because of find-debuginfo.sh's buggy handling
|
|
Justin Vreeland |
794d92 |
# of matching the pattern against the symlinks file.
|
|
Justin Vreeland |
1fc083 |
%{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)?|XXX' -o kernel-tools-debuginfo.list}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# with_tools
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_bpftool}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package -n bpftool
|
|
Justin Vreeland |
794d92 |
Summary: Inspection and simple manipulation of eBPF programs and maps
|
|
Justin Vreeland |
794d92 |
License: GPLv2
|
|
Justin Vreeland |
794d92 |
%description -n bpftool
|
|
Justin Vreeland |
794d92 |
This package contains the bpftool, which allows inspection and simple
|
|
Justin Vreeland |
794d92 |
manipulation of eBPF programs and maps.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package -n bpftool-debuginfo
|
|
Justin Vreeland |
794d92 |
Summary: Debug information for package bpftool
|
|
Justin Vreeland |
794d92 |
Group: Development/Debug
|
|
Justin Vreeland |
794d92 |
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
|
|
Justin Vreeland |
794d92 |
AutoReqProv: no
|
|
Justin Vreeland |
794d92 |
%description -n bpftool-debuginfo
|
|
Justin Vreeland |
794d92 |
This package provides debug information for the bpftool package.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_sbindir}/bpftool(\.debug)?|XXX' -o bpftool-debuginfo.list}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# with_bpftool
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_selftests}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package selftests-internal
|
|
Justin Vreeland |
794d92 |
Summary: Kernel samples and selftests
|
|
Justin Vreeland |
794d92 |
License: GPLv2
|
|
Justin Vreeland |
794d92 |
Requires: binutils, bpftool, iproute-tc, nmap-ncat
|
|
Justin Vreeland |
794d92 |
Requires: kernel-modules-internal = %{version}-%{release}
|
|
Justin Vreeland |
794d92 |
%description selftests-internal
|
|
Justin Vreeland |
794d92 |
Kernel sample programs and selftests.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Note that this pattern only works right to match the .build-id
|
|
Justin Vreeland |
794d92 |
# symlinks because of the trailing nonmatching alternation and
|
|
Justin Vreeland |
794d92 |
# the leading .*, because of find-debuginfo.sh's buggy handling
|
|
Justin Vreeland |
794d92 |
# of matching the pattern against the symlinks file.
|
|
Justin Vreeland |
794d92 |
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%%{_libexecdir}/(ksamples|kselftests)/.*|XXX' -o selftests-debuginfo.list}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# with_selftests
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_gcov}
|
|
Justin Vreeland |
794d92 |
%package gcov
|
|
Justin Vreeland |
794d92 |
Summary: gcov graph and source files for coverage data collection.
|
|
Justin Vreeland |
794d92 |
%description gcov
|
|
Justin Vreeland |
794d92 |
kernel-gcov includes the gcov graph and source files for gcov coverage collection.
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%package -n kernel-abi-whitelists
|
|
Justin Vreeland |
794d92 |
Summary: The Red Hat Enterprise Linux kernel ABI symbol whitelists
|
|
Justin Vreeland |
794d92 |
AutoReqProv: no
|
|
Justin Vreeland |
794d92 |
%description -n kernel-abi-whitelists
|
|
Justin Vreeland |
794d92 |
The kABI package contains information pertaining to the Red Hat Enterprise
|
|
Justin Vreeland |
794d92 |
Linux kernel ABI, including lists of kernel symbols that are needed by
|
|
Justin Vreeland |
794d92 |
external Linux kernel modules, and a yum plugin to aid enforcement.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_kabidw_base}
|
|
Justin Vreeland |
794d92 |
%package kabidw-base
|
|
Justin Vreeland |
794d92 |
Summary: The baseline dataset for kABI verification using DWARF data
|
|
Justin Vreeland |
794d92 |
Group: System Environment/Kernel
|
|
Justin Vreeland |
794d92 |
AutoReqProv: no
|
|
Justin Vreeland |
794d92 |
%description kabidw-base
|
|
Justin Vreeland |
794d92 |
The kabidw-base package contains data describing the current ABI of the Red Hat
|
|
Justin Vreeland |
794d92 |
Enterprise Linux kernel, suitable for the kabi-dw tool.
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro creates a kernel-<subpackage>-debuginfo package.
|
|
Justin Vreeland |
794d92 |
# %%kernel_debuginfo_package <subpackage>
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# Explanation of the find_debuginfo_opts: We build multiple kernels (debug
|
|
Justin Vreeland |
794d92 |
# pae etc.) so the regex filters those kernels appropriately. We also
|
|
Justin Vreeland |
794d92 |
# have to package several binaries as part of kernel-devel but getting
|
|
Justin Vreeland |
794d92 |
# unique build-ids is tricky for these userspace binaries. We don't really
|
|
Justin Vreeland |
794d92 |
# care about debugging those so we just filter those out and remove it.
|
|
Justin Vreeland |
794d92 |
%define kernel_debuginfo_package() \
|
|
Justin Vreeland |
794d92 |
%package %{?1:%{1}-}debuginfo\
|
|
Justin Vreeland |
794d92 |
Summary: Debug information for package %{name}%{?1:-%{1}}\
|
|
Justin Vreeland |
794d92 |
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}\
|
|
Justin Vreeland |
794d92 |
Provides: %{name}%{?1:-%{1}}-debuginfo-%{_target_cpu} = %{version}-%{release}\
|
|
Justin Vreeland |
794d92 |
Provides: installonlypkg(kernel)\
|
|
Justin Vreeland |
794d92 |
AutoReqProv: no\
|
|
Justin Vreeland |
794d92 |
%description %{?1:%{1}-}debuginfo\
|
|
Justin Vreeland |
794d92 |
This package provides debug information for package %{name}%{?1:-%{1}}.\
|
|
Justin Vreeland |
794d92 |
This is required to use SystemTap with %{name}%{?1:-%{1}}-%{KVERREL}.\
|
|
Justin Vreeland |
794d92 |
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*\/usr\/src\/kernels/.*|XXX' -o ignored-debuginfo.list -p '/.*/%%{KVERREL_RE}%{?1:[+]%{1}}/.*|/.*%%{KVERREL_RE}%{?1:\+%{1}}(\.debug)?' -o debuginfo%{?1}.list}\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro creates a kernel-<subpackage>-devel package.
|
|
Justin Vreeland |
794d92 |
# %%kernel_devel_package <subpackage> <pretty-name>
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_devel_package() \
|
|
Justin Vreeland |
794d92 |
%package %{?1:%{1}-}devel\
|
|
Justin Vreeland |
794d92 |
Summary: Development package for building kernel modules to match the %{?2:%{2} }kernel\
|
|
Justin Vreeland |
794d92 |
Provides: kernel%{?1:-%{1}}-devel-%{_target_cpu} = %{version}-%{release}\
|
|
Justin Vreeland |
794d92 |
Provides: kernel-devel-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Provides: kernel-devel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Provides: installonlypkg(kernel)\
|
|
Justin Vreeland |
794d92 |
AutoReqProv: no\
|
|
Justin Vreeland |
794d92 |
Requires(pre): findutils\
|
|
Justin Vreeland |
794d92 |
Requires: findutils\
|
|
Justin Vreeland |
794d92 |
Requires: perl-interpreter\
|
|
Justin Vreeland |
1fc083 |
Requires: openssl-devel\
|
|
Justin Vreeland |
1fc083 |
Requires: elfutils-libelf-devel\
|
|
Justin Vreeland |
1fc083 |
Requires: bison\
|
|
Justin Vreeland |
1fc083 |
Requires: flex\
|
|
Justin Vreeland |
1fc083 |
Requires: make\
|
|
Justin Vreeland |
1fc083 |
Requires: gcc\
|
|
Justin Vreeland |
794d92 |
%description %{?1:%{1}-}devel\
|
|
Justin Vreeland |
794d92 |
This package provides kernel headers and makefiles sufficient to build modules\
|
|
Justin Vreeland |
794d92 |
against the %{?2:%{2} }kernel package.\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# kernel-<variant>-ipaclones-internal package
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_ipaclones_package() \
|
|
Justin Vreeland |
794d92 |
%package %{?1:%{1}-}ipaclones-internal\
|
|
Justin Vreeland |
794d92 |
Summary: *.ipa-clones files generated by -fdump-ipa-clones for kernel%{?1:-%{1}}\
|
|
Justin Vreeland |
794d92 |
Group: System Environment/Kernel\
|
|
Justin Vreeland |
794d92 |
AutoReqProv: no\
|
|
Justin Vreeland |
794d92 |
%description %{?1:%{1}-}ipaclones-internal\
|
|
Justin Vreeland |
794d92 |
This package provides *.ipa-clones files.\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro creates a kernel-<subpackage>-modules-internal package.
|
|
Justin Vreeland |
794d92 |
# %%kernel_modules_internal_package <subpackage> <pretty-name>
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_modules_internal_package() \
|
|
Justin Vreeland |
794d92 |
%package %{?1:%{1}-}modules-internal\
|
|
Justin Vreeland |
794d92 |
Summary: Extra kernel modules to match the %{?2:%{2} }kernel\
|
|
Justin Vreeland |
794d92 |
Group: System Environment/Kernel\
|
|
Justin Vreeland |
794d92 |
Provides: kernel%{?1:-%{1}}-modules-internal-%{_target_cpu} = %{version}-%{release}\
|
|
Justin Vreeland |
794d92 |
Provides: kernel%{?1:-%{1}}-modules-internal-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Provides: kernel%{?1:-%{1}}-modules-internal = %{version}-%{release}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Provides: installonlypkg(kernel-module)\
|
|
Justin Vreeland |
794d92 |
Provides: kernel%{?1:-%{1}}-modules-internal-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Requires: kernel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Requires: kernel%{?1:-%{1}}-modules-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
AutoReq: no\
|
|
Justin Vreeland |
794d92 |
AutoProv: yes\
|
|
Justin Vreeland |
794d92 |
%description %{?1:%{1}-}modules-internal\
|
|
Justin Vreeland |
794d92 |
This package provides kernel modules for the %{?2:%{2} }kernel package for Red Hat internal usage.\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro creates a kernel-<subpackage>-modules-extra package.
|
|
Justin Vreeland |
794d92 |
# %%kernel_modules_extra_package <subpackage> <pretty-name>
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_modules_extra_package() \
|
|
Justin Vreeland |
794d92 |
%package %{?1:%{1}-}modules-extra\
|
|
Justin Vreeland |
794d92 |
Summary: Extra kernel modules to match the %{?2:%{2} }kernel\
|
|
Justin Vreeland |
794d92 |
Provides: kernel%{?1:-%{1}}-modules-extra-%{_target_cpu} = %{version}-%{release}\
|
|
Justin Vreeland |
794d92 |
Provides: kernel%{?1:-%{1}}-modules-extra-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Provides: kernel%{?1:-%{1}}-modules-extra = %{version}-%{release}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Provides: installonlypkg(kernel-module)\
|
|
Justin Vreeland |
794d92 |
Provides: kernel%{?1:-%{1}}-modules-extra-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Requires: kernel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Requires: kernel%{?1:-%{1}}-modules-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
AutoReq: no\
|
|
Justin Vreeland |
794d92 |
AutoProv: yes\
|
|
Justin Vreeland |
794d92 |
%description %{?1:%{1}-}modules-extra\
|
|
Justin Vreeland |
794d92 |
This package provides less commonly used kernel modules for the %{?2:%{2} }kernel package.\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro creates a kernel-<subpackage>-modules package.
|
|
Justin Vreeland |
794d92 |
# %%kernel_modules_package <subpackage> <pretty-name>
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_modules_package() \
|
|
Justin Vreeland |
794d92 |
%package %{?1:%{1}-}modules\
|
|
Justin Vreeland |
794d92 |
Summary: kernel modules to match the %{?2:%{2}-}core kernel\
|
|
Justin Vreeland |
794d92 |
Provides: kernel%{?1:-%{1}}-modules-%{_target_cpu} = %{version}-%{release}\
|
|
Justin Vreeland |
794d92 |
Provides: kernel-modules-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Provides: kernel-modules = %{version}-%{release}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Provides: installonlypkg(kernel-module)\
|
|
Justin Vreeland |
794d92 |
Provides: kernel%{?1:-%{1}}-modules-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Requires: kernel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
AutoReq: no\
|
|
Justin Vreeland |
794d92 |
AutoProv: yes\
|
|
Justin Vreeland |
794d92 |
%description %{?1:%{1}-}modules\
|
|
Justin Vreeland |
794d92 |
This package provides commonly used kernel modules for the %{?2:%{2}-}core kernel package.\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# this macro creates a kernel-<subpackage> meta package.
|
|
Justin Vreeland |
794d92 |
# %%kernel_meta_package <subpackage>
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_meta_package() \
|
|
Justin Vreeland |
794d92 |
%package %{1}\
|
|
Justin Vreeland |
794d92 |
summary: kernel meta-package for the %{1} kernel\
|
|
Justin Vreeland |
794d92 |
Requires: kernel-%{1}-core-uname-r = %{KVERREL}%{?variant}+%{1}\
|
|
Justin Vreeland |
794d92 |
Requires: kernel-%{1}-modules-uname-r = %{KVERREL}%{?variant}+%{1}\
|
|
Justin Vreeland |
794d92 |
Provides: installonlypkg(kernel)\
|
|
Justin Vreeland |
794d92 |
%description %{1}\
|
|
Justin Vreeland |
794d92 |
The meta-package for the %{1} kernel\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro creates a kernel-<subpackage> and its -devel and -debuginfo too.
|
|
Justin Vreeland |
794d92 |
# %%define variant_summary The Linux kernel compiled for <configuration>
|
|
Justin Vreeland |
794d92 |
# %%kernel_variant_package [-n <pretty-name>] <subpackage>
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_variant_package(n:) \
|
|
Justin Vreeland |
794d92 |
%package %{?1:%{1}-}core\
|
|
Justin Vreeland |
794d92 |
Summary: %{variant_summary}\
|
|
Justin Vreeland |
794d92 |
Provides: kernel-%{?1:%{1}-}core-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
Provides: installonlypkg(kernel)\
|
|
Justin Vreeland |
794d92 |
%{expand:%%kernel_reqprovconf}\
|
|
Justin Vreeland |
794d92 |
%if %{?1:1} %{!?1:0} \
|
|
Justin Vreeland |
794d92 |
%{expand:%%kernel_meta_package %{?1:%{1}}}\
|
|
Justin Vreeland |
794d92 |
%endif\
|
|
Justin Vreeland |
794d92 |
%{expand:%%kernel_devel_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%kernel_modules_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%kernel_modules_extra_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%kernel_modules_internal_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%kernel_debuginfo_package %{?1:%{1}}}\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Now, each variant package.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_pae}
|
|
Justin Vreeland |
794d92 |
%define variant_summary The Linux kernel compiled for Cortex-A15
|
|
Justin Vreeland |
794d92 |
%kernel_variant_package lpae
|
|
Justin Vreeland |
794d92 |
%description lpae-core
|
|
Justin Vreeland |
794d92 |
This package includes a version of the Linux kernel with support for
|
|
Justin Vreeland |
794d92 |
Cortex-A15 devices with LPAE and HW virtualisation support
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_zfcpdump}
|
|
Justin Vreeland |
794d92 |
%define variant_summary The Linux kernel compiled for zfcpdump usage
|
|
Justin Vreeland |
794d92 |
%kernel_variant_package zfcpdump
|
|
Justin Vreeland |
794d92 |
%description zfcpdump-core
|
|
Justin Vreeland |
794d92 |
The kernel package contains the Linux kernel (vmlinuz) for use by the
|
|
Justin Vreeland |
794d92 |
zfcpdump infrastructure.
|
|
Justin Vreeland |
794d92 |
# with_zfcpdump
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%define variant_summary The Linux kernel compiled with extra debugging enabled
|
|
Justin Vreeland |
794d92 |
%kernel_variant_package debug
|
|
Justin Vreeland |
794d92 |
%description debug-core
|
|
Justin Vreeland |
794d92 |
The kernel package contains the Linux kernel (vmlinuz), the core of any
|
|
Justin Vreeland |
794d92 |
Linux operating system. The kernel handles the basic functions
|
|
Justin Vreeland |
794d92 |
of the operating system: memory allocation, process allocation, device
|
|
Justin Vreeland |
794d92 |
input and output, etc.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
This variant of the kernel has numerous debugging options enabled.
|
|
Justin Vreeland |
794d92 |
It should only be installed when trying to gather additional information
|
|
Justin Vreeland |
794d92 |
on kernel bugs, as some of these options impact performance noticably.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# And finally the main -core package
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%define variant_summary The Linux kernel
|
|
Justin Vreeland |
794d92 |
%kernel_variant_package
|
|
Justin Vreeland |
794d92 |
%description core
|
|
Justin Vreeland |
794d92 |
The kernel package contains the Linux kernel (vmlinuz), the core of any
|
|
Justin Vreeland |
794d92 |
Linux operating system. The kernel handles the basic functions
|
|
Justin Vreeland |
794d92 |
of the operating system: memory allocation, process allocation, device
|
|
Justin Vreeland |
794d92 |
input and output, etc.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_ipaclones}
|
|
Justin Vreeland |
794d92 |
%kernel_ipaclones_package
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%prep
|
|
Justin Vreeland |
794d92 |
# do a few sanity-checks for --with *only builds
|
|
Justin Vreeland |
794d92 |
%if %{with_baseonly}
|
|
Justin Vreeland |
1fc083 |
%if !%{with_up}
|
|
Justin Vreeland |
794d92 |
echo "Cannot build --with baseonly, up build is disabled"
|
|
Justin Vreeland |
794d92 |
exit 1
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# more sanity checking; do it quietly
|
|
Justin Vreeland |
794d92 |
if [ "%{patches}" != "%%{patches}" ] ; then
|
|
Justin Vreeland |
794d92 |
for patch in %{patches} ; do
|
|
Justin Vreeland |
794d92 |
if [ ! -f $patch ] ; then
|
|
Justin Vreeland |
794d92 |
echo "ERROR: Patch ${patch##/*/} listed in specfile but is missing"
|
|
Justin Vreeland |
794d92 |
exit 1
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
done
|
|
Justin Vreeland |
794d92 |
fi 2>/dev/null
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
patch_command='patch -p1 -F1 -s'
|
|
Justin Vreeland |
794d92 |
ApplyPatch()
|
|
Justin Vreeland |
794d92 |
{
|
|
Justin Vreeland |
794d92 |
local patch=$1
|
|
Justin Vreeland |
794d92 |
shift
|
|
Justin Vreeland |
794d92 |
if [ ! -f $RPM_SOURCE_DIR/$patch ]; then
|
|
Justin Vreeland |
794d92 |
exit 1
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
if ! grep -E "^Patch[0-9]+: $patch\$" %{_specdir}/${RPM_PACKAGE_NAME%%%%%{?variant}}.spec ; then
|
|
Justin Vreeland |
794d92 |
if [ "${patch:0:8}" != "patch-5." ] ; then
|
|
Justin Vreeland |
794d92 |
echo "ERROR: Patch $patch not listed as a source patch in specfile"
|
|
Justin Vreeland |
794d92 |
exit 1
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
fi 2>/dev/null
|
|
Justin Vreeland |
794d92 |
case "$patch" in
|
|
Justin Vreeland |
794d92 |
*.bz2) bunzip2 < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
|
|
Justin Vreeland |
794d92 |
*.gz) gunzip < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
|
|
Justin Vreeland |
794d92 |
*.xz) unxz < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
|
|
Justin Vreeland |
794d92 |
*) $patch_command ${1+"$@"} < "$RPM_SOURCE_DIR/$patch" ;;
|
|
Justin Vreeland |
794d92 |
esac
|
|
Justin Vreeland |
794d92 |
}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# don't apply patch if it's empty
|
|
Justin Vreeland |
794d92 |
ApplyOptionalPatch()
|
|
Justin Vreeland |
794d92 |
{
|
|
Justin Vreeland |
794d92 |
local patch=$1
|
|
Justin Vreeland |
794d92 |
shift
|
|
Justin Vreeland |
794d92 |
if [ ! -f $RPM_SOURCE_DIR/$patch ]; then
|
|
Justin Vreeland |
794d92 |
exit 1
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
local C=$(wc -l $RPM_SOURCE_DIR/$patch | awk '{print $1}')
|
|
Justin Vreeland |
794d92 |
if [ "$C" -gt 9 ]; then
|
|
Justin Vreeland |
794d92 |
ApplyPatch $patch ${1+"$@"}
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
d5a02a |
%setup -q -n kernel-5.14.0-76.hs1.el8 -c
|
|
Justin Vreeland |
d5a02a |
mv linux-5.14.0-76.hs1.el8 linux-%{KVERREL}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
cd linux-%{KVERREL}
|
|
Justin Vreeland |
1fc083 |
cp -a %{SOURCE1} .
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
%if !%{nopatches}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
ApplyOptionalPatch patch-%{stableversion}-redhat.patch
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
ApplyOptionalPatch linux-kernel-test.patch
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# END OF PATCH APPLICATIONS
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Any further pre-build tree manipulations happen here.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
chmod +x scripts/checkpatch.pl
|
|
Justin Vreeland |
794d92 |
mv COPYING COPYING-%{version}-%{release}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# This Prevents scripts/setlocalversion from mucking with our version numbers.
|
|
Justin Vreeland |
794d92 |
touch .scmversion
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Mangle /usr/bin/python shebangs to /usr/bin/python3
|
|
Justin Vreeland |
794d92 |
# Mangle all Python shebangs to be Python 3 explicitly
|
|
Justin Vreeland |
794d92 |
# -p preserves timestamps
|
|
Justin Vreeland |
794d92 |
# -n prevents creating ~backup files
|
|
Justin Vreeland |
794d92 |
# -i specifies the interpreter for the shebang
|
|
Justin Vreeland |
794d92 |
# This fixes errors such as
|
|
Justin Vreeland |
794d92 |
# *** ERROR: ambiguous python shebang in /usr/bin/kvm_stat: #!/usr/bin/python. Change it to python3 (or python2) explicitly.
|
|
Justin Vreeland |
794d92 |
# We patch all sources below for which we got a report/error.
|
|
Justin Vreeland |
794d92 |
pathfix.py -i "%{__python3} %{py3_shbang_opts}" -p -n \
|
|
Justin Vreeland |
794d92 |
tools/kvm/kvm_stat/kvm_stat \
|
|
Justin Vreeland |
794d92 |
scripts/show_delta \
|
|
Justin Vreeland |
794d92 |
scripts/diffconfig \
|
|
Justin Vreeland |
794d92 |
scripts/bloat-o-meter \
|
|
Justin Vreeland |
794d92 |
scripts/jobserver-exec \
|
|
Justin Vreeland |
1fc083 |
tools \
|
|
Justin Vreeland |
794d92 |
Documentation \
|
|
Justin Vreeland |
1fc083 |
scripts/clang-tools
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# only deal with configs if we are going to build for the arch
|
|
Justin Vreeland |
794d92 |
%ifnarch %nobuildarches
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
if [ -L configs ]; then
|
|
Justin Vreeland |
794d92 |
rm -f configs
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
mkdir configs
|
|
Justin Vreeland |
794d92 |
cd configs
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Drop some necessary files from the source dir into the buildroot
|
|
Justin Vreeland |
794d92 |
cp $RPM_SOURCE_DIR/kernel-*.config .
|
|
Justin Vreeland |
794d92 |
cp %{SOURCE51} .
|
|
Justin Vreeland |
1fc083 |
# merge.pl
|
|
Justin Vreeland |
1fc083 |
cp %{SOURCE3000} .
|
|
Justin Vreeland |
1fc083 |
# kernel-local
|
|
Justin Vreeland |
1fc083 |
cp %{SOURCE3001} .
|
|
Justin Vreeland |
794d92 |
VERSION=%{version} ./generate_all_configs.sh %{primary_target} %{debugbuildsenabled}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# Merge in any user-provided local config option changes
|
|
Justin Vreeland |
25ae8f |
%ifnarch %nobuildarches
|
|
Justin Vreeland |
25ae8f |
for i in %{all_arch_configs}
|
|
Justin Vreeland |
25ae8f |
do
|
|
Justin Vreeland |
25ae8f |
mv $i $i.tmp
|
|
Justin Vreeland |
1fc083 |
./merge.pl %{SOURCE3001} $i.tmp > $i
|
|
Justin Vreeland |
25ae8f |
rm $i.tmp
|
|
Justin Vreeland |
25ae8f |
done
|
|
Justin Vreeland |
25ae8f |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# enable GCOV kernel config options if gcov is on
|
|
Justin Vreeland |
794d92 |
%if %{with_gcov}
|
|
Justin Vreeland |
794d92 |
for i in *.config
|
|
Justin Vreeland |
794d92 |
do
|
|
Justin Vreeland |
794d92 |
sed -i 's/# CONFIG_GCOV_KERNEL is not set/CONFIG_GCOV_KERNEL=y\nCONFIG_GCOV_PROFILE_ALL=y\n/' $i
|
|
Justin Vreeland |
794d92 |
done
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# Add DUP and kpatch certificates to system trusted keys for RHEL
|
|
Justin Vreeland |
1fc083 |
%if 0%{?rhel}
|
|
Justin Vreeland |
1fc083 |
%if %{signkernel}%{signmodules}
|
|
Justin Vreeland |
1fc083 |
openssl x509 -inform der -in %{SOURCE100} -out rheldup3.pem
|
|
Justin Vreeland |
1fc083 |
openssl x509 -inform der -in %{SOURCE101} -out rhelkpatch1.pem
|
|
Justin Vreeland |
1fc083 |
cat rheldup3.pem rhelkpatch1.pem > ../certs/rhel.pem
|
|
Justin Vreeland |
1fc083 |
for i in *.config; do
|
|
Justin Vreeland |
1fc083 |
sed -i 's@CONFIG_SYSTEM_TRUSTED_KEYS=""@CONFIG_SYSTEM_TRUSTED_KEYS="certs/rhel.pem"@' $i
|
|
Justin Vreeland |
1fc083 |
done
|
|
Justin Vreeland |
1fc083 |
%endif
|
|
Justin Vreeland |
1fc083 |
%endif
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
794d92 |
cp %{SOURCE52} .
|
|
Justin Vreeland |
794d92 |
OPTS=""
|
|
Justin Vreeland |
794d92 |
%if %{with_configchecks}
|
|
Justin Vreeland |
794d92 |
OPTS="$OPTS -w -n -c"
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
./process_configs.sh $OPTS kernel %{rpmversion}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
cp %{SOURCE56} .
|
|
Justin Vreeland |
794d92 |
RPM_SOURCE_DIR=$RPM_SOURCE_DIR ./update_scripts.sh %{primary_target}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# end of kernel config
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
cd ..
|
|
Justin Vreeland |
794d92 |
# # End of Configs stuff
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# get rid of unwanted files resulting from patch fuzz
|
|
Justin Vreeland |
794d92 |
find . \( -name "*.orig" -o -name "*~" \) -delete >/dev/null
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# remove unnecessary SCM files
|
|
Justin Vreeland |
794d92 |
find . -name .gitignore -delete >/dev/null
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
cd ..
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
### build
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
%build
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_sparse}
|
|
Justin Vreeland |
794d92 |
%define sparse_mflags C=1
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
cp_vmlinux()
|
|
Justin Vreeland |
794d92 |
{
|
|
Justin Vreeland |
794d92 |
eu-strip --remove-comment -o "$2" "$1"
|
|
Justin Vreeland |
794d92 |
}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Note we need to disable these flags for cross builds because the flags
|
|
Justin Vreeland |
794d92 |
# from redhat-rpm-config assume that host == target so target arch
|
|
Justin Vreeland |
794d92 |
# flags cause issues with the host compiler.
|
|
Justin Vreeland |
794d92 |
%if !%{with_cross}
|
|
Justin Vreeland |
794d92 |
%define build_hostcflags %{?build_cflags}
|
|
Justin Vreeland |
794d92 |
%define build_hostldflags %{?build_ldflags}
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
%define make %{__make} %{?cross_opts} %{?make_opts} HOSTCFLAGS="%{?build_hostcflags}" HOSTLDFLAGS="%{?build_hostldflags}"
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
InitBuildVars() {
|
|
Justin Vreeland |
1fc083 |
# Initialize the kernel .config file and create some variables that are
|
|
Justin Vreeland |
1fc083 |
# needed for the actual build process.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
Flavour=$1
|
|
Justin Vreeland |
1fc083 |
Flav=${Flavour:++${Flavour}}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# Pick the right kernel config file
|
|
Justin Vreeland |
794d92 |
Config=kernel-%{version}-%{_target_cpu}${Flavour:+-${Flavour}}.config
|
|
Justin Vreeland |
794d92 |
DevelDir=/usr/src/kernels/%{KVERREL}${Flav}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
KernelVer=%{version}-%{release}.%{_target_cpu}${Flav}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# make sure EXTRAVERSION says what we want it to say
|
|
Justin Vreeland |
1fc083 |
# Trim the release if this is a CI build, since KERNELVERSION is limited to 64 characters
|
|
Justin Vreeland |
1fc083 |
ShortRel=$(perl -e "print \"%{release}\" =~ s/\.pr\.[0-9A-Fa-f]{32}//r")
|
|
Justin Vreeland |
1fc083 |
perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -${ShortRel}.%{_target_cpu}${Flav}/" Makefile
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# if pre-rc1 devel kernel, must fix up PATCHLEVEL for our versioning scheme
|
|
Justin Vreeland |
1fc083 |
# if we are post rc1 this should match anyway so this won't matter
|
|
Justin Vreeland |
1fc083 |
perl -p -i -e 's/^PATCHLEVEL.*/PATCHLEVEL = %{patchlevel}/' Makefile
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%{make} %{?_smp_mflags} mrproper
|
|
Justin Vreeland |
794d92 |
cp configs/$Config .config
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{signkernel}%{signmodules}
|
|
Justin Vreeland |
794d92 |
cp $RPM_SOURCE_DIR/x509.genkey certs/.
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
Arch=`head -1 .config | cut -b 3-`
|
|
Justin Vreeland |
794d92 |
echo USING ARCH=$Arch
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
KCFLAGS="%{?kcflags}"
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# add kpatch flags for base kernel
|
|
Justin Vreeland |
794d92 |
if [ "$Flavour" == "" ]; then
|
|
Justin Vreeland |
794d92 |
KCFLAGS="$KCFLAGS %{?kpatch_kcflags}"
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
1fc083 |
}
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
BuildKernel() {
|
|
Justin Vreeland |
1fc083 |
MakeTarget=$1
|
|
Justin Vreeland |
1fc083 |
KernelImage=$2
|
|
Justin Vreeland |
1fc083 |
Flavour=$4
|
|
Justin Vreeland |
1fc083 |
DoVDSO=$3
|
|
Justin Vreeland |
1fc083 |
Flav=${Flavour:++${Flavour}}
|
|
Justin Vreeland |
1fc083 |
InstallName=${5:-vmlinuz}
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
DoModules=1
|
|
Justin Vreeland |
1fc083 |
if [ "$Flavour" = "zfcpdump" ]; then
|
|
Justin Vreeland |
1fc083 |
DoModules=0
|
|
Justin Vreeland |
1fc083 |
fi
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
# When the bootable image is just the ELF kernel, strip it.
|
|
Justin Vreeland |
1fc083 |
# We already copy the unstripped file into the debuginfo package.
|
|
Justin Vreeland |
1fc083 |
if [ "$KernelImage" = vmlinux ]; then
|
|
Justin Vreeland |
1fc083 |
CopyKernel=cp_vmlinux
|
|
Justin Vreeland |
1fc083 |
else
|
|
Justin Vreeland |
1fc083 |
CopyKernel=cp
|
|
Justin Vreeland |
1fc083 |
fi
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
InitBuildVars $Flavour
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
echo BUILDING A KERNEL FOR ${Flavour} %{_target_cpu}...
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%{make} ARCH=$Arch olddefconfig >/dev/null
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# This ensures build-ids are unique to allow parallel debuginfo
|
|
Justin Vreeland |
794d92 |
perl -p -i -e "s/^CONFIG_BUILD_SALT.*/CONFIG_BUILD_SALT=\"%{KVERREL}\"/" .config
|
|
Justin Vreeland |
794d92 |
%{make} ARCH=$Arch KCFLAGS="$KCFLAGS" WITH_GCOV="%{?with_gcov}" %{?_smp_mflags} $MakeTarget %{?sparse_mflags} %{?kernel_mflags}
|
|
Justin Vreeland |
794d92 |
if [ $DoModules -eq 1 ]; then
|
|
Justin Vreeland |
794d92 |
%{make} ARCH=$Arch KCFLAGS="$KCFLAGS" WITH_GCOV="%{?with_gcov}" %{?_smp_mflags} modules %{?sparse_mflags} || exit 1
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/%{image_install_path}
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer
|
|
Justin Vreeland |
794d92 |
%if %{with_debuginfo}
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT%{debuginfodir}/%{image_install_path}
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifarch %{arm} aarch64
|
|
Justin Vreeland |
794d92 |
%{make} ARCH=$Arch dtbs INSTALL_DTBS_PATH=$RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
|
|
Justin Vreeland |
794d92 |
%{make} ARCH=$Arch dtbs_install INSTALL_DTBS_PATH=$RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
|
|
Justin Vreeland |
794d92 |
cp -r $RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer $RPM_BUILD_ROOT/lib/modules/$KernelVer/dtb
|
|
Justin Vreeland |
794d92 |
find arch/$Arch/boot/dts -name '*.dtb' -type f -delete
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Start installing the results
|
|
Justin Vreeland |
794d92 |
install -m 644 .config $RPM_BUILD_ROOT/boot/config-$KernelVer
|
|
Justin Vreeland |
794d92 |
install -m 644 .config $RPM_BUILD_ROOT/lib/modules/$KernelVer/config
|
|
Justin Vreeland |
794d92 |
install -m 644 System.map $RPM_BUILD_ROOT/boot/System.map-$KernelVer
|
|
Justin Vreeland |
794d92 |
install -m 644 System.map $RPM_BUILD_ROOT/lib/modules/$KernelVer/System.map
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# We estimate the size of the initramfs because rpm needs to take this size
|
|
Justin Vreeland |
794d92 |
# into consideration when performing disk space calculations. (See bz #530778)
|
|
Justin Vreeland |
794d92 |
dd if=/dev/zero of=$RPM_BUILD_ROOT/boot/initramfs-$KernelVer.img bs=1M count=20
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
if [ -f arch/$Arch/boot/zImage.stub ]; then
|
|
Justin Vreeland |
794d92 |
cp arch/$Arch/boot/zImage.stub $RPM_BUILD_ROOT/%{image_install_path}/zImage.stub-$KernelVer || :
|
|
Justin Vreeland |
794d92 |
cp arch/$Arch/boot/zImage.stub $RPM_BUILD_ROOT/lib/modules/$KernelVer/zImage.stub-$KernelVer || :
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{signkernel}
|
|
Justin Vreeland |
794d92 |
if [ "$KernelImage" = vmlinux ]; then
|
|
Justin Vreeland |
794d92 |
# We can't strip and sign $KernelImage in place, because
|
|
Justin Vreeland |
794d92 |
# we need to preserve original vmlinux for debuginfo.
|
|
Justin Vreeland |
794d92 |
# Use a copy for signing.
|
|
Justin Vreeland |
794d92 |
$CopyKernel $KernelImage $KernelImage.tosign
|
|
Justin Vreeland |
794d92 |
KernelImage=$KernelImage.tosign
|
|
Justin Vreeland |
794d92 |
CopyKernel=cp
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Sign the image if we're using EFI
|
|
Justin Vreeland |
794d92 |
# aarch64 kernels are gziped EFI images
|
|
Justin Vreeland |
794d92 |
KernelExtension=${KernelImage##*.}
|
|
Justin Vreeland |
794d92 |
if [ "$KernelExtension" == "gz" ]; then
|
|
Justin Vreeland |
794d92 |
SignImage=${KernelImage%.*}
|
|
Justin Vreeland |
794d92 |
else
|
|
Justin Vreeland |
794d92 |
SignImage=$KernelImage
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64 aarch64
|
|
Justin Vreeland |
794d92 |
%pesign -s -i $SignImage -o vmlinuz.tmp -a %{secureboot_ca_0} -c %{secureboot_key_0} -n %{pesign_name_0}
|
|
Justin Vreeland |
794d92 |
%pesign -s -i vmlinuz.tmp -o vmlinuz.signed -a %{secureboot_ca_1} -c %{secureboot_key_1} -n %{pesign_name_1}
|
|
Justin Vreeland |
794d92 |
rm vmlinuz.tmp
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%ifarch s390x ppc64le
|
|
Justin Vreeland |
794d92 |
if [ -x /usr/bin/rpm-sign ]; then
|
|
Justin Vreeland |
794d92 |
rpm-sign --key "%{pesign_name_0}" --lkmsign $SignImage --output vmlinuz.signed
|
|
Justin Vreeland |
794d92 |
elif [ $DoModules -eq 1 ]; then
|
|
Justin Vreeland |
794d92 |
chmod +x scripts/sign-file
|
|
Justin Vreeland |
794d92 |
./scripts/sign-file -p sha256 certs/signing_key.pem certs/signing_key.x509 $SignImage vmlinuz.signed
|
|
Justin Vreeland |
794d92 |
else
|
|
Justin Vreeland |
794d92 |
mv $SignImage vmlinuz.signed
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
if [ ! -s vmlinuz.signed ]; then
|
|
Justin Vreeland |
794d92 |
echo "pesigning failed"
|
|
Justin Vreeland |
794d92 |
exit 1
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
mv vmlinuz.signed $SignImage
|
|
Justin Vreeland |
794d92 |
if [ "$KernelExtension" == "gz" ]; then
|
|
Justin Vreeland |
794d92 |
gzip -f9 $SignImage
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
# signkernel
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
$CopyKernel $KernelImage \
|
|
Justin Vreeland |
794d92 |
$RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
|
|
Justin Vreeland |
794d92 |
chmod 755 $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
|
|
Justin Vreeland |
794d92 |
cp $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer $RPM_BUILD_ROOT/lib/modules/$KernelVer/$InstallName
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# hmac sign the kernel for FIPS
|
|
Justin Vreeland |
794d92 |
echo "Creating hmac file: $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac"
|
|
Justin Vreeland |
794d92 |
ls -l $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
|
|
Justin Vreeland |
794d92 |
sha512hmac $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer | sed -e "s,$RPM_BUILD_ROOT,," > $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac;
|
|
Justin Vreeland |
794d92 |
cp $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac $RPM_BUILD_ROOT/lib/modules/$KernelVer/.vmlinuz.hmac
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
if [ $DoModules -eq 1 ]; then
|
|
Justin Vreeland |
794d92 |
# Override $(mod-fw) because we don't want it to install any firmware
|
|
Justin Vreeland |
794d92 |
# we'll get it from the linux-firmware package and we don't want conflicts
|
|
Justin Vreeland |
794d92 |
%{make} %{?_smp_mflags} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT %{?_smp_mflags} modules_install KERNELRELEASE=$KernelVer mod-fw=
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_gcov}
|
|
Justin Vreeland |
794d92 |
# install gcov-needed files to $BUILDROOT/$BUILD/...:
|
|
Justin Vreeland |
794d92 |
# gcov_info->filename is absolute path
|
|
Justin Vreeland |
794d92 |
# gcno references to sources can use absolute paths (e.g. in out-of-tree builds)
|
|
Justin Vreeland |
794d92 |
# sysfs symlink targets (set up at compile time) use absolute paths to BUILD dir
|
|
Justin Vreeland |
794d92 |
find . \( -name '*.gcno' -o -name '*.[chS]' \) -exec install -D '{}' "$RPM_BUILD_ROOT/$(pwd)/{}" \;
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# add an a noop %%defattr statement 'cause rpm doesn't like empty file list files
|
|
Justin Vreeland |
794d92 |
echo '%%defattr(-,-,-)' > ../kernel${Flavour:+-${Flavour}}-ldsoconf.list
|
|
Justin Vreeland |
794d92 |
if [ $DoVDSO -ne 0 ]; then
|
|
Justin Vreeland |
794d92 |
%{make} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT vdso_install KERNELRELEASE=$KernelVer
|
|
Justin Vreeland |
794d92 |
if [ -s ldconfig-kernel.conf ]; then
|
|
Justin Vreeland |
794d92 |
install -D -m 444 ldconfig-kernel.conf \
|
|
Justin Vreeland |
794d92 |
$RPM_BUILD_ROOT/etc/ld.so.conf.d/kernel-$KernelVer.conf
|
|
Justin Vreeland |
794d92 |
echo /etc/ld.so.conf.d/kernel-$KernelVer.conf >> ../kernel${Flavour:+-${Flavour}}-ldsoconf.list
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/vdso/.build-id
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# And save the headers/makefiles etc for building modules against
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This all looks scary, but the end result is supposed to be:
|
|
Justin Vreeland |
794d92 |
# * all arch relevant include/ files
|
|
Justin Vreeland |
794d92 |
# * all Makefile/Kconfig files
|
|
Justin Vreeland |
794d92 |
# * all script/ files
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
794d92 |
rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/source
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
794d92 |
(cd $RPM_BUILD_ROOT/lib/modules/$KernelVer ; ln -s build source)
|
|
Justin Vreeland |
794d92 |
# dirs for additional modules per module-init-tools, kbuild/modules.txt
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/updates
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/weak-updates
|
|
Justin Vreeland |
794d92 |
# CONFIG_KERNEL_HEADER_TEST generates some extra files in the process of
|
|
Justin Vreeland |
794d92 |
# testing so just delete
|
|
Justin Vreeland |
794d92 |
find . -name *.h.s -delete
|
|
Justin Vreeland |
794d92 |
# first copy everything
|
|
Justin Vreeland |
794d92 |
cp --parents `find -type f -name "Makefile*" -o -name "Kconfig*"` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
if [ ! -e Module.symvers ]; then
|
|
Justin Vreeland |
1fc083 |
touch Module.symvers
|
|
Justin Vreeland |
1fc083 |
fi
|
|
Justin Vreeland |
794d92 |
cp Module.symvers $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
794d92 |
cp System.map $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
794d92 |
if [ -s Module.markers ]; then
|
|
Justin Vreeland |
794d92 |
cp Module.markers $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# create the kABI metadata for use in packaging
|
|
Justin Vreeland |
794d92 |
# NOTENOTE: the name symvers is used by the rpm backend
|
|
Justin Vreeland |
794d92 |
# NOTENOTE: to discover and run the /usr/lib/rpm/fileattrs/kabi.attr
|
|
Justin Vreeland |
794d92 |
# NOTENOTE: script which dynamically adds exported kernel symbol
|
|
Justin Vreeland |
794d92 |
# NOTENOTE: checksums to the rpm metadata provides list.
|
|
Justin Vreeland |
794d92 |
# NOTENOTE: if you change the symvers name, update the backend too
|
|
Justin Vreeland |
794d92 |
echo "**** GENERATING kernel ABI metadata ****"
|
|
Justin Vreeland |
794d92 |
gzip -c9 < Module.symvers > $RPM_BUILD_ROOT/boot/symvers-$KernelVer.gz
|
|
Justin Vreeland |
794d92 |
cp $RPM_BUILD_ROOT/boot/symvers-$KernelVer.gz $RPM_BUILD_ROOT/lib/modules/$KernelVer/symvers.gz
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_kabichk}
|
|
Justin Vreeland |
794d92 |
echo "**** kABI checking is enabled in kernel SPEC file. ****"
|
|
Justin Vreeland |
794d92 |
chmod 0755 $RPM_SOURCE_DIR/check-kabi
|
|
Justin Vreeland |
794d92 |
if [ -e $RPM_SOURCE_DIR/Module.kabi_%{_target_cpu}$Flavour ]; then
|
|
Justin Vreeland |
794d92 |
cp $RPM_SOURCE_DIR/Module.kabi_%{_target_cpu}$Flavour $RPM_BUILD_ROOT/Module.kabi
|
|
Justin Vreeland |
794d92 |
$RPM_SOURCE_DIR/check-kabi -k $RPM_BUILD_ROOT/Module.kabi -s Module.symvers || exit 1
|
|
Justin Vreeland |
794d92 |
# for now, don't keep it around.
|
|
Justin Vreeland |
794d92 |
rm $RPM_BUILD_ROOT/Module.kabi
|
|
Justin Vreeland |
794d92 |
else
|
|
Justin Vreeland |
794d92 |
echo "**** NOTE: Cannot find reference Module.kabi file. ****"
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_kabidupchk}
|
|
Justin Vreeland |
794d92 |
echo "**** kABI DUP checking is enabled in kernel SPEC file. ****"
|
|
Justin Vreeland |
794d92 |
if [ -e $RPM_SOURCE_DIR/Module.kabi_dup_%{_target_cpu}$Flavour ]; then
|
|
Justin Vreeland |
794d92 |
cp $RPM_SOURCE_DIR/Module.kabi_dup_%{_target_cpu}$Flavour $RPM_BUILD_ROOT/Module.kabi
|
|
Justin Vreeland |
794d92 |
$RPM_SOURCE_DIR/check-kabi -k $RPM_BUILD_ROOT/Module.kabi -s Module.symvers || exit 1
|
|
Justin Vreeland |
794d92 |
# for now, don't keep it around.
|
|
Justin Vreeland |
794d92 |
rm $RPM_BUILD_ROOT/Module.kabi
|
|
Justin Vreeland |
794d92 |
else
|
|
Justin Vreeland |
794d92 |
echo "**** NOTE: Cannot find DUP reference Module.kabi file. ****"
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_kabidw_base}
|
|
Justin Vreeland |
794d92 |
# Don't build kabi base for debug kernels
|
|
Justin Vreeland |
794d92 |
if [ "$Flavour" != "kdump" -a "$Flavour" != "debug" ]; then
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/kabi-dwarf
|
|
Justin Vreeland |
794d92 |
tar xjvf %{SOURCE301} -C $RPM_BUILD_ROOT/kabi-dwarf
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/kabi-dwarf/whitelists
|
|
Justin Vreeland |
794d92 |
tar xjvf %{SOURCE300} -C $RPM_BUILD_ROOT/kabi-dwarf/whitelists
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
echo "**** GENERATING DWARF-based kABI baseline dataset ****"
|
|
Justin Vreeland |
794d92 |
chmod 0755 $RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh
|
|
Justin Vreeland |
794d92 |
$RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh generate \
|
|
Justin Vreeland |
794d92 |
"$RPM_BUILD_ROOT/kabi-dwarf/whitelists/kabi-current/kabi_whitelist_%{_target_cpu}" \
|
|
Justin Vreeland |
794d92 |
"$(pwd)" \
|
|
Justin Vreeland |
794d92 |
"$RPM_BUILD_ROOT/kabidw-base/%{_target_cpu}${Flavour:+.${Flavour}}" || :
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
rm -rf $RPM_BUILD_ROOT/kabi-dwarf
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_kabidwchk}
|
|
Justin Vreeland |
794d92 |
if [ "$Flavour" != "kdump" ]; then
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/kabi-dwarf
|
|
Justin Vreeland |
794d92 |
tar xjvf %{SOURCE301} -C $RPM_BUILD_ROOT/kabi-dwarf
|
|
Justin Vreeland |
794d92 |
if [ -d "$RPM_BUILD_ROOT/kabi-dwarf/base/%{_target_cpu}${Flavour:+.${Flavour}}" ]; then
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/kabi-dwarf/whitelists
|
|
Justin Vreeland |
794d92 |
tar xjvf %{SOURCE300} -C $RPM_BUILD_ROOT/kabi-dwarf/whitelists
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
echo "**** GENERATING DWARF-based kABI dataset ****"
|
|
Justin Vreeland |
794d92 |
chmod 0755 $RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh
|
|
Justin Vreeland |
794d92 |
$RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh generate \
|
|
Justin Vreeland |
794d92 |
"$RPM_BUILD_ROOT/kabi-dwarf/whitelists/kabi-current/kabi_whitelist_%{_target_cpu}" \
|
|
Justin Vreeland |
794d92 |
"$(pwd)" \
|
|
Justin Vreeland |
794d92 |
"$RPM_BUILD_ROOT/kabi-dwarf/base/%{_target_cpu}${Flavour:+.${Flavour}}.tmp" || :
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
echo "**** kABI DWARF-based comparison report ****"
|
|
Justin Vreeland |
794d92 |
$RPM_BUILD_ROOT/kabi-dwarf/run_kabi-dw.sh compare \
|
|
Justin Vreeland |
794d92 |
"$RPM_BUILD_ROOT/kabi-dwarf/base/%{_target_cpu}${Flavour:+.${Flavour}}" \
|
|
Justin Vreeland |
794d92 |
"$RPM_BUILD_ROOT/kabi-dwarf/base/%{_target_cpu}${Flavour:+.${Flavour}}.tmp" || :
|
|
Justin Vreeland |
794d92 |
echo "**** End of kABI DWARF-based comparison report ****"
|
|
Justin Vreeland |
794d92 |
else
|
|
Justin Vreeland |
794d92 |
echo "**** Baseline dataset for kABI DWARF-BASED comparison report not found ****"
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
rm -rf $RPM_BUILD_ROOT/kabi-dwarf
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# then drop all but the needed Makefiles/Kconfig files
|
|
Justin Vreeland |
794d92 |
rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts
|
|
Justin Vreeland |
794d92 |
rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
|
|
Justin Vreeland |
794d92 |
cp .config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
794d92 |
cp -a scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
794d92 |
rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/tracing
|
|
Justin Vreeland |
794d92 |
rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/spdxcheck.py
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Files for 'make scripts' to succeed with kernel-devel.
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/security/selinux/include
|
|
Justin Vreeland |
794d92 |
cp -a --parents security/selinux/include/classmap.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
794d92 |
cp -a --parents security/selinux/include/initial_sid_to_string.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/tools/include/tools
|
|
Justin Vreeland |
794d92 |
cp -a --parents tools/include/tools/be_byteshift.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
794d92 |
cp -a --parents tools/include/tools/le_byteshift.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# Files for 'make prepare' to succeed with kernel-devel.
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/include/linux/compiler* $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/include/linux/types.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/build/Build.include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp --parents tools/build/Build $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp --parents tools/build/fixdep.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp --parents tools/objtool/sync-check.sh $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/bpf/resolve_btfids $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
cp --parents security/selinux/include/policycap_names.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp --parents security/selinux/include/policycap.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/include/asm-generic $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/include/linux $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/include/uapi/asm $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/include/uapi/asm-generic $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/include/uapi/linux $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/include/vdso $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp --parents tools/scripts/utilities.mak $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/lib/subcmd $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp --parents tools/lib/*.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp --parents tools/objtool/*.[ch] $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp --parents tools/objtool/Build $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp --parents tools/objtool/include/objtool/*.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/lib/bpf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp --parents tools/lib/bpf/Build $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
794d92 |
if [ -f tools/objtool/objtool ]; then
|
|
Justin Vreeland |
794d92 |
cp -a tools/objtool/objtool $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/tools/objtool/ || :
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
1fc083 |
if [ -f tools/objtool/fixdep ]; then
|
|
Justin Vreeland |
1fc083 |
cp -a tools/objtool/fixdep $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/tools/objtool/ || :
|
|
Justin Vreeland |
1fc083 |
fi
|
|
Justin Vreeland |
794d92 |
if [ -d arch/$Arch/scripts ]; then
|
|
Justin Vreeland |
794d92 |
cp -a arch/$Arch/scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch} || :
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
if [ -f arch/$Arch/*lds ]; then
|
|
Justin Vreeland |
794d92 |
cp -a arch/$Arch/*lds $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch}/ || :
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
if [ -f arch/%{asmarch}/kernel/module.lds ]; then
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/%{asmarch}/kernel/module.lds $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*.o
|
|
Justin Vreeland |
794d92 |
rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*/*.o
|
|
Justin Vreeland |
794d92 |
%ifarch ppc64le
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/powerpc/lib/crtsavres.[So] $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
if [ -d arch/%{asmarch}/include ]; then
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/%{asmarch}/include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
%ifarch aarch64
|
|
Justin Vreeland |
794d92 |
# arch/arm64/include/asm/xen references arch/arm
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/arm/include/asm/xen $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
# arch/arm64/include/asm/opcodes.h references arch/arm
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/arm/include/asm/opcodes.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
# include the machine specific headers for ARM variants, if available.
|
|
Justin Vreeland |
794d92 |
%ifarch %{arm}
|
|
Justin Vreeland |
794d92 |
if [ -d arch/%{asmarch}/mach-${Flavour}/include ]; then
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/%{asmarch}/mach-${Flavour}/include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
# include a few files for 'make prepare'
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/arm/tools/gen-mach-types $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/arm/tools/mach-types $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
cp -a include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
|
|
Justin Vreeland |
794d92 |
%ifarch i686 x86_64
|
|
Justin Vreeland |
794d92 |
# files for 'make prepare' to succeed with kernel-devel
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/entry/syscalls/syscall_32.tbl $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/entry/syscalls/syscall_64.tbl $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/tools/relocs_32.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/tools/relocs_64.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/tools/relocs.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/tools/relocs_common.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/tools/relocs.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/purgatory/purgatory.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/purgatory/stack.S $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/purgatory/setup-x86_64.S $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/purgatory/entry64.S $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/boot/string.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/boot/string.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
794d92 |
cp -a --parents arch/x86/boot/ctype.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
cp -a --parents scripts/syscalltbl.sh $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
1fc083 |
cp -a --parents scripts/syscallhdr.sh $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/arch/x86/include/asm $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/arch/x86/include/uapi/asm $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/objtool/arch/x86/lib $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/arch/x86/lib/ $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/arch/x86/tools/gen-insn-attr-x86.awk $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
cp -a --parents tools/objtool/arch/x86/ $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
1fc083 |
# Clean up intermediate tools files
|
|
Justin Vreeland |
1fc083 |
find $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/tools \( -iname "*.o" -o -iname "*.cmd" \) -exec rm -f {} +
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
794d92 |
# Make sure the Makefile and version.h have a matching timestamp so that
|
|
Justin Vreeland |
794d92 |
# external modules can be built
|
|
Justin Vreeland |
794d92 |
touch -r $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Makefile $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/generated/uapi/linux/version.h
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Copy .config to include/config/auto.conf so "make prepare" is unnecessary.
|
|
Justin Vreeland |
794d92 |
cp $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/.config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/config/auto.conf
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_debuginfo}
|
|
Justin Vreeland |
794d92 |
eu-readelf -n vmlinux | grep "Build ID" | awk '{print $NF}' > vmlinux.id
|
|
Justin Vreeland |
794d92 |
cp vmlinux.id $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/vmlinux.id
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# save the vmlinux file for kernel debugging into the kernel-debuginfo rpm
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer
|
|
Justin Vreeland |
794d92 |
cp vmlinux $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer
|
|
Justin Vreeland |
1fc083 |
if [ -n "%{vmlinux_decompressor}" ]; then
|
|
Justin Vreeland |
1fc083 |
eu-readelf -n %{vmlinux_decompressor} | grep "Build ID" | awk '{print $NF}' > vmlinux.decompressor.id
|
|
Justin Vreeland |
1fc083 |
# Without build-id the build will fail. But for s390 the build-id
|
|
Justin Vreeland |
1fc083 |
# wasn't added before 5.11. In case it is missing prefer not
|
|
Justin Vreeland |
1fc083 |
# packaging the debuginfo over a build failure.
|
|
Justin Vreeland |
1fc083 |
if [ -s vmlinux.decompressor.id ]; then
|
|
Justin Vreeland |
1fc083 |
cp vmlinux.decompressor.id $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/vmlinux.decompressor.id
|
|
Justin Vreeland |
1fc083 |
cp %{vmlinux_decompressor} $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer/vmlinux.decompressor
|
|
Justin Vreeland |
1fc083 |
fi
|
|
Justin Vreeland |
1fc083 |
fi
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name "*.ko" -type f >modnames
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# mark modules executable so that strip-to-file can strip them
|
|
Justin Vreeland |
794d92 |
xargs --no-run-if-empty chmod u+x < modnames
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Generate a list of modules for block and networking.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
grep -F /drivers/ modnames | xargs --no-run-if-empty nm -upA |
|
|
Justin Vreeland |
794d92 |
sed -n 's,^.*/\([^/]*\.ko\): *U \(.*\)$,\1 \2,p' > drivers.undef
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
collect_modules_list()
|
|
Justin Vreeland |
794d92 |
{
|
|
Justin Vreeland |
794d92 |
sed -r -n -e "s/^([^ ]+) \\.?($2)\$/\\1/p" drivers.undef |
|
|
Justin Vreeland |
794d92 |
LC_ALL=C sort -u > $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.$1
|
|
Justin Vreeland |
794d92 |
if [ ! -z "$3" ]; then
|
|
Justin Vreeland |
794d92 |
sed -r -e "/^($3)\$/d" -i $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.$1
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
collect_modules_list networking \
|
|
Justin Vreeland |
794d92 |
'register_netdev|ieee80211_register_hw|usbnet_probe|phy_driver_register|rt(l_|2x00)(pci|usb)_probe|register_netdevice'
|
|
Justin Vreeland |
794d92 |
collect_modules_list block \
|
|
Justin Vreeland |
794d92 |
'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'
|
|
Justin Vreeland |
794d92 |
collect_modules_list drm \
|
|
Justin Vreeland |
794d92 |
'drm_open|drm_init'
|
|
Justin Vreeland |
794d92 |
collect_modules_list modesetting \
|
|
Justin Vreeland |
794d92 |
'drm_crtc_init'
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# detect missing or incorrect license tags
|
|
Justin Vreeland |
794d92 |
( find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name '*.ko' | xargs /sbin/modinfo -l | \
|
|
Justin Vreeland |
794d92 |
grep -E -v 'GPL( v2)?$|Dual BSD/GPL$|Dual MPL/GPL$|GPL and additional rights$' ) && exit 1
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# remove files that will be auto generated by depmod at rpm -i time
|
|
Justin Vreeland |
794d92 |
pushd $RPM_BUILD_ROOT/lib/modules/$KernelVer/
|
|
Justin Vreeland |
794d92 |
rm -f modules.{alias*,builtin.bin,dep*,*map,symbols*,devname,softdep}
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# Identify modules in the kernel-modules-extras package
|
|
Justin Vreeland |
1fc083 |
%{SOURCE17} $RPM_BUILD_ROOT lib/modules/$KernelVer $RPM_SOURCE_DIR/mod-extra.list
|
|
Justin Vreeland |
1fc083 |
# Identify modules in the kernel-modules-extras package
|
|
Justin Vreeland |
1fc083 |
%{SOURCE17} $RPM_BUILD_ROOT lib/modules/$KernelVer %{SOURCE54} internal
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# Generate the kernel-core and kernel-modules files lists
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Copy the System.map file for depmod to use, and create a backup of the
|
|
Justin Vreeland |
794d92 |
# full module tree so we can restore it after we're done filtering
|
|
Justin Vreeland |
794d92 |
cp System.map $RPM_BUILD_ROOT/.
|
|
Justin Vreeland |
794d92 |
pushd $RPM_BUILD_ROOT
|
|
Justin Vreeland |
794d92 |
mkdir restore
|
|
Justin Vreeland |
794d92 |
cp -r lib/modules/$KernelVer/* restore/.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
# don't include anything going into kernel-modules-extra in the file lists
|
|
Justin Vreeland |
1fc083 |
xargs rm -rf < mod-extra.list
|
|
Justin Vreeland |
1fc083 |
# don't include anything going int kernel-modules-internal in the file lists
|
|
Justin Vreeland |
1fc083 |
xargs rm -rf < mod-internal.list
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
if [ $DoModules -eq 1 ]; then
|
|
Justin Vreeland |
794d92 |
# Find all the module files and filter them out into the core and
|
|
Justin Vreeland |
794d92 |
# modules lists. This actually removes anything going into -modules
|
|
Justin Vreeland |
794d92 |
# from the dir.
|
|
Justin Vreeland |
794d92 |
find lib/modules/$KernelVer/kernel -name *.ko | sort -n > modules.list
|
|
Justin Vreeland |
794d92 |
cp $RPM_SOURCE_DIR/filter-*.sh .
|
|
Justin Vreeland |
794d92 |
./filter-modules.sh modules.list %{_target_cpu}
|
|
Justin Vreeland |
794d92 |
rm filter-*.sh
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Run depmod on the resulting module tree and make sure it isn't broken
|
|
Justin Vreeland |
794d92 |
depmod -b . -aeF ./System.map $KernelVer &> depmod.out
|
|
Justin Vreeland |
794d92 |
if [ -s depmod.out ]; then
|
|
Justin Vreeland |
794d92 |
echo "Depmod failure"
|
|
Justin Vreeland |
794d92 |
cat depmod.out
|
|
Justin Vreeland |
794d92 |
exit 1
|
|
Justin Vreeland |
794d92 |
else
|
|
Justin Vreeland |
794d92 |
rm depmod.out
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
else
|
|
Justin Vreeland |
794d92 |
# Ensure important files/directories exist to let the packaging succeed
|
|
Justin Vreeland |
794d92 |
echo '%%defattr(-,-,-)' > modules.list
|
|
Justin Vreeland |
794d92 |
echo '%%defattr(-,-,-)' > k-d.list
|
|
Justin Vreeland |
794d92 |
mkdir -p lib/modules/$KernelVer/kernel
|
|
Justin Vreeland |
794d92 |
# Add files usually created by make modules, needed to prevent errors
|
|
Justin Vreeland |
794d92 |
# thrown by depmod during package installation
|
|
Justin Vreeland |
794d92 |
touch lib/modules/$KernelVer/modules.order
|
|
Justin Vreeland |
794d92 |
touch lib/modules/$KernelVer/modules.builtin
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# remove files that will be auto generated by depmod at rpm -i time
|
|
Justin Vreeland |
794d92 |
pushd $RPM_BUILD_ROOT/lib/modules/$KernelVer/
|
|
Justin Vreeland |
794d92 |
rm -f modules.{alias*,builtin.bin,dep*,*map,symbols*,devname,softdep}
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Go back and find all of the various directories in the tree. We use this
|
|
Justin Vreeland |
794d92 |
# for the dir lists in kernel-core
|
|
Justin Vreeland |
794d92 |
find lib/modules/$KernelVer/kernel -mindepth 1 -type d | sort -n > module-dirs.list
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Cleanup
|
|
Justin Vreeland |
794d92 |
rm System.map
|
|
Justin Vreeland |
794d92 |
cp -r restore/* lib/modules/$KernelVer/.
|
|
Justin Vreeland |
794d92 |
rm -rf restore
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Make sure the files lists start with absolute paths or rpmbuild fails.
|
|
Justin Vreeland |
794d92 |
# Also add in the dir entries
|
|
Justin Vreeland |
794d92 |
sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/k-d.list > ../kernel${Flavour:+-${Flavour}}-modules.list
|
|
Justin Vreeland |
794d92 |
sed -e 's/^lib*/%dir \/lib/' %{?zipsed} $RPM_BUILD_ROOT/module-dirs.list > ../kernel${Flavour:+-${Flavour}}-core.list
|
|
Justin Vreeland |
794d92 |
sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/modules.list >> ../kernel${Flavour:+-${Flavour}}-core.list
|
|
Justin Vreeland |
1fc083 |
sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/mod-extra.list >> ../kernel${Flavour:+-${Flavour}}-modules-extra.list
|
|
Justin Vreeland |
1fc083 |
sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/mod-internal.list >> ../kernel${Flavour:+-${Flavour}}-modules-internal.list
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Cleanup
|
|
Justin Vreeland |
794d92 |
rm -f $RPM_BUILD_ROOT/k-d.list
|
|
Justin Vreeland |
794d92 |
rm -f $RPM_BUILD_ROOT/modules.list
|
|
Justin Vreeland |
794d92 |
rm -f $RPM_BUILD_ROOT/module-dirs.list
|
|
Justin Vreeland |
1fc083 |
rm -f $RPM_BUILD_ROOT/mod-extra.list
|
|
Justin Vreeland |
1fc083 |
rm -f $RPM_BUILD_ROOT/mod-internal.list
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{signmodules}
|
|
Justin Vreeland |
794d92 |
if [ $DoModules -eq 1 ]; then
|
|
Justin Vreeland |
794d92 |
# Save the signing keys so we can sign the modules in __modsign_install_post
|
|
Justin Vreeland |
794d92 |
cp certs/signing_key.pem certs/signing_key.pem.sign${Flav}
|
|
Justin Vreeland |
794d92 |
cp certs/signing_key.x509 certs/signing_key.x509.sign${Flav}
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Move the devel headers out of the root file system
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/usr/src/kernels
|
|
Justin Vreeland |
794d92 |
mv $RPM_BUILD_ROOT/lib/modules/$KernelVer/build $RPM_BUILD_ROOT/$DevelDir
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# This is going to create a broken link during the build, but we don't use
|
|
Justin Vreeland |
794d92 |
# it after this point. We need the link to actually point to something
|
|
Justin Vreeland |
794d92 |
# when kernel-devel is installed, and a relative link doesn't work across
|
|
Justin Vreeland |
794d92 |
# the F17 UsrMove feature.
|
|
Justin Vreeland |
794d92 |
ln -sf $DevelDir $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# prune junk from kernel-devel
|
|
Justin Vreeland |
794d92 |
find $RPM_BUILD_ROOT/usr/src/kernels -name ".*.cmd" -delete
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# build a BLS config for this kernel
|
|
Justin Vreeland |
794d92 |
%{SOURCE53} "$KernelVer" "$RPM_BUILD_ROOT" "%{?variant}"
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Red Hat UEFI Secure Boot CA cert, which can be used to authenticate the kernel
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64 aarch64
|
|
Justin Vreeland |
794d92 |
install -m 0644 %{secureboot_ca_0} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/kernel-signing-ca-20200609.cer
|
|
Justin Vreeland |
794d92 |
install -m 0644 %{secureboot_ca_1} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/kernel-signing-ca-20140212.cer
|
|
Justin Vreeland |
794d92 |
ln -s kernel-signing-ca-20200609.cer $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/kernel-signing-ca.cer
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
794d92 |
install -m 0644 %{secureboot_ca_0} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/kernel-signing-ca.cer
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%ifarch s390x ppc64le
|
|
Justin Vreeland |
794d92 |
if [ $DoModules -eq 1 ]; then
|
|
Justin Vreeland |
794d92 |
if [ -x /usr/bin/rpm-sign ]; then
|
|
Justin Vreeland |
794d92 |
install -m 0644 %{secureboot_key_0} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/%{signing_key_filename}
|
|
Justin Vreeland |
794d92 |
else
|
|
Justin Vreeland |
794d92 |
install -m 0644 certs/signing_key.x509.sign${Flav} $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/kernel-signing-ca.cer
|
|
Justin Vreeland |
794d92 |
openssl x509 -in certs/signing_key.pem.sign${Flav} -outform der -out $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/%{signing_key_filename}
|
|
Justin Vreeland |
794d92 |
chmod 0644 $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer/%{signing_key_filename}
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_ipaclones}
|
|
Justin Vreeland |
794d92 |
MAXPROCS=$(echo %{?_smp_mflags} | sed -n 's/-j\s*\([0-9]\+\)/\1/p')
|
|
Justin Vreeland |
794d92 |
if [ -z "$MAXPROCS" ]; then
|
|
Justin Vreeland |
794d92 |
MAXPROCS=1
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
if [ "$Flavour" == "" ]; then
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/$DevelDir-ipaclones
|
|
Justin Vreeland |
794d92 |
find . -name '*.ipa-clones' | xargs -i{} -r -n 1 -P $MAXPROCS install -m 644 -D "{}" "$RPM_BUILD_ROOT/$DevelDir-ipaclones/{}"
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
# DO it...
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# prepare directories
|
|
Justin Vreeland |
794d92 |
rm -rf $RPM_BUILD_ROOT
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/boot
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT%{_libexecdir}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
cd linux-%{KVERREL}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_debug}
|
|
Justin Vreeland |
794d92 |
BuildKernel %make_target %kernel_image %{_use_vdso} debug
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_zfcpdump}
|
|
Justin Vreeland |
794d92 |
BuildKernel %make_target %kernel_image %{_use_vdso} zfcpdump
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_pae}
|
|
Justin Vreeland |
794d92 |
BuildKernel %make_target %kernel_image %{use_vdso} lpae
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_up}
|
|
Justin Vreeland |
794d92 |
BuildKernel %make_target %kernel_image %{_use_vdso}
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
1fc083 |
%ifnarch noarch i686
|
|
Justin Vreeland |
1fc083 |
%if !%{with_debug} && !%{with_zfcpdump} && !%{with_up}
|
|
Justin Vreeland |
1fc083 |
# If only building the user space tools, then initialize the build environment
|
|
Justin Vreeland |
1fc083 |
# and some variables so that the various userspace tools can be built.
|
|
Justin Vreeland |
1fc083 |
InitBuildVars
|
|
Justin Vreeland |
1fc083 |
%endif
|
|
Justin Vreeland |
1fc083 |
%endif
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
794d92 |
%global perf_make \
|
|
Justin Vreeland |
1fc083 |
%{__make} -s EXTRA_CFLAGS="${RPM_OPT_FLAGS}" LDFLAGS="%{__global_ldflags}" %{?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 prefix=%{_prefix} PYTHON=%{__python3}
|
|
Justin Vreeland |
794d92 |
%if %{with_perf}
|
|
Justin Vreeland |
794d92 |
# perf
|
|
Justin Vreeland |
794d92 |
# make sure check-headers.sh is executable
|
|
Justin Vreeland |
794d92 |
chmod +x tools/perf/check-headers.sh
|
|
Justin Vreeland |
794d92 |
%{perf_make} DESTDIR=$RPM_BUILD_ROOT all
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%global tools_make \
|
|
Justin Vreeland |
794d92 |
%{make} CFLAGS="${RPM_OPT_FLAGS}" LDFLAGS="%{__global_ldflags}" V=1
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_tools}
|
|
Justin Vreeland |
794d92 |
%ifarch %{cpupowerarchs}
|
|
Justin Vreeland |
794d92 |
# cpupower
|
|
Justin Vreeland |
794d92 |
# make sure version-gen.sh is executable.
|
|
Justin Vreeland |
794d92 |
chmod +x tools/power/cpupower/utils/version-gen.sh
|
|
Justin Vreeland |
794d92 |
%{tools_make} %{?_smp_mflags} -C tools/power/cpupower CPUFREQ_BENCH=false
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64
|
|
Justin Vreeland |
794d92 |
pushd tools/power/cpupower/debug/x86_64
|
|
Justin Vreeland |
794d92 |
%{tools_make} %{?_smp_mflags} centrino-decode powernow-k8-decode
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64
|
|
Justin Vreeland |
794d92 |
pushd tools/power/x86/x86_energy_perf_policy/
|
|
Justin Vreeland |
794d92 |
%{tools_make}
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
pushd tools/power/x86/turbostat
|
|
Justin Vreeland |
794d92 |
%{tools_make}
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
pushd tools/power/x86/intel-speed-select
|
|
Justin Vreeland |
794d92 |
%{make}
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
pushd tools/thermal/tmon/
|
|
Justin Vreeland |
794d92 |
%{tools_make}
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
pushd tools/iio/
|
|
Justin Vreeland |
1fc083 |
# Needs to be fixed to pick up CFLAGS
|
|
Justin Vreeland |
1fc083 |
%{__make}
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
pushd tools/gpio/
|
|
Justin Vreeland |
1fc083 |
# Needs to be fixed to pick up CFLAGS
|
|
Justin Vreeland |
1fc083 |
%{__make}
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%global bpftool_make \
|
|
Justin Vreeland |
1fc083 |
%{__make} EXTRA_CFLAGS="${RPM_OPT_FLAGS}" EXTRA_LDFLAGS="%{__global_ldflags}" DESTDIR=$RPM_BUILD_ROOT V=1
|
|
Justin Vreeland |
794d92 |
%if %{with_bpftool}
|
|
Justin Vreeland |
794d92 |
pushd tools/bpf/bpftool
|
|
Justin Vreeland |
794d92 |
%{bpftool_make}
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_selftests}
|
|
Justin Vreeland |
d5a02a |
# Unfortunately, samples/bpf/Makefile expects that the headers are installed
|
|
Justin Vreeland |
d5a02a |
# in the source tree. We installed them previously to $RPM_BUILD_ROOT/usr
|
|
Justin Vreeland |
d5a02a |
# but there's no way to tell the Makefile to take them from there.
|
|
Justin Vreeland |
d5a02a |
%{make} %{?_smp_mflags} headers_install
|
|
Justin Vreeland |
d5a02a |
|
|
Justin Vreeland |
d5a02a |
# If we re building only tools without kernel, we need to generate config
|
|
Justin Vreeland |
d5a02a |
# headers and prepare tree for modules building. The modules_prepare target
|
|
Justin Vreeland |
d5a02a |
# will cover both.
|
|
Justin Vreeland |
d5a02a |
if [ ! -f include/generated/autoconf.h ]; then
|
|
Justin Vreeland |
d5a02a |
%{make} %{?_smp_mflags} modules_prepare
|
|
Justin Vreeland |
d5a02a |
fi
|
|
Justin Vreeland |
d5a02a |
|
|
Justin Vreeland |
d5a02a |
%{make} %{?_smp_mflags} ARCH=$Arch V=1 M=samples/bpf/
|
|
Justin Vreeland |
d5a02a |
|
|
Justin Vreeland |
d5a02a |
# Prevent bpf selftests to build bpftool repeatedly:
|
|
Justin Vreeland |
d5a02a |
export BPFTOOL=$(pwd)/tools/bpf/bpftool/bpftool
|
|
Justin Vreeland |
d5a02a |
|
|
Justin Vreeland |
794d92 |
pushd tools/testing/selftests
|
|
Justin Vreeland |
794d92 |
# We need to install here because we need to call make with ARCH set which
|
|
Justin Vreeland |
794d92 |
# doesn't seem possible to do in the install section.
|
|
Justin Vreeland |
1fc083 |
%{make} -s %{?_smp_mflags} ARCH=$Arch V=1 TARGETS="bpf livepatch net" INSTALL_PATH=%{buildroot}%{_libexecdir}/kselftests install
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_doc}
|
|
Justin Vreeland |
794d92 |
# Make the HTML pages.
|
|
Justin Vreeland |
1fc083 |
%{__make} PYTHON=/usr/bin/python3 htmldocs || %{doc_build_fail}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# sometimes non-world-readable files sneak into the kernel source tree
|
|
Justin Vreeland |
794d92 |
chmod -R a=rX Documentation
|
|
Justin Vreeland |
794d92 |
find Documentation -type d | xargs chmod u+w
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# In the modsign case, we do 3 things. 1) We check the "flavour" and hard
|
|
Justin Vreeland |
794d92 |
# code the value in the following invocations. This is somewhat sub-optimal
|
|
Justin Vreeland |
794d92 |
# but we're doing this inside of an RPM macro and it isn't as easy as it
|
|
Justin Vreeland |
794d92 |
# could be because of that. 2) We restore the .tmp_versions/ directory from
|
|
Justin Vreeland |
794d92 |
# the one we saved off in BuildKernel above. This is to make sure we're
|
|
Justin Vreeland |
794d92 |
# signing the modules we actually built/installed in that flavour. 3) We
|
|
Justin Vreeland |
794d92 |
# grab the arch and invoke mod-sign.sh command to actually sign the modules.
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# We have to do all of those things _after_ find-debuginfo runs, otherwise
|
|
Justin Vreeland |
794d92 |
# that will strip the signature off of the modules.
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# Don't sign modules for the zfcpdump flavour as it is monolithic.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%define __modsign_install_post \
|
|
Justin Vreeland |
794d92 |
if [ "%{signmodules}" -eq "1" ]; then \
|
|
Justin Vreeland |
794d92 |
if [ "%{with_pae}" -ne "0" ]; then \
|
|
Justin Vreeland |
794d92 |
%{modsign_cmd} certs/signing_key.pem.sign+lpae certs/signing_key.x509.sign+lpae $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+lpae/ \
|
|
Justin Vreeland |
794d92 |
fi \
|
|
Justin Vreeland |
794d92 |
if [ "%{with_debug}" -ne "0" ]; then \
|
|
Justin Vreeland |
794d92 |
%{modsign_cmd} certs/signing_key.pem.sign+debug certs/signing_key.x509.sign+debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+debug/ \
|
|
Justin Vreeland |
794d92 |
fi \
|
|
Justin Vreeland |
794d92 |
if [ "%{with_up}" -ne "0" ]; then \
|
|
Justin Vreeland |
794d92 |
%{modsign_cmd} certs/signing_key.pem.sign certs/signing_key.x509.sign $RPM_BUILD_ROOT/lib/modules/%{KVERREL}/ \
|
|
Justin Vreeland |
794d92 |
fi \
|
|
Justin Vreeland |
794d92 |
fi \
|
|
Justin Vreeland |
794d92 |
if [ "%{zipmodules}" -eq "1" ]; then \
|
|
Justin Vreeland |
794d92 |
find $RPM_BUILD_ROOT/lib/modules/ -type f -name '*.ko' | xargs -P%{zcpu} xz; \
|
|
Justin Vreeland |
794d92 |
fi \
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
### Special hacks for debuginfo subpackages.
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# This macro is used by %%install, so we must redefine it before that.
|
|
Justin Vreeland |
794d92 |
%define debug_package %{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_debuginfo}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifnarch noarch
|
|
Justin Vreeland |
794d92 |
%global __debug_package 1
|
|
Justin Vreeland |
794d92 |
%files -f debugfiles.list debuginfo-common-%{_target_cpu}
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# We don't want to package debuginfo for self-tests and samples but
|
|
Justin Vreeland |
794d92 |
# we have to delete them to avoid an error messages about unpackaged
|
|
Justin Vreeland |
794d92 |
# files.
|
|
Justin Vreeland |
1fc083 |
# Delete the debuginfo for kernel-devel files
|
|
Justin Vreeland |
794d92 |
%define __remove_unwanted_dbginfo_install_post \
|
|
Justin Vreeland |
794d92 |
if [ "%{with_selftests}" -ne "0" ]; then \
|
|
Justin Vreeland |
794d92 |
rm -rf $RPM_BUILD_ROOT/usr/lib/debug/usr/libexec/ksamples; \
|
|
Justin Vreeland |
794d92 |
rm -rf $RPM_BUILD_ROOT/usr/lib/debug/usr/libexec/kselftests; \
|
|
Justin Vreeland |
794d92 |
fi \
|
|
Justin Vreeland |
794d92 |
rm -rf $RPM_BUILD_ROOT/usr/lib/debug/usr/src; \
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# Disgusting hack alert! We need to ensure we sign modules *after* all
|
|
Justin Vreeland |
794d92 |
# invocations of strip occur, which is in __debug_install_post if
|
|
Justin Vreeland |
794d92 |
# find-debuginfo.sh runs, and __os_install_post if not.
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define __spec_install_post \
|
|
Justin Vreeland |
794d92 |
%{?__debug_package:%{__debug_install_post}}\
|
|
Justin Vreeland |
794d92 |
%{__arch_install_post}\
|
|
Justin Vreeland |
794d92 |
%{__os_install_post}\
|
|
Justin Vreeland |
794d92 |
%{__remove_unwanted_dbginfo_install_post}\
|
|
Justin Vreeland |
794d92 |
%{__modsign_install_post}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
### install
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%install
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
cd linux-%{KVERREL}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_doc}
|
|
Justin Vreeland |
794d92 |
docdir=$RPM_BUILD_ROOT%{_datadir}/doc/kernel-doc-%{rpmversion}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# copy the source over
|
|
Justin Vreeland |
794d92 |
mkdir -p $docdir
|
|
Justin Vreeland |
794d92 |
tar -h -f - --exclude=man --exclude='.*' -c Documentation | tar xf - -C $docdir
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# with_doc
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# We have to do the headers install before the tools install because the
|
|
Justin Vreeland |
794d92 |
# kernel headers_install will remove any header files in /usr/include that
|
|
Justin Vreeland |
794d92 |
# it doesn't install itself.
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_headers}
|
|
Justin Vreeland |
794d92 |
# Install kernel headers
|
|
Justin Vreeland |
1fc083 |
%{__make} ARCH=%{hdrarch} INSTALL_HDR_PATH=$RPM_BUILD_ROOT/usr headers_install
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
find $RPM_BUILD_ROOT/usr/include \
|
|
Justin Vreeland |
794d92 |
\( -name .install -o -name .check -o \
|
|
Justin Vreeland |
794d92 |
-name ..install.cmd -o -name ..check.cmd \) -delete
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_cross_headers}
|
|
Justin Vreeland |
794d92 |
%if 0%{?fedora}
|
|
Justin Vreeland |
794d92 |
HDR_ARCH_LIST='arm arm64 powerpc s390 x86'
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
794d92 |
HDR_ARCH_LIST='arm64 powerpc s390 x86'
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/usr/tmp-headers
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
for arch in $HDR_ARCH_LIST; do
|
|
Justin Vreeland |
794d92 |
mkdir $RPM_BUILD_ROOT/usr/tmp-headers/arch-${arch}
|
|
Justin Vreeland |
1fc083 |
%{__make} ARCH=${arch} INSTALL_HDR_PATH=$RPM_BUILD_ROOT/usr/tmp-headers/arch-${arch} headers_install
|
|
Justin Vreeland |
794d92 |
done
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
find $RPM_BUILD_ROOT/usr/tmp-headers \
|
|
Justin Vreeland |
794d92 |
\( -name .install -o -name .check -o \
|
|
Justin Vreeland |
794d92 |
-name ..install.cmd -o -name ..check.cmd \) -delete
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# Copy all the architectures we care about to their respective asm directories
|
|
Justin Vreeland |
794d92 |
for arch in $HDR_ARCH_LIST ; do
|
|
Justin Vreeland |
794d92 |
mkdir -p $RPM_BUILD_ROOT/usr/${arch}-linux-gnu/include
|
|
Justin Vreeland |
794d92 |
mv $RPM_BUILD_ROOT/usr/tmp-headers/arch-${arch}/include/* $RPM_BUILD_ROOT/usr/${arch}-linux-gnu/include/
|
|
Justin Vreeland |
794d92 |
done
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
rm -rf $RPM_BUILD_ROOT/usr/tmp-headers
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_kernel_abi_whitelists}
|
|
Justin Vreeland |
794d92 |
# kabi directory
|
|
Justin Vreeland |
794d92 |
INSTALL_KABI_PATH=$RPM_BUILD_ROOT/lib/modules/
|
|
Justin Vreeland |
794d92 |
mkdir -p $INSTALL_KABI_PATH
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# install kabi releases directories
|
|
Justin Vreeland |
794d92 |
tar xjvf %{SOURCE300} -C $INSTALL_KABI_PATH
|
|
Justin Vreeland |
794d92 |
# with_kernel_abi_whitelists
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_perf}
|
|
Justin Vreeland |
794d92 |
# perf tool binary and supporting scripts/binaries
|
|
Justin Vreeland |
794d92 |
%{perf_make} DESTDIR=$RPM_BUILD_ROOT lib=%{_lib} install-bin install-traceevent-plugins
|
|
Justin Vreeland |
794d92 |
# remove the 'trace' symlink.
|
|
Justin Vreeland |
794d92 |
rm -f %{buildroot}%{_bindir}/trace
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# For both of the below, yes, this should be using a macro but right now
|
|
Justin Vreeland |
794d92 |
# it's hard coded and we don't actually want it anyway right now.
|
|
Justin Vreeland |
794d92 |
# Whoever wants examples can fix it up!
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# remove examples
|
|
Justin Vreeland |
794d92 |
rm -rf %{buildroot}/usr/lib/perf/examples
|
|
Justin Vreeland |
794d92 |
# remove the stray files that somehow got packaged
|
|
Justin Vreeland |
794d92 |
rm -rf %{buildroot}/usr/lib/perf/include/bpf/bpf.h
|
|
Justin Vreeland |
794d92 |
rm -rf %{buildroot}/usr/lib/perf/include/bpf/stdio.h
|
|
Justin Vreeland |
794d92 |
rm -rf %{buildroot}/usr/lib/perf/include/bpf/linux/socket.h
|
|
Justin Vreeland |
794d92 |
rm -rf %{buildroot}/usr/lib/perf/include/bpf/pid_filter.h
|
|
Justin Vreeland |
794d92 |
rm -rf %{buildroot}/usr/lib/perf/include/bpf/unistd.h
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# python-perf extension
|
|
Justin Vreeland |
794d92 |
%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-python_ext
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# perf man pages (note: implicit rpm magic compresses them later)
|
|
Justin Vreeland |
794d92 |
mkdir -p %{buildroot}/%{_mandir}/man1
|
|
Justin Vreeland |
794d92 |
%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-man
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_tools}
|
|
Justin Vreeland |
794d92 |
%ifarch %{cpupowerarchs}
|
|
Justin Vreeland |
794d92 |
%{make} -C tools/power/cpupower DESTDIR=$RPM_BUILD_ROOT libdir=%{_libdir} mandir=%{_mandir} CPUFREQ_BENCH=false install
|
|
Justin Vreeland |
794d92 |
rm -f %{buildroot}%{_libdir}/*.{a,la}
|
|
Justin Vreeland |
794d92 |
%find_lang cpupower
|
|
Justin Vreeland |
794d92 |
mv cpupower.lang ../
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64
|
|
Justin Vreeland |
794d92 |
pushd tools/power/cpupower/debug/x86_64
|
|
Justin Vreeland |
794d92 |
install -m755 centrino-decode %{buildroot}%{_bindir}/centrino-decode
|
|
Justin Vreeland |
794d92 |
install -m755 powernow-k8-decode %{buildroot}%{_bindir}/powernow-k8-decode
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
chmod 0755 %{buildroot}%{_libdir}/libcpupower.so*
|
|
Justin Vreeland |
794d92 |
mkdir -p %{buildroot}%{_unitdir} %{buildroot}%{_sysconfdir}/sysconfig
|
|
Justin Vreeland |
794d92 |
install -m644 %{SOURCE2000} %{buildroot}%{_unitdir}/cpupower.service
|
|
Justin Vreeland |
794d92 |
install -m644 %{SOURCE2001} %{buildroot}%{_sysconfdir}/sysconfig/cpupower
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64
|
|
Justin Vreeland |
794d92 |
mkdir -p %{buildroot}%{_mandir}/man8
|
|
Justin Vreeland |
794d92 |
pushd tools/power/x86/x86_energy_perf_policy
|
|
Justin Vreeland |
794d92 |
%{tools_make} DESTDIR=%{buildroot} install
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
pushd tools/power/x86/turbostat
|
|
Justin Vreeland |
794d92 |
%{tools_make} DESTDIR=%{buildroot} install
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
pushd tools/power/x86/intel-speed-select
|
|
Justin Vreeland |
794d92 |
%{tools_make} CFLAGS+="-D_GNU_SOURCE -Iinclude" DESTDIR=%{buildroot} install
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
pushd tools/thermal/tmon
|
|
Justin Vreeland |
794d92 |
%{tools_make} INSTALL_ROOT=%{buildroot} install
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
pushd tools/iio
|
|
Justin Vreeland |
1fc083 |
%{__make} DESTDIR=%{buildroot} install
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
pushd tools/gpio
|
|
Justin Vreeland |
1fc083 |
%{__make} DESTDIR=%{buildroot} install
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
pushd tools/kvm/kvm_stat
|
|
Justin Vreeland |
1fc083 |
%{__make} INSTALL_ROOT=%{buildroot} install-tools
|
|
Justin Vreeland |
1fc083 |
%{__make} INSTALL_ROOT=%{buildroot} install-man
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_bpftool}
|
|
Justin Vreeland |
794d92 |
pushd tools/bpf/bpftool
|
|
Justin Vreeland |
794d92 |
%{bpftool_make} prefix=%{_prefix} bash_compdir=%{_sysconfdir}/bash_completion.d/ mandir=%{_mandir} install doc-install
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
1fc083 |
# man-pages packages this (rhbz #1686954, #1918707)
|
|
Justin Vreeland |
1fc083 |
# jvreeland: eh.
|
|
Justin Vreeland |
1fc083 |
# rm %{buildroot}%{_mandir}/man7/bpf-helpers.7
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_selftests}
|
|
Justin Vreeland |
794d92 |
pushd samples
|
|
Justin Vreeland |
794d92 |
install -d %{buildroot}%{_libexecdir}/ksamples
|
|
Justin Vreeland |
794d92 |
# install bpf samples
|
|
Justin Vreeland |
794d92 |
pushd bpf
|
|
Justin Vreeland |
794d92 |
install -d %{buildroot}%{_libexecdir}/ksamples/bpf
|
|
Justin Vreeland |
794d92 |
find -type f -executable -exec install -m755 {} %{buildroot}%{_libexecdir}/ksamples/bpf \;
|
|
Justin Vreeland |
794d92 |
install -m755 *.sh %{buildroot}%{_libexecdir}/ksamples/bpf
|
|
Justin Vreeland |
794d92 |
# test_lwt_bpf.sh compiles test_lwt_bpf.c when run; this works only from the
|
|
Justin Vreeland |
794d92 |
# kernel tree. Just remove it.
|
|
Justin Vreeland |
794d92 |
rm %{buildroot}%{_libexecdir}/ksamples/bpf/test_lwt_bpf.sh
|
|
Justin Vreeland |
794d92 |
install -m644 tcp_bpf.readme %{buildroot}%{_libexecdir}/ksamples/bpf
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
# install pktgen samples
|
|
Justin Vreeland |
794d92 |
pushd pktgen
|
|
Justin Vreeland |
794d92 |
install -d %{buildroot}%{_libexecdir}/ksamples/pktgen
|
|
Justin Vreeland |
794d92 |
find . -type f -executable -exec install -m755 {} %{buildroot}%{_libexecdir}/ksamples/pktgen/{} \;
|
|
Justin Vreeland |
794d92 |
find . -type f ! -executable -exec install -m644 {} %{buildroot}%{_libexecdir}/ksamples/pktgen/{} \;
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
# install drivers/net/mlxsw selftests
|
|
Justin Vreeland |
794d92 |
pushd tools/testing/selftests/drivers/net/mlxsw
|
|
Justin Vreeland |
794d92 |
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/drivers/net/mlxsw/{} \;
|
|
Justin Vreeland |
794d92 |
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/drivers/net/mlxsw/{} \;
|
|
Justin Vreeland |
794d92 |
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/drivers/net/mlxsw/{} \;
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
# install net/forwarding selftests
|
|
Justin Vreeland |
794d92 |
pushd tools/testing/selftests/net/forwarding
|
|
Justin Vreeland |
794d92 |
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/net/forwarding/{} \;
|
|
Justin Vreeland |
794d92 |
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/net/forwarding/{} \;
|
|
Justin Vreeland |
794d92 |
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/net/forwarding/{} \;
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
# install tc-testing selftests
|
|
Justin Vreeland |
794d92 |
pushd tools/testing/selftests/tc-testing
|
|
Justin Vreeland |
794d92 |
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/tc-testing/{} \;
|
|
Justin Vreeland |
794d92 |
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/tc-testing/{} \;
|
|
Justin Vreeland |
794d92 |
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/tc-testing/{} \;
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
# install livepatch selftests
|
|
Justin Vreeland |
794d92 |
pushd tools/testing/selftests/livepatch
|
|
Justin Vreeland |
794d92 |
find -type d -exec install -d %{buildroot}%{_libexecdir}/kselftests/livepatch/{} \;
|
|
Justin Vreeland |
794d92 |
find -type f -executable -exec install -D -m755 {} %{buildroot}%{_libexecdir}/kselftests/livepatch/{} \;
|
|
Justin Vreeland |
794d92 |
find -type f ! -executable -exec install -D -m644 {} %{buildroot}%{_libexecdir}/kselftests/livepatch/{} \;
|
|
Justin Vreeland |
794d92 |
popd
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# We have to do the headers checksum calculation after the tools install because
|
|
Justin Vreeland |
794d92 |
# these might end up installing their own set of headers on top of kernel's
|
|
Justin Vreeland |
794d92 |
%if %{with_headers}
|
|
Justin Vreeland |
794d92 |
# compute a content hash to export as Provides: kernel-headers-checksum
|
|
Justin Vreeland |
794d92 |
HEADERS_CHKSUM=$(export LC_ALL=C; find $RPM_BUILD_ROOT/usr/include -type f -name "*.h" \
|
|
Justin Vreeland |
794d92 |
! -path $RPM_BUILD_ROOT/usr/include/linux/version.h | \
|
|
Justin Vreeland |
794d92 |
sort | xargs cat | sha1sum - | cut -f 1 -d ' ');
|
|
Justin Vreeland |
794d92 |
# export the checksum via usr/include/linux/version.h, so the dynamic
|
|
Justin Vreeland |
794d92 |
# find-provides can grab the hash to update it accordingly
|
|
Justin Vreeland |
794d92 |
echo "#define KERNEL_HEADERS_CHECKSUM \"$HEADERS_CHKSUM\"" >> $RPM_BUILD_ROOT/usr/include/linux/version.h
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
### clean
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
### scripts
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_tools}
|
|
Justin Vreeland |
794d92 |
%post -n kernel-tools-libs
|
|
Justin Vreeland |
794d92 |
/sbin/ldconfig
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%postun -n kernel-tools-libs
|
|
Justin Vreeland |
794d92 |
/sbin/ldconfig
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro defines a %%post script for a kernel*-devel package.
|
|
Justin Vreeland |
794d92 |
# %%kernel_devel_post [<subpackage>]
|
|
Justin Vreeland |
794d92 |
# Note we don't run hardlink if ostree is in use, as ostree is
|
|
Justin Vreeland |
794d92 |
# a far more sophisticated hardlink implementation.
|
|
Justin Vreeland |
794d92 |
# https://github.com/projectatomic/rpm-ostree/commit/58a79056a889be8814aa51f507b2c7a4dccee526
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_devel_post() \
|
|
Justin Vreeland |
794d92 |
%{expand:%%post %{?1:%{1}-}devel}\
|
|
Justin Vreeland |
794d92 |
if [ -f /etc/sysconfig/kernel ]\
|
|
Justin Vreeland |
794d92 |
then\
|
|
Justin Vreeland |
794d92 |
. /etc/sysconfig/kernel || exit $?\
|
|
Justin Vreeland |
794d92 |
fi\
|
|
Justin Vreeland |
1fc083 |
if [ "$HARDLINK" != "no" -a -x /usr/bin/hardlink -a ! -e /run/ostree-booted ] \
|
|
Justin Vreeland |
794d92 |
then\
|
|
Justin Vreeland |
794d92 |
(cd /usr/src/kernels/%{KVERREL}%{?1:+%{1}} &&\
|
|
Justin Vreeland |
794d92 |
/usr/bin/find . -type f | while read f; do\
|
|
Justin Vreeland |
794d92 |
hardlink -c /usr/src/kernels/*%{?dist}.*/$f $f\
|
|
Justin Vreeland |
794d92 |
done)\
|
|
Justin Vreeland |
794d92 |
fi\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro defines a %%post script for a kernel*-modules-extra package.
|
|
Justin Vreeland |
794d92 |
# It also defines a %%postun script that does the same thing.
|
|
Justin Vreeland |
794d92 |
# %%kernel_modules_extra_post [<subpackage>]
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_modules_extra_post() \
|
|
Justin Vreeland |
794d92 |
%{expand:%%post %{?1:%{1}-}modules-extra}\
|
|
Justin Vreeland |
794d92 |
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
%{nil}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%postun %{?1:%{1}-}modules-extra}\
|
|
Justin Vreeland |
794d92 |
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro defines a %%post script for a kernel*-modules-internal package.
|
|
Justin Vreeland |
794d92 |
# It also defines a %%postun script that does the same thing.
|
|
Justin Vreeland |
794d92 |
# %%kernel_modules_internal_post [<subpackage>]
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_modules_internal_post() \
|
|
Justin Vreeland |
794d92 |
%{expand:%%post %{?1:%{1}-}modules-internal}\
|
|
Justin Vreeland |
794d92 |
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
%{nil}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%postun %{?1:%{1}-}modules-internal}\
|
|
Justin Vreeland |
794d92 |
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro defines a %%post script for a kernel*-modules package.
|
|
Justin Vreeland |
794d92 |
# It also defines a %%postun script that does the same thing.
|
|
Justin Vreeland |
794d92 |
# %%kernel_modules_post [<subpackage>]
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_modules_post() \
|
|
Justin Vreeland |
794d92 |
%{expand:%%post %{?1:%{1}-}modules}\
|
|
Justin Vreeland |
794d92 |
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
%{nil}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%postun %{?1:%{1}-}modules}\
|
|
Justin Vreeland |
794d92 |
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# This macro defines a %%posttrans script for a kernel package.
|
|
Justin Vreeland |
794d92 |
# %%kernel_variant_posttrans [<subpackage>]
|
|
Justin Vreeland |
794d92 |
# More text can follow to go at the end of this variant's %%post.
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_variant_posttrans() \
|
|
Justin Vreeland |
794d92 |
%{expand:%%posttrans %{?1:%{1}-}core}\
|
|
Justin Vreeland |
794d92 |
%if 0%{!?fedora:1}\
|
|
Justin Vreeland |
794d92 |
if [ -x %{_sbindir}/weak-modules ]\
|
|
Justin Vreeland |
794d92 |
then\
|
|
Justin Vreeland |
794d92 |
%{_sbindir}/weak-modules --add-kernel %{KVERREL}%{?1:+%{1}} || exit $?\
|
|
Justin Vreeland |
794d92 |
fi\
|
|
Justin Vreeland |
794d92 |
%endif\
|
|
Justin Vreeland |
794d92 |
/bin/kernel-install add %{KVERREL}%{?1:+%{1}} /lib/modules/%{KVERREL}%{?1:+%{1}}/vmlinuz || exit $?\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro defines a %%post script for a kernel package and its devel package.
|
|
Justin Vreeland |
794d92 |
# %%kernel_variant_post [-v <subpackage>] [-r <replace>]
|
|
Justin Vreeland |
794d92 |
# More text can follow to go at the end of this variant's %%post.
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_variant_post(v:r:) \
|
|
Justin Vreeland |
794d92 |
%{expand:%%kernel_devel_post %{?-v*}}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%kernel_modules_post %{?-v*}}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%kernel_modules_extra_post %{?-v*}}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%kernel_modules_internal_post %{?-v*}}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%kernel_variant_posttrans %{?-v*}}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%post %{?-v*:%{-v*}-}core}\
|
|
Justin Vreeland |
794d92 |
%{-r:\
|
|
Justin Vreeland |
794d92 |
if [ `uname -i` == "x86_64" -o `uname -i` == "i386" ] &&\
|
|
Justin Vreeland |
794d92 |
[ -f /etc/sysconfig/kernel ]; then\
|
|
Justin Vreeland |
794d92 |
/bin/sed -r -i -e 's/^DEFAULTKERNEL=%{-r*}$/DEFAULTKERNEL=kernel%{?-v:-%{-v*}}/' /etc/sysconfig/kernel || exit $?\
|
|
Justin Vreeland |
794d92 |
fi}\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro defines a %%preun script for a kernel package.
|
|
Justin Vreeland |
794d92 |
# %%kernel_variant_preun <subpackage>
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_variant_preun() \
|
|
Justin Vreeland |
794d92 |
%{expand:%%preun %{?1:%{1}-}core}\
|
|
Justin Vreeland |
794d92 |
/bin/kernel-install remove %{KVERREL}%{?1:+%{1}} /lib/modules/%{KVERREL}%{?1:+%{1}}/vmlinuz || exit $?\
|
|
Justin Vreeland |
794d92 |
if [ -x %{_sbindir}/weak-modules ]\
|
|
Justin Vreeland |
794d92 |
then\
|
|
Justin Vreeland |
794d92 |
%{_sbindir}/weak-modules --remove-kernel %{KVERREL}%{?1:+%{1}} || exit $?\
|
|
Justin Vreeland |
794d92 |
fi\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%kernel_variant_preun
|
|
Justin Vreeland |
794d92 |
%kernel_variant_post -r kernel-smp
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_pae}
|
|
Justin Vreeland |
794d92 |
%kernel_variant_preun lpae
|
|
Justin Vreeland |
794d92 |
%kernel_variant_post -v lpae -r (kernel|kernel-smp)
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%kernel_variant_preun debug
|
|
Justin Vreeland |
794d92 |
%kernel_variant_post -v debug
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_zfcpdump}
|
|
Justin Vreeland |
794d92 |
%kernel_variant_preun zfcpdump
|
|
Justin Vreeland |
794d92 |
%kernel_variant_post -v zfcpdump
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
if [ -x /sbin/ldconfig ]
|
|
Justin Vreeland |
794d92 |
then
|
|
Justin Vreeland |
794d92 |
/sbin/ldconfig -X || exit $?
|
|
Justin Vreeland |
794d92 |
fi
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
### file lists
|
|
Justin Vreeland |
794d92 |
###
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_headers}
|
|
Justin Vreeland |
794d92 |
%files headers
|
|
Justin Vreeland |
794d92 |
/usr/include/*
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_cross_headers}
|
|
Justin Vreeland |
794d92 |
%files cross-headers
|
|
Justin Vreeland |
794d92 |
/usr/*-linux-gnu/include/*
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_kernel_abi_whitelists}
|
|
Justin Vreeland |
794d92 |
%files -n kernel-abi-whitelists
|
|
Justin Vreeland |
794d92 |
/lib/modules/kabi-*
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_kabidw_base}
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64 s390x ppc64 ppc64le aarch64
|
|
Justin Vreeland |
794d92 |
%files kabidw-base
|
|
Justin Vreeland |
794d92 |
%defattr(-,root,root)
|
|
Justin Vreeland |
794d92 |
/kabidw-base/%{_target_cpu}/*
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# only some architecture builds need kernel-doc
|
|
Justin Vreeland |
794d92 |
%if %{with_doc}
|
|
Justin Vreeland |
794d92 |
%files doc
|
|
Justin Vreeland |
794d92 |
%defattr(-,root,root)
|
|
Justin Vreeland |
794d92 |
%{_datadir}/doc/kernel-doc-%{rpmversion}/Documentation/*
|
|
Justin Vreeland |
794d92 |
%dir %{_datadir}/doc/kernel-doc-%{rpmversion}/Documentation
|
|
Justin Vreeland |
794d92 |
%dir %{_datadir}/doc/kernel-doc-%{rpmversion}
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_perf}
|
|
Justin Vreeland |
794d92 |
%files -n perf
|
|
Justin Vreeland |
794d92 |
%{_bindir}/perf
|
|
Justin Vreeland |
794d92 |
%{_libdir}/libperf-jvmti.so
|
|
Justin Vreeland |
794d92 |
%dir %{_libdir}/traceevent/plugins
|
|
Justin Vreeland |
794d92 |
%{_libdir}/traceevent/plugins/*
|
|
Justin Vreeland |
794d92 |
%dir %{_libexecdir}/perf-core
|
|
Justin Vreeland |
794d92 |
%{_libexecdir}/perf-core/*
|
|
Justin Vreeland |
794d92 |
%{_datadir}/perf-core/*
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man[1-8]/perf*
|
|
Justin Vreeland |
794d92 |
%{_sysconfdir}/bash_completion.d/perf
|
|
Justin Vreeland |
794d92 |
%doc linux-%{KVERREL}/tools/perf/Documentation/examples.txt
|
|
Justin Vreeland |
794d92 |
%{_docdir}/perf-tip/tips.txt
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%files -n python3-perf
|
|
Justin Vreeland |
794d92 |
%{python3_sitearch}/*
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_debuginfo}
|
|
Justin Vreeland |
794d92 |
%files -f perf-debuginfo.list -n perf-debuginfo
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%files -f python3-perf-debuginfo.list -n python3-perf-debuginfo
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
# with_perf
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_tools}
|
|
Justin Vreeland |
794d92 |
%ifnarch %{cpupowerarchs}
|
|
Justin Vreeland |
794d92 |
%files -n kernel-tools
|
|
Justin Vreeland |
794d92 |
%else
|
|
Justin Vreeland |
794d92 |
%files -n kernel-tools -f cpupower.lang
|
|
Justin Vreeland |
794d92 |
%{_bindir}/cpupower
|
|
Justin Vreeland |
794d92 |
%{_datadir}/bash-completion/completions/cpupower
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64
|
|
Justin Vreeland |
794d92 |
%{_bindir}/centrino-decode
|
|
Justin Vreeland |
794d92 |
%{_bindir}/powernow-k8-decode
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%{_unitdir}/cpupower.service
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man[1-8]/cpupower*
|
|
Justin Vreeland |
794d92 |
%config(noreplace) %{_sysconfdir}/sysconfig/cpupower
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64
|
|
Justin Vreeland |
794d92 |
%{_bindir}/x86_energy_perf_policy
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man8/x86_energy_perf_policy*
|
|
Justin Vreeland |
794d92 |
%{_bindir}/turbostat
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man8/turbostat*
|
|
Justin Vreeland |
794d92 |
%{_bindir}/intel-speed-select
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
# cpupowerarchs
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%{_bindir}/tmon
|
|
Justin Vreeland |
794d92 |
%{_bindir}/iio_event_monitor
|
|
Justin Vreeland |
794d92 |
%{_bindir}/iio_generic_buffer
|
|
Justin Vreeland |
794d92 |
%{_bindir}/lsiio
|
|
Justin Vreeland |
794d92 |
%{_bindir}/lsgpio
|
|
Justin Vreeland |
794d92 |
%{_bindir}/gpio-hammer
|
|
Justin Vreeland |
794d92 |
%{_bindir}/gpio-event-mon
|
|
Justin Vreeland |
794d92 |
%{_bindir}/gpio-watch
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man1/kvm_stat*
|
|
Justin Vreeland |
794d92 |
%{_bindir}/kvm_stat
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_debuginfo}
|
|
Justin Vreeland |
794d92 |
%files -f kernel-tools-debuginfo.list -n kernel-tools-debuginfo
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%ifarch %{cpupowerarchs}
|
|
Justin Vreeland |
794d92 |
%files -n kernel-tools-libs
|
|
Justin Vreeland |
794d92 |
%{_libdir}/libcpupower.so.0
|
|
Justin Vreeland |
794d92 |
%{_libdir}/libcpupower.so.0.0.1
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%files -n kernel-tools-libs-devel
|
|
Justin Vreeland |
794d92 |
%{_libdir}/libcpupower.so
|
|
Justin Vreeland |
794d92 |
%{_includedir}/cpufreq.h
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
# with_tools
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_bpftool}
|
|
Justin Vreeland |
794d92 |
%files -n bpftool
|
|
Justin Vreeland |
794d92 |
%{_sbindir}/bpftool
|
|
Justin Vreeland |
794d92 |
%{_sysconfdir}/bash_completion.d/bpftool
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man8/bpftool-cgroup.8.gz
|
|
Justin Vreeland |
1fc083 |
%{_mandir}/man8/bpftool-gen.8.gz
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man8/bpftool-iter.8.gz
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man8/bpftool-link.8.gz
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man8/bpftool-map.8.gz
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man8/bpftool-prog.8.gz
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man8/bpftool-perf.8.gz
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man8/bpftool.8.gz
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man8/bpftool-net.8.gz
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man8/bpftool-feature.8.gz
|
|
Justin Vreeland |
794d92 |
%{_mandir}/man8/bpftool-btf.8.gz
|
|
Justin Vreeland |
1fc083 |
%{_mandir}/man8/bpftool-struct_ops.8.gz
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_debuginfo}
|
|
Justin Vreeland |
794d92 |
%files -f bpftool-debuginfo.list -n bpftool-debuginfo
|
|
Justin Vreeland |
794d92 |
%defattr(-,root,root)
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_selftests}
|
|
Justin Vreeland |
794d92 |
%files selftests-internal
|
|
Justin Vreeland |
794d92 |
%{_libexecdir}/ksamples
|
|
Justin Vreeland |
794d92 |
%{_libexecdir}/kselftests
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# empty meta-package
|
|
Justin Vreeland |
794d92 |
%ifnarch %nobuildarches noarch
|
|
Justin Vreeland |
794d92 |
%files
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%if %{with_gcov}
|
|
Justin Vreeland |
794d92 |
%ifarch x86_64 s390x ppc64le aarch64
|
|
Justin Vreeland |
794d92 |
%files gcov
|
|
Justin Vreeland |
794d92 |
%{_builddir}
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
%endif
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# This is %%{image_install_path} on an arch where that includes ELF files,
|
|
Justin Vreeland |
794d92 |
# or empty otherwise.
|
|
Justin Vreeland |
794d92 |
%define elf_image_install_path %{?kernel_image_elf:%{image_install_path}}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
# This macro defines the %%files sections for a kernel package
|
|
Justin Vreeland |
794d92 |
# and its devel and debuginfo packages.
|
|
Justin Vreeland |
794d92 |
# %%kernel_variant_files [-k vmlinux] <condition> <subpackage> <without_modules>
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%define kernel_variant_files(k:) \
|
|
Justin Vreeland |
794d92 |
%if %{2}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%files -f kernel-%{?3:%{3}-}core.list %{?1:-f kernel-%{?3:%{3}-}ldsoconf.list} %{?3:%{3}-}core}\
|
|
Justin Vreeland |
794d92 |
%{!?_licensedir:%global license %%doc}\
|
|
Justin Vreeland |
794d92 |
%license linux-%{KVERREL}/COPYING-%{version}-%{release}\
|
|
Justin Vreeland |
794d92 |
/lib/modules/%{KVERREL}%{?3:+%{3}}/%{?-k:%{-k*}}%{!?-k:vmlinuz}\
|
|
Justin Vreeland |
794d92 |
%ghost /%{image_install_path}/%{?-k:%{-k*}}%{!?-k:vmlinuz}-%{KVERREL}%{?3:+%{3}}\
|
|
Justin Vreeland |
794d92 |
/lib/modules/%{KVERREL}%{?3:+%{3}}/.vmlinuz.hmac \
|
|
Justin Vreeland |
794d92 |
%ghost /%{image_install_path}/.vmlinuz-%{KVERREL}%{?3:+%{3}}.hmac \
|
|
Justin Vreeland |
794d92 |
%ifarch %{arm} aarch64\
|
|
Justin Vreeland |
794d92 |
/lib/modules/%{KVERREL}%{?3:+%{3}}/dtb \
|
|
Justin Vreeland |
794d92 |
%ghost /%{image_install_path}/dtb-%{KVERREL}%{?3:+%{3}} \
|
|
Justin Vreeland |
794d92 |
%endif\
|
|
Justin Vreeland |
794d92 |
%attr(600,root,root) /lib/modules/%{KVERREL}%{?3:+%{3}}/System.map\
|
|
Justin Vreeland |
794d92 |
%ghost /boot/System.map-%{KVERREL}%{?3:+%{3}}\
|
|
Justin Vreeland |
794d92 |
/lib/modules/%{KVERREL}%{?3:+%{3}}/symvers.gz\
|
|
Justin Vreeland |
794d92 |
/lib/modules/%{KVERREL}%{?3:+%{3}}/config\
|
|
Justin Vreeland |
794d92 |
%ghost /boot/symvers-%{KVERREL}%{?3:+%{3}}.gz\
|
|
Justin Vreeland |
794d92 |
%ghost /boot/config-%{KVERREL}%{?3:+%{3}}\
|
|
Justin Vreeland |
794d92 |
%ghost /boot/initramfs-%{KVERREL}%{?3:+%{3}}.img\
|
|
Justin Vreeland |
794d92 |
%dir /lib/modules\
|
|
Justin Vreeland |
794d92 |
%dir /lib/modules/%{KVERREL}%{?3:+%{3}}\
|
|
Justin Vreeland |
794d92 |
%dir /lib/modules/%{KVERREL}%{?3:+%{3}}/kernel\
|
|
Justin Vreeland |
794d92 |
/lib/modules/%{KVERREL}%{?3:+%{3}}/build\
|
|
Justin Vreeland |
794d92 |
/lib/modules/%{KVERREL}%{?3:+%{3}}/source\
|
|
Justin Vreeland |
794d92 |
/lib/modules/%{KVERREL}%{?3:+%{3}}/updates\
|
|
Justin Vreeland |
794d92 |
/lib/modules/%{KVERREL}%{?3:+%{3}}/bls.conf\
|
|
Justin Vreeland |
794d92 |
/lib/modules/%{KVERREL}%{?3:+%{3}}/weak-updates\
|
|
Justin Vreeland |
1fc083 |
%{_datadir}/doc/kernel-keys/%{KVERREL}%{?3:+%{3}}\
|
|
Justin Vreeland |
794d92 |
%if %{1}\
|
|
Justin Vreeland |
794d92 |
/lib/modules/%{KVERREL}%{?3:+%{3}}/vdso\
|
|
Justin Vreeland |
794d92 |
%endif\
|
|
Justin Vreeland |
794d92 |
/lib/modules/%{KVERREL}%{?3:+%{3}}/modules.*\
|
|
Justin Vreeland |
794d92 |
%{expand:%%files -f kernel-%{?3:%{3}-}modules.list %{?3:%{3}-}modules}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%files %{?3:%{3}-}devel}\
|
|
Justin Vreeland |
794d92 |
%defverify(not mtime)\
|
|
Justin Vreeland |
794d92 |
/usr/src/kernels/%{KVERREL}%{?3:+%{3}}\
|
|
Justin Vreeland |
1fc083 |
%{expand:%%files -f kernel-%{?3:%{3}-}modules-extra.list %{?3:%{3}-}modules-extra}\
|
|
Justin Vreeland |
794d92 |
%config(noreplace) /etc/modprobe.d/*-blacklist.conf\
|
|
Justin Vreeland |
1fc083 |
%{expand:%%files -f kernel-%{?3:%{3}-}modules-internal.list %{?3:%{3}-}modules-internal}\
|
|
Justin Vreeland |
794d92 |
%if %{with_debuginfo}\
|
|
Justin Vreeland |
794d92 |
%ifnarch noarch\
|
|
Justin Vreeland |
794d92 |
%{expand:%%files -f debuginfo%{?3}.list %{?3:%{3}-}debuginfo}\
|
|
Justin Vreeland |
794d92 |
%endif\
|
|
Justin Vreeland |
794d92 |
%endif\
|
|
Justin Vreeland |
794d92 |
%if %{?3:1} %{!?3:0}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%files %{3}}\
|
|
Justin Vreeland |
794d92 |
%endif\
|
|
Justin Vreeland |
794d92 |
%endif\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%kernel_variant_files %{_use_vdso} %{with_up}
|
|
Justin Vreeland |
794d92 |
%kernel_variant_files %{_use_vdso} %{with_debug} debug
|
|
Justin Vreeland |
794d92 |
%kernel_variant_files %{use_vdso} %{with_pae} lpae
|
|
Justin Vreeland |
794d92 |
%kernel_variant_files %{_use_vdso} %{with_zfcpdump} zfcpdump 1
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%define kernel_variant_ipaclones(k:) \
|
|
Justin Vreeland |
794d92 |
%if %{1}\
|
|
Justin Vreeland |
794d92 |
%if %{with_ipaclones}\
|
|
Justin Vreeland |
794d92 |
%{expand:%%files %{?2:%{2}-}ipaclones-internal}\
|
|
Justin Vreeland |
794d92 |
%defattr(-,root,root)\
|
|
Justin Vreeland |
794d92 |
%defverify(not mtime)\
|
|
Justin Vreeland |
794d92 |
/usr/src/kernels/%{KVERREL}%{?2:+%{2}}-ipaclones\
|
|
Justin Vreeland |
794d92 |
%endif\
|
|
Justin Vreeland |
794d92 |
%endif\
|
|
Justin Vreeland |
794d92 |
%{nil}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
%kernel_variant_ipaclones %{with_up}
|
|
Justin Vreeland |
794d92 |
|
|
Justin Vreeland |
794d92 |
# plz don't put in a version string unless you're going to tag
|
|
Justin Vreeland |
794d92 |
# and build.
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
#
|
|
Justin Vreeland |
794d92 |
%changelog
|
|
Justin Vreeland |
d5a02a |
* Tue May 10 2022 Justin Vreeland <jvreeland@centosproject.org> - 5.14.0-76.hs1.el8
|
|
Justin Vreeland |
61e3fc |
- redhat/: cherry pick build artifacts needed for CentOS 8 ark-style builds (Justin Vreeland)
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
d5a02a |
* Wed Mar 30 2022 Neal Gompa <ngompa@centosproject.org> [5.14.0-76.hs1.el9]
|
|
Justin Vreeland |
1fc083 |
- redhat/configs: Disable fbdev drivers and use simpledrm instead (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
d5a02a |
- drm/simpledrm: Add "panel orientation" property on non-upright mounted LCD panels (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
d5a02a |
- drm/simpledrm: Request memory region in driver (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
d5a02a |
- drm/simpledrm: Add [AX]RGB2101010 formats (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
1fc083 |
- drm: simpledrm: fix wrong unit with pixel clock (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
d5a02a |
- drm/simpledrm: Support virtual screen sizes (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
d5a02a |
- drm/fb-helper: Allocate shadow buffer of surface height (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
1fc083 |
- drm: fb_helper: improve CONFIG_FB dependency (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
1fc083 |
- drm: fb_helper: fix CONFIG_FB dependency (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
d5a02a |
- efi: sysfb_efi: fix build when EFI is not set (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
d5a02a |
- drivers/firmware: Don't mark as busy the simple-framebuffer IO resource (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
d5a02a |
- drivers/firmware: Add missing platform_device_put() in sysfb_create_simplefb (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
1fc083 |
- drivers/firmware: fix SYSFB depends to prevent build failures (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
1fc083 |
- drivers/firmware: consolidate EFI framebuffer setup for all arches (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
1fc083 |
- drivers/firmware: move x86 Generic System Framebuffers support (Javier Martinez Canillas) [1986223]
|
|
Justin Vreeland |
d5a02a |
- redhat: Fix "make dist-release-finish" to use the correct NVR variables (Neal Gompa) [2053836]
|
|
Justin Vreeland |
1fc083 |
- redhat/configs: Enable the Btrfs file system (Neal Gompa)
|
|
Justin Vreeland |
1fc083 |
|
|
Justin Vreeland |
d5a02a |
* Wed Mar 30 2022 Patrick Talbert <ptalbert@redhat.com> [5.14.0-76.el9]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Fix tracking of current number of VQs (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Fix is_index_valid() to refer to features (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Protect vdpa reset with cf_mutex (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Avoid taking cf_mutex lock on get status (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/vdpa_sim_net: Report max device capabilities (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Use BIT_ULL for bit operations (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/vdpa_sim: Configure max supported virtqueues (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Report max device capabilities (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Support reporting max device capabilities (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Restore cur_num_vqs in case of failure in change_num_qps() (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Add support for returning device configuration information (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Support configuring max data virtqueue (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Fix config_attr_mask assignment (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Allow to configure max data virtqueues (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Read device configuration only if FEATURES_OK (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Sync calls set/get config/status with cf_mutex (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Distribute RX virtqueues in RQT object (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Provide interface to read driver features (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: clean up get_config_size ret value handling (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Fix wrong configuration of virtio_version_1_0 (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Mark vdpa_config_ops.get_vq_notification as optional (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Avoid duplicate call to vp_vdpa get_status (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- net/mlx5_vdpa: Offer VIRTIO_NET_F_MTU when setting MTU (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: add driver_override support (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- docs: document sysfs ABI for vDPA bus (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- ifcvf/vDPA: fix misuse virtio-net device config size for blk dev (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Consider device id larger than 31 (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- virtio: always enter drivers/virtio/ (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: check that offsets are within bounds (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa_sim: avoid putting an uninitialized iova_domain (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vhost-vdpa: clean irqs before reseting vdpa device (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Forward only packets with allowed MAC address (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Support configuration of MAC (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Fix clearing of VIRTIO_NET_F_MAC feature bit (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa_sim_net: Enable user to set mac address and mtu (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Enable user to set mac and mtu of vdpa device (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Use kernel coding style for structure comments (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Introduce query of device config layout (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Introduce and use vdpa device get, set config helpers (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Propagate link status from device to vdpa driver (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Rename control VQ workqueue to vdpa wq (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Remove mtu field from vdpa net device (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: add new attribute VDPA_ATTR_DEV_MIN_VQ_SIZE (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- virtio_vdpa: setup correct vq size with callbacks get_vq_num_{max,min} (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: min vq num of vdpa device cannot be greater than max vq num (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: add new callback get_vq_num_min in vdpa_config_ops (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vp_vdpa: add vq irq offloading support (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: fix typo (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vhost-vdpa: Fix the wrong input in config_cb (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vhost_vdpa: unset vq irq before freeing irq (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: potential uninitialized return in vhost_vdpa_va_map() (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Avoid executing set_vq_ready() if device is reset (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Clear ready indication for control VQ (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Support transferring virtual addressing during DMA mapping (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: factor out vhost_vdpa_pa_map() and vhost_vdpa_pa_unmap() (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Add an opaque pointer for vdpa_config_ops.dma_map() (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vhost-iotlb: Add an opaque pointer for vhost IOTLB (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vhost-vdpa: Handle the failure of vdpa_reset() (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Add reset callback in vdpa_config_ops (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Fix some coding style issues (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa: Make use of PFN_PHYS/PFN_UP/PFN_DOWN helper macro (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Add multiqueue support (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Add support for control VQ and MAC setting (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Ensure valid indices are provided (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Decouple virtqueue callback from struct mlx5_vdpa_virtqueue (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: function prototype modifications in preparation to control VQ (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vdpa/mlx5: Remove redundant header file inclusion (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vDPA/ifcvf: enable multiqueue and control vq (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vDPA/ifcvf: detect and use the onboard number of queues directly (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vDPA/ifcvf: implement management netlink framework for ifcvf (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- vDPA/ifcvf: introduce get_dev_type() which returns virtio dev id (Cindy Lu) [2055451]
|
|
Justin Vreeland |
d5a02a |
- x86/hyperv: Output host build info as normal Windows version number (Vitaly Kuznetsov) [2060708]
|
|
Justin Vreeland |
d5a02a |
- lib/irq_poll: Declare IRQ_POLL softirq vector as ksoftirqd-parking safe (Desnes A. Nunes do Rosario) [2059555]
|
|
Justin Vreeland |
d5a02a |
- tick/rcu: Stop allowing RCU_SOFTIRQ in idle (Desnes A. Nunes do Rosario) [2059555]
|
|
Justin Vreeland |
d5a02a |
- tick/rcu: Remove obsolete rcu_needs_cpu() parameters (Desnes A. Nunes do Rosario) [2059555]
|
|
Justin Vreeland |
d5a02a |
- tick: Detect and fix jiffies update stall (Desnes A. Nunes do Rosario) [2059555]
|
|
Justin Vreeland |
d5a02a |
- rcu: Move rcu_needs_cpu() to tree.c (Desnes A. Nunes do Rosario) [2059555]
|
|
Justin Vreeland |
d5a02a |
- rcu: Remove the RCU_FAST_NO_HZ Kconfig option (Desnes A. Nunes do Rosario) [2059555]
|
|
Justin Vreeland |
d5a02a |
- torture: Remove RCU_FAST_NO_HZ from rcu scenarios (Desnes A. Nunes do Rosario) [2059555]
|
|
Justin Vreeland |
d5a02a |
- torture: Remove RCU_FAST_NO_HZ from rcuscale and refscale scenarios (Desnes A. Nunes do Rosario) [2059555]
|
|
Justin Vreeland |
d5a02a |
- copy_process(): Move fd_install() out of sighand->siglock critical section (Waiman Long) [2051855]
|
|
Justin Vreeland |
d5a02a |
- redhat/configs: enable CONFIG_INTEL_VSEC for x86 (David Arcari) [2058806]
|
|
Justin Vreeland |
d5a02a |
- platform/x86/intel: Move intel_pmt from MFD to Auxiliary Bus (David Arcari) [2058806]
|
|
Justin Vreeland |
d5a02a |
- platform/x86: intel_pmt_telemetry: Ignore zero sized entries (David Arcari) [2058806]
|
|
Justin Vreeland |
d5a02a |
- platform/x86/intel: Move Intel PMT drivers to new subfolder (David Arcari) [2058806]
|
|
Justin Vreeland |
d5a02a |
- driver core: auxiliary bus: Add driver data helpers (David Arcari) [2058806]
|
|
Justin Vreeland |
d5a02a |
- PCI: Add #defines for accessing PCIe DVSEC fields (David Arcari) [2058806]
|
|
Justin Vreeland |
d5a02a |
- tools headers UAPI: Sync powerpc syscall table file changed by new futex_waitv syscall (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- tools headers UAPI: Sync s390 syscall table file changed by new futex_waitv syscall (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Wireup futex_waitv syscall (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- tools headers UAPI: Sync MIPS syscall table file changed by new futex_waitv syscall (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- parisc: Wire up futex_waitv (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- s390: wire up sys_futex_waitv system call (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- MIPS: syscalls: Wire up futex_waitv syscall (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- tools headers UAPI: Sync files changed by new futex_waitv syscall (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex2: Documentation: Document sys_futex_waitv() uAPI (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- selftests: futex: Test sys_futex_waitv() wouldblock (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- selftests: futex: Test sys_futex_waitv() timeout (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- selftests: futex: Add sys_futex_waitv() test (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex,arm: Wire up sys_futex_waitv() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex,x86: Wire up sys_futex_waitv() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Implement sys_futex_waitv() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Simplify double_lock_hb() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Split out wait/wake (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Split out requeue (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Rename mark_wake_futex() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Rename: match_futex() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Rename: hb_waiter_{inc,dec,pending}() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Split out PI futex (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Rename: {get,cmpxchg}_futex_value_locked() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Rename hash_futex() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Rename __unqueue_futex() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Rename: queue_{,un}lock() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Rename futex_wait_queue_me() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Rename {,__}{,un}queue_me() (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Split out syscalls (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- futex: Move to kernel/futex/ (Joel Savitz) [2038794]
|
|
Justin Vreeland |
d5a02a |
- cifs: fix double free race when mount fails in cifs_get_root() (Ronnie Sahlberg) [1979175]
|
|
Justin Vreeland |
d5a02a |
|
|
Justin Vreeland |
d5a02a |
* Fri Mar 25 2022 Patrick Talbert <ptalbert@redhat.com> [5.14.0-75.el9]
|
|
Justin Vreeland |
d5a02a |
- ipv6: fix skb drops in igmp6_event_query() and igmp6_event_report() (Hangbin Liu) [2059308] {CVE-2022-0742}
|
|
Justin Vreeland |
d5a02a |
- redhat/configs: aarch64: Fix PAC/BTI config settings (Mark Salter) [2063215]
|
|
Justin Vreeland |
d5a02a |
- RHEL9.0: arch_hw Update CONFIG_MOUSE_VSXXXAA=m (Tony Camuso) [2062909]
|
|
Justin Vreeland |
d5a02a |
- redhat/configs: Disable KVM on POWER (Laurent Vivier) [2052898]
|
|
Justin Vreeland |
d5a02a |
- drm/ast: Create threshold values for AST2600 (Jocelyn Falempe) [2062560]
|
|
Justin Vreeland |
d5a02a |
- mm: gup: make fault_in_safe_writeable() use fixup_user_fault() (Andreas Gruenbacher) [2062797]
|
|
Justin Vreeland |
d5a02a |
- drm/vmwgfx: Fix stale file descriptors on failed usercopy (David Airlie) [2047613] {CVE-2022-22942}
|
|
Justin Vreeland |
d5a02a |
- netfilter: nf_queue: handle socket prefetch (Florian Westphal) [2060092]
|
|
Justin Vreeland |
d5a02a |
- netfilter: nf_queue: fix possible use-after-free (Florian Westphal) [2060092]
|
|
Justin Vreeland |
d5a02a |
- selftests: netfilter: add nfqueue TCP_NEW_SYN_RECV socket race test (Florian Westphal) [2060092]
|
|
Justin Vreeland |
d5a02a |
- netfilter: nf_queue: don't assume sk is full socket (Florian Westphal) [2060092]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Fix flushing !WQ_MEM_RECLAIM events warning (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Fix memory leaks (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Fix reporting of actual data transfer size (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Fix cmnd getting marked as in use forever (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Fix hibernation issue (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Fix printing of pending I/O count (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Fix deadlock while canceling the fw event (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Fixes around reply request queues (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Enhanced Task Management Support Reply handling (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Use TM response codes from MPI3 headers (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Increase internal cmnds timeout to 60s (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Do access status validation before adding devices (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Update MPI3 headers - part2 (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Update MPI3 headers - part1 (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Don't reset IOC if cmnds flush with reset status (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Replace spin_lock() with spin_lock_irqsave() (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpi3mr: Add debug APIs based on logging_level bits (Tomas Henzl) [2056626]
|
|
Justin Vreeland |
d5a02a |
- x86/kvm/fpu: Remove kvm_vcpu_arch.guest_supported_xcr0 (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- x86/kvm/fpu: Limit guest user_xfeatures to supported bits of XCR0 (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- KVM: x86: Move CPUID.(EAX=0x12,ECX=1) mangling to __kvm_update_cpuid_runtime() (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- KVM: x86: Do runtime CPUID update before updating vcpu->arch.cpuid_entries (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- x86/fpu: Fix inline prefix warnings (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- kvm: x86: Emulate IA32_XFD_ERR for guest (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- x86/fpu: Prepare xfd_err in struct fpu_guest (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- kvm: x86: Add emulation for IA32_XFD (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- x86/fpu: Provide fpu_update_guest_xfd() for IA32_XFD emulation (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- kvm: x86: Enable dynamic xfeatures at KVM_SET_CPUID2 (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- x86/fpu: Provide fpu_enable_guest_xfd_features() for KVM (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- x86/fpu: Add guest support to xfd_enable_feature() (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- x86/fpu: Prepare guest FPU for dynamically enabled FPU features (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- x86/fpu: Extend fpu_xstate_prctl() with guest permissions (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- cpuid: kvm_find_kvm_cpuid_features() should be declared 'static' (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- KVM: x86: Make sure KVM_CPUID_FEATURES really are KVM_CPUID_FEATURES (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- KVM: x86: Add helper to consolidate core logic of SET_CPUID{2} flows (Leonardo Bras) [2043545]
|
|
Justin Vreeland |
d5a02a |
- redhat/configs: Disable watchdog components (Prarit Bhargava) [2060117]
|
|
Justin Vreeland |
d5a02a |
- sched: Fix yet more sched_fork() races (Phil Auld) [2062836]
|
|
Justin Vreeland |
d5a02a |
- sched/fair: Fix fault in reweight_entity (Phil Auld) [2062836]
|
|
Justin Vreeland |
d5a02a |
- x86/cpu: Add Xeon Icelake-D to list of CPUs that support PPIN (David Arcari) [2043225]
|
|
Justin Vreeland |
d5a02a |
- powerpc/pseries/ddw: Revert "Extend upper limit for huge DMA window for persistent memory" (Steve Best) [2056057]
|
|
Justin Vreeland |
d5a02a |
- drivers/char: permit access to the RTAS user buffer under lockdown (Desnes A. Nunes do Rosario) [2046472]
|
|
Justin Vreeland |
d5a02a |
|
|
Justin Vreeland |
d5a02a |
* Tue Mar 22 2022 Patrick Talbert <ptalbert@redhat.com> [5.14.0-74.el9]
|
|
Justin Vreeland |
d5a02a |
- redhat: rpminspect: disable 'patches' check for known empty patch files (Patrick Talbert)
|
|
Justin Vreeland |
d5a02a |
- KVM: x86/mmu: Don't advance iterator after restart due to yielding (Nico Pache) [2055725]
|
|
Justin Vreeland |
d5a02a |
- ibmvnic: don't release napi in __ibmvnic_open() (Diego Domingos) [2055981]
|
|
Justin Vreeland |
d5a02a |
|
|
Justin Vreeland |
d5a02a |
* Sun Mar 20 2022 Patrick Talbert <ptalbert@redhat.com> [5.14.0-73.el9]
|
|
Justin Vreeland |
d5a02a |
- CI: Use 9.0-rt branch for rhel-9 realtime_check (Juri Lelli)
|
|
Justin Vreeland |
d5a02a |
- redhat: enable zstream release numbering for rhel 9.0 (Herton R. Krzesinski)
|
|
Justin Vreeland |
d5a02a |
- redhat: change kabi tarballs to use the package release (Herton R. Krzesinski)
|
|
Justin Vreeland |
d5a02a |
- redhat: generate distgit changelog in genspec.sh as well (Herton R. Krzesinski)
|
|
Justin Vreeland |
d5a02a |
- redhat: make genspec prefer metadata from git notes (Herton R. Krzesinski)
|
|
Justin Vreeland |
d5a02a |
- redhat: use tags from git notes for zstream to generate changelog (Herton R. Krzesinski)
|
|
Justin Vreeland |
d5a02a |
- CI: Add disttag setting (Veronika Kabatova)
|
|
Justin Vreeland |
d5a02a |
- CI: Drop c9s config (Veronika Kabatova)
|
|
Justin Vreeland |
d5a02a |
- virtio-net: fix pages leaking when building skb in big mode (Laurent Vivier) [2042559]
|
|
Justin Vreeland |
d5a02a |
- lib/iov_iter: initialize "flags" in new pipe_buffer (Carlos Maiolino) [2060869] {CVE-2022-0847}
|
|
Justin Vreeland |
d5a02a |
- redhat/configs: Make CRYPTO_ECDH algos built-in (Simo Sorce) [2062199]
|
|
Justin Vreeland |
d5a02a |
- crypto: api - Move cryptomgr soft dependency into algapi (Vladis Dronov) [2062199]
|
|
Justin Vreeland |
d5a02a |
- crypto: api - Fix boot-up crash when crypto manager is disabled (Vladis Dronov) [2062199]
|
|
Justin Vreeland |
d5a02a |
- crypto: api - Do not create test larvals if manager is disabled (Vladis Dronov) [2062199]
|
|
Justin Vreeland |
d5a02a |
- crypto: api - Export crypto_boot_test_finished (Vladis Dronov) [2062199]
|
|
Justin Vreeland |
d5a02a |
- crypto: api - Fix built-in testing dependency failures (Vladis Dronov) [2062199]
|
|
Justin Vreeland |
d5a02a |
- redhat/configs: Add CRYPTO_AES_ARM64 config explicitly (Vladis Dronov) [2062199]
|
|
Justin Vreeland |
d5a02a |
- crypto: arm64/aes-ce - stop using SIMD helper for skciphers (Vladis Dronov) [2062199]
|
|
Justin Vreeland |
d5a02a |
- crypto: arm64/aes-neonbs - stop using SIMD helper for skciphers (Vladis Dronov) [2062199]
|
|
Justin Vreeland |
d5a02a |
- redhat: change default dist suffix for RHEL 9.0 (Herton R. Krzesinski)
|
|
Justin Vreeland |
d5a02a |
- selftests: kvm: Check whether SIDA memop fails for normal guests (Thomas Huth) [2050813]
|
|
Justin Vreeland |
d5a02a |
- KVM: s390: Return error on SIDA memop on normal guest (Thomas Huth) [2050813]
|
|
Justin Vreeland |
d5a02a |
- block: kabi: reserve space for block layer public structure (Ming Lei) [2057238]
|
|
Justin Vreeland |
d5a02a |
- block: kabi: reserve space for blk-mq related structure (Ming Lei) [2057238]
|
|
Justin Vreeland |
d5a02a |
- block: kabi: reserve space for bsg related structure (Ming Lei) [2057238]
|
|
Justin Vreeland |
d5a02a |
- block: kabi: reserve space for integrity related structure (Ming Lei) [2057238]
|
|
Justin Vreeland |
d5a02a |
- scsi: lpfc: Fix pt2pt NVMe PRLI reject LOGO loop (Dick Kennedy) [2054866]
|
|
Justin Vreeland |
d5a02a |
- x86/MCE/AMD, EDAC/mce_amd: Support non-uniform MCA bank type enumeration (Aristeu Rozanski) [1898165 2047430 2047446]
|
|
Justin Vreeland |
d5a02a |
- x86/MCE/AMD, EDAC/mce_amd: Add new SMCA bank types (Aristeu Rozanski) [1898165 2047430 2047446]
|
|
Justin Vreeland |
d5a02a |
- EDAC/amd64: Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh (Aristeu Rozanski) [1898165 2047430 2047446]
|
|
Justin Vreeland |
d5a02a |
- EDAC: Add RDDR5 and LRDDR5 memory types (Aristeu Rozanski) [1898165 2047430 2047446]
|
|
Justin Vreeland |
d5a02a |
- drm/amdgpu: Register MCE notifier for Aldebaran RAS (Aristeu Rozanski) [1898165 2047430 2047446]
|
|
Justin Vreeland |
d5a02a |
- x86/MCE/AMD: Export smca_get_bank_type symbol (Aristeu Rozanski) [1898165 2047430 2047446]
|
|
Justin Vreeland |
d5a02a |
- PCI/ACPI: Fix acpi_pci_osc_control_set() kernel-doc comment (Mark Langsdorf) [2049635]
|
|
Justin Vreeland |
d5a02a |
- PCI/ACPI: Check for _OSC support in acpi_pci_osc_control_set() (Mark Langsdorf) [2049635]
|
|
Justin Vreeland |
d5a02a |
- PCI/ACPI: Move _OSC query checks to separate function (Mark Langsdorf) [2049635]
|
|
Justin Vreeland |
d5a02a |
- PCI/ACPI: Move supported and control calculations to separate functions (Mark Langsdorf) [2049635]
|
|
Justin Vreeland |
d5a02a |
- PCI/ACPI: Remove OSC_PCI_SUPPORT_MASKS and OSC_PCI_CONTROL_MASKS (Mark Langsdorf) [2049635]
|
|
Justin Vreeland |
d5a02a |
- nvmet-tcp: fix missing unmainted messages (Chris Leech) [2054441]
|
|
Justin Vreeland |
d5a02a |
- dm stats: fix too short end duration_ns when using precise_timestamps (Benjamin Marzinski) [2051798]
|
|
Justin Vreeland |
d5a02a |
- dm: fix double accounting of flush with data (Benjamin Marzinski) [2051798]
|
|
Justin Vreeland |
d5a02a |
- dm: interlock pending dm_io and dm_wait_for_bios_completion (Benjamin Marzinski) [2051798]
|
|
Justin Vreeland |
d5a02a |
- dm: properly fix redundant bio-based IO accounting (Benjamin Marzinski) [2051798]
|
|
Justin Vreeland |
d5a02a |
- dm: revert partial fix for redundant bio-based IO accounting (Benjamin Marzinski) [2051798]
|
|
Justin Vreeland |
d5a02a |
- block: add bio_start_io_acct_time() to control start_time (Benjamin Marzinski) [2051798]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpt3sas: Fix incorrect system timestamp (Tomas Henzl) [2049631]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpt3sas: Fix system going into read-only mode (Tomas Henzl) [2049631]
|
|
Justin Vreeland |
d5a02a |
- scsi: mpt3sas: Fix kernel panic during drive powercycle test (Tomas Henzl) [2049631]
|
|
Justin Vreeland |
d5a02a |
- redhat/configs: enable mellanox platform drivers to support LED, fan & watchdog devices (Ivan Vecera) [2057491]
|
|
Justin Vreeland |
d5a02a |
- x86/cpu: Drop spurious underscore from RAPTOR_LAKE #define (David Arcari) [2040022]
|
|
Justin Vreeland |
d5a02a |
- x86/cpu: Add Raptor Lake to Intel family (David Arcari) [2040022]
|
|
Justin Vreeland |
d5a02a |
- powerpc/64: Move paca allocation later in boot (Desnes A. Nunes do Rosario) [2055566]
|
|
Justin Vreeland |
d5a02a |
- powerpc: Set crashkernel offset to mid of RMA region (Desnes A. Nunes do Rosario) [2055566]
|
|
Justin Vreeland |
d5a02a |
- selftests: kvm: Check whether SIDA memop fails for normal guests (Thomas Huth) [2060814]
|
|
Justin Vreeland |
d5a02a |
- KVM: s390: Return error on SIDA memop on normal guest (Thomas Huth) [2060814]
|
|
Justin Vreeland |
d5a02a |
- igb: refactor XDP registration (Corinna Vinschen) [2054379]
|
|
Justin Vreeland |
d5a02a |
- igc: avoid kernel warning when changing RX ring parameters (Corinna Vinschen) [2054379]
|
|
Justin Vreeland |
d5a02a |
- redhat/configs: Enable CONFIG_ACER_WIRELESS (Peter Georg) [2025985]
|
|
Justin Vreeland |
d5a02a |
|
|
Justin Vreeland |
d5a02a |
* Tue Mar 15 2022 Patrick Talbert <ptalbert@redhat.com> [5.14.0-72.el9]
|
|
Justin Vreeland |
d5a02a |
- spec: Fix separate tools build (Jiri Olsa) [2054579]
|
|
Justin Vreeland |
d5a02a |
- redhat: use centos x509.genkey file if building under centos (Herton R. Krzesinski) [2029952]
|
|
Justin Vreeland |
d5a02a |
|
|
Justin Vreeland |
d5a02a |
* Tue Mar 08 2022 Patrick Talbert <ptalbert@redhat.com> [5.14.0-71.el9]
|
|
Justin Vreeland |
d5a02a |
- CI: Build coverage RPMs on c9s environment (Veronika Kabatova)
|
|
Justin Vreeland |
d5a02a |
- md: use default_groups in kobj_type (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: Move alloc/free acct bioset in to personality (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: fix spelling of "its" (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: raid456 add nowait support (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: raid10 add nowait support (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: raid1 add nowait support (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: add support for REQ_NOWAIT (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: drop queue limitation for RAID1 and RAID10 (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md/raid5: play nice with PREEMPT_RT (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md/raid1: fix missing bitmap update w/o WriteMostly devices (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: fix double free of mddev->private in autorun_array() (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: fix update super 1.0 on rdev size change (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- raid5-ppl: use swap() to make code cleaner (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md/bitmap: don't set max_write_behind if there is no write mostly device (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: update superblock after changing rdev flags in state_store (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: remove unused argument from md_new_event (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md/raid5: call roundup_pow_of_two in raid5_run (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md/raid1: use rdev in raid1_write_request directly (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md/raid1: only allocate write behind bio fof WriteMostly device (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: properly unwind when failing to add the kobject in md_alloc (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: extend disks_mutex coverage (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: add the bitmap group to the default groups for the md kobject (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- md: add error handling support for add_disk() (Nigel Croxon) [2042797]
|
|
Justin Vreeland |
d5a02a |
- redhat: Bump RHEL_MINOR for 9.1 (Patrick Talbert)
|
|
Justin Vreeland |
d5a02a |
|
|
Justin Vreeland |
d5a02a |
* Tue Mar 08 2022 Herton R. Krzesinski <herton@redhat.com> [5.14.0-70.1.1.el9_0]
|
|
Justin Vreeland |
d5a02a |
- Revert 8dffe2b6 "Merge: kabi: add lib ACKed symbols" (Čestmír Kalina) [2059972]
|
|
Justin Vreeland |
d5a02a |
- include/linux/kernel.h: fix function name for mark_hardware_unmaintained() if !CONFIG_RHEL_DIFFERENCES (Ewan D. Milne) [2059687]
|
|
Justin Vreeland |
d5a02a |
- scsi: sd: Mark ZBC host-managed SCSI disks as unmaintained (Ewan D. Milne) [2059687]
|
|
Justin Vreeland |
d5a02a |
- spec: make linux-firmware weak(er) dependency (Jan Stancek) [2031113]
|
|
Justin Vreeland |
d5a02a |
- redhat/configs: Enable CONFIG_INTEL_PCH_THERMAL for x86 (David Arcari) [2058186]
|
|
Justin Vreeland |
d5a02a |
- redhat/configs: Disable CONFIG_SURFACE_PLATFORMS (David Arcari) [2056609]
|
|
Justin Vreeland |
d5a02a |
|
|
Justin Vreeland |
d5a02a |
* Thu Feb 24 2022 Herton R. Krzesinski <herton@redhat.com> [5.14.0-70.el9]
|
|
Justin Vreeland |
d5a02a |
- stmmac/intel: mark driver as tech preview (Mark Salter) [2045594]
|
|
Justin Vreeland |
d5a02a |
- net: stmmac: Add GFP_DMA32 for rx buffers if no 64 capability (Mark Salter) [2045594]
|
|
Justin Vreeland |
d5a02a |
- mm: fix invalid page pointer returned with FOLL_PIN gups (Peter Xu) [2037300]
|
|
Justin Vreeland |
d5a02a |
- tipc: improve size validations for received domain records (Xin Long) [2048972] {CVE-2022-0435}
|
|
Justin Vreeland |
d5a02a |
- cgroup-v1: Require capabilities to set release_agent (Waiman Long) [2052168] {CVE-2022-0492}
|
|
Justin Vreeland |
d5a02a |
- bpf, arm64: Use emit_addr_mov_i64() for BPF_PSEUDO_FUNC (Yauheni Kaliuta) [2033596]
|
|
Justin Vreeland |
d5a02a |
- bpf: Stop caching subprog index in the bpf_pseudo_func insn (Yauheni Kaliuta) [2033596]
|
|
Justin Vreeland |
d5a02a |
- ucount: Make get_ucount a safe get_user replacement (Alexey Gladkov) [2049040] {CVE-2022-24122}
|
|
Justin Vreeland |
d5a02a |
- ucounts: Add get_ucounts_or_wrap for clarity (Alexey Gladkov) [2049040]
|
|
Justin Vreeland |
d5a02a |
- ucounts: Remove unnecessary test for NULL ucount in get_ucounts (Alexey Gladkov) [2049040]
|
|
Justin Vreeland |
d5a02a |
- ucounts: Use atomic_long_sub_return for clarity (Alexey Gladkov) [2049040]
|
|
Justin Vreeland |
d5a02a |
- ucounts: Fix rlimit max values check (Alexey Gladkov) [2049040]
|
|
Justin Vreeland |
d5a02a |
|
|
Justin Vreeland |
d5a02a |
* Wed Feb 23 2022 Herton R. Krzesinski <herton@redhat.com> [5.14.0-69.el9]
|
|
Justin Vreeland |
d5a02a |
- config: mt76: set CONFIG_MT7921S to not set, like in ark (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- config: rtw89: enable driver and device RTL8852AE (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: 8852a: correct bit definition of dfs_en (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: coex: Update COEX to 5.5.8 (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: coex: Cancel PS leaving while C2H comes (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: coex: Update BT counters while receiving report (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: coex: Define LPS state for BTC using (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: coex: Add MAC API to get BT polluted counter (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: coex: Not to send H2C when WL not ready and count H2C (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: coex: correct C2H header length (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: don't kick off TX DMA if failed to write skb (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: remove cch_by_bw which is not used (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: fix sending wrong rtwsta->mac_id to firmware to fill address CAM (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: fix incorrect channel info during scan (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: update scan_mac_addr during scanning period (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: use inline function instead macro to set H2C and CAM (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: add const in the cast of le32_get_bits() (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: add AXIDMA and TX FIFO dump in mac_mem_dump (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: fix potentially access out of range of RF register array (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: remove unneeded variable (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: remove unnecessary conditional operators (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: update rtw89_regulatory map to R58-R31 (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: update tx power limit/limit_ru tables to R54 (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: update rtw89 regulation definition to R58-R31 (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw89: fill regd field of limit/limit_ru tables by enum (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: pcie: add killer devices to the driver (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: add support for BNJ HW (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: Read the correct addresses when getting the crf id (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: pcie: add jacket bit to device configuration parsing (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: add new ax1650 killer device (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: add new Qu-Hr device (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: add missing entries for Gf4 with So and SoF (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: remove unused iwlax210_2ax_cfg_so_hr_a0 structure (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: support 4-bits in MAC step value (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: mvm: Increase the scan timeout guard to 30 seconds (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- wilc1000: fix double free error in probe() (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- wilc1000: Fix spurious "FW not responding" error (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- wilc1000: Fix missing newline in error message (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- wilc1000: Fix copy-and-paste typo in wilc_set_mac_address (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: mvm: Use div_s64 instead of do_div in iwl_mvm_ftm_rtt_smoothing() (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- mt76: mt7921: fix a possible race enabling/disabling runtime-pm (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- ath11k: Fix unexpected return buffer manager error for QCA6390 (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- ath11k: Fix napi related hang (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: yoyo: fix issue with new DBGI_SRAM region read. (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: pcie: make sure prph_info is set when treating wakeup IRQ (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: mvm: fix AUX ROC removal (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: mvm: set protected flag only for NDP ranging (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: mvm: perform 6GHz passive scan after suspend (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: mvm: Fix calculation of frame length (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: mvm: test roc running status bits before removing the sta (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: don't pass actual WGDS revision number in table_revision (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: fix leaks/bad data after failed firmware load (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: fix debug TLV parsing (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: mvm: fix 32-bit build in FTM (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- iwlwifi: fix Bz NMI behaviour (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtlwifi: rtl8192cu: Fix WARNING when calling local_irq_restore() with interrupts enabled (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw88: 8822c: update rx settings to prevent potential hw deadlock (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- rtw88: Disable PCIe ASPM while doing NAPI poll on 8821CE (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- ath9k: Fix out-of-bound memcpy in ath9k_hif_usb_rx_stream (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- ath9k_htc: fix NULL pointer dereference at ath9k_htc_tx_get_packet() (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- ath9k_htc: fix NULL pointer dereference at ath9k_htc_rxep() (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- mac80211: fix FEC flag in radio tap header (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- mt76: mt7921: fix possible resume failure (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- mt76: mt7921: move mt76_connac_mcu_set_hif_suspend to bus-related files (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- mt76: mt7921: fix network buffer leak by txs missing (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
- mt76: mt7615: clear mcu error interrupt status on mt7663 (Íñigo Huguet) [2043454]
|
|
Justin Vreeland |
d5a02a |
|