Jesse Keating 7a3296
# We have to override the new %%install behavior because, well... the kernel is special.
Jesse Keating 7a3296
%global __spec_install_pre %{___build_pre}
Jesse Keating 7a3296
Jesse Keating 7a3296
Summary: The Linux kernel
Jesse Keating 7a3296
Jesse Keating 7a3296
# For a stable, released kernel, released_kernel should be 1. For rawhide
Jesse Keating 7a3296
# and/or a kernel built from an rc or git snapshot, released_kernel should
Jesse Keating 7a3296
# be 0.
0aeda4
%global released_kernel 1
Jesse Keating 7a3296
Josh Boyer c2a12c
# Sign modules on x86.  Make sure the config files match this setting if more
Josh Boyer c2a12c
# architectures are added.
Josh Boyer c2a12c
%ifarch %{ix86} x86_64
149275
%global signkernel 1
Josh Boyer c2a12c
%global signmodules 1
Kyle McMartin 892262
%global zipmodules 1
Josh Boyer c2a12c
%else
149275
%global signkernel 0
149275
%global signmodules 1
c5708d
%global zipmodules 1
Kyle McMartin 892262
%endif
Kyle McMartin 892262
Kyle McMartin 892262
%if %{zipmodules}
Kyle McMartin 892262
%global zipsed -e 's/\.ko$/\.ko.xz/'
Josh Boyer c2a12c
%endif
Josh Boyer c2a12c
c25d6c
# define buildid .local
Jesse Keating 7a3296
Roland McGrath 377da6
# baserelease defines which build revision of this kernel version we're
Roland McGrath 377da6
# building.  We used to call this fedora_build, but the magical name
Roland McGrath 377da6
# baserelease is matched by the rpmdev-bumpspec tool, which you should use.
Jesse Keating 7a3296
#
Roland McGrath 377da6
# We used to have some extra magic weirdness to bump this automatically,
Roland McGrath 377da6
# but now we don't.  Just use: rpmdev-bumpspec -c 'comment for changelog'
Roland McGrath 377da6
# When changing base_sublevel below or going from rc to a final kernel,
Roland McGrath 377da6
# reset this by hand to 1 (or to 0 and then use rpmdev-bumpspec).
Roland McGrath 377da6
# scripts/rebase.sh should be made to do that for you, actually.
Roland McGrath 377da6
#
Chuck Ebbert 05e763
# NOTE: baserelease must be > 0 or bad things will happen if you switch
Chuck Ebbert 05e763
#       to a released kernel (released version will be < rc version)
Chuck Ebbert c3126d
#
Chuck Ebbert 05e763
# For non-released -rc kernels, this will be appended after the rcX and
Chuck Ebbert 05e763
# gitX tags, so a 3 here would become part of release "0.rcX.gitX.3"
Chuck Ebbert 05e763
#
0b9b1d
%global baserelease 100
Roland McGrath 377da6
%global fedora_build %{baserelease}
Jesse Keating 7a3296
Jesse Keating 7a3296
# base_sublevel is the kernel version we're starting with and patching
Dave Jones 34ff8b
# on top of -- for example, 3.1-rc7-git1 starts with a 3.0 base,
Dave Jones 34ff8b
# which yields a base_sublevel of 0.
16fb23
%define base_sublevel 18
Jesse Keating 7a3296
Jesse Keating 7a3296
## If this is a released kernel ##
Jesse Keating 7a3296
%if 0%{?released_kernel}
Jesse Keating 7a3296
Jesse Keating 7a3296
# Do we have a -stable update to apply?
Jeremy Cline 5e48c7
%define stable_update 20
Jesse Keating 7a3296
# Set rpm version accordingly
Jesse Keating 7a3296
%if 0%{?stable_update}
Josh Boyer 740de5
%define stablerev %{stable_update}
Jesse Keating 7a3296
%define stable_base %{stable_update}
Jesse Keating 7a3296
%endif
d72933
%define rpmversion 4.%{base_sublevel}.%{stable_update}
Jesse Keating 7a3296
Jesse Keating 7a3296
## The not-released-kernel case ##
Jesse Keating 7a3296
%else
Jesse Keating 7a3296
# The next upstream release sublevel (base_sublevel+1)
85afd6
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
Jesse Keating 7a3296
# The rc snapshot level
0aeda4
%global rcrev 0
Jesse Keating 7a3296
# The git snapshot level
0aeda4
%define gitrev 0
Jesse Keating 7a3296
# Set rpm version accordingly
d72933
%define rpmversion 4.%{upstream_sublevel}.0
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
# Nb: The above rcrev and gitrev values automagically define Patch00 and Patch01 below.
Jesse Keating 7a3296
Jesse Keating 7a3296
# What parts do we want to build?  We must build at least one kernel.
Jesse Keating 7a3296
# These are the kernels that are built IF the architecture allows it.
Jesse Keating 7a3296
# All should default to 1 (enabled) and be flipped to 0 (disabled)
Jesse Keating 7a3296
# by later arch-specific checks.
Jesse Keating 7a3296
Jesse Keating 7a3296
# The following build options are enabled by default.
Jesse Keating 7a3296
# Use either --without <opt> in your rpmbuild command or force values
Jesse Keating 7a3296
# to 0 in here to disable them.
Jesse Keating 7a3296
#
Jesse Keating 7a3296
# standard kernel
Jesse Keating 7a3296
%define with_up        %{?_without_up:        0} %{?!_without_up:        1}
Kyle McMartin bc5f99
# kernel PAE (only valid for i686 (PAE) and ARM (lpae))
Jarod Wilson 5b0327
%define with_pae       %{?_without_pae:       0} %{?!_without_pae:       1}
Jesse Keating 7a3296
# kernel-debug
Jesse Keating 7a3296
%define with_debug     %{?_without_debug:     0} %{?!_without_debug:     1}
Jesse Keating 7a3296
# kernel-headers
Jesse Keating 7a3296
%define with_headers   %{?_without_headers:   0} %{?!_without_headers:   1}
f65f3f
%define with_cross_headers   %{?_without_cross_headers:   0} %{?!_without_cross_headers:   1}
Jesse Keating 7a3296
# kernel-debuginfo
Kyle McMartin 761d1c
%define with_debuginfo %{?_without_debuginfo: 0} %{?!_without_debuginfo: 1}
Jesse Keating 7a3296
# kernel-bootwrapper (for creating zImages from kernel + initrd)
Jesse Keating 7a3296
%define with_bootwrapper %{?_without_bootwrapper: 0} %{?!_without_bootwrapper: 1}
Jesse Keating 7a3296
# Want to build a the vsdo directories installed
Jesse Keating 7a3296
%define with_vdso_install %{?_without_vdso_install: 0} %{?!_without_vdso_install: 1}
Chuck Ebbert c6b36e
#
Jesse Keating 7a3296
# Additional options for user-friendly one-off kernel building:
Jesse Keating 7a3296
#
Jesse Keating 7a3296
# Only build the base kernel (--with baseonly):
Jesse Keating 7a3296
%define with_baseonly  %{?_with_baseonly:     1} %{?!_with_baseonly:     0}
Jarod Wilson 5b0327
# Only build the pae kernel (--with paeonly):
Jarod Wilson 5b0327
%define with_paeonly   %{?_with_paeonly:      1} %{?!_with_paeonly:      0}
Jesse Keating 7a3296
# Only build the debug kernel (--with dbgonly):
Jesse Keating 7a3296
%define with_dbgonly   %{?_with_dbgonly:      1} %{?!_with_dbgonly:      0}
Chuck Ebbert c6b36e
#
Jesse Keating 7a3296
# should we do C=1 builds with sparse
Dave Jones 561b24
%define with_sparse    %{?_with_sparse:       1} %{?!_with_sparse:       0}
Chuck Ebbert 11ee03
#
Kyle McMartin 43d64b
# Cross compile requested?
Kyle McMartin 43d64b
%define with_cross    %{?_with_cross:         1} %{?!_with_cross:        0}
Kyle McMartin 43d64b
#
Chuck Ebbert 11ee03
# build a release kernel on rawhide
Chuck Ebbert 11ee03
%define with_release   %{?_with_release:      1} %{?!_with_release:      0}
Jesse Keating 7a3296
f8e9b4
# verbose build, i.e. no silent rules and V=1
f8e9b4
%define with_verbose %{?_with_verbose:        1} %{?!_with_verbose:      0}
f8e9b4
Jesse Keating 7a3296
# Set debugbuildsenabled to 1 for production (build separate debug kernels)
Jesse Keating 7a3296
#  and 0 for rawhide (all kernels are debug kernels).
Jesse Keating 7a3296
# See also 'make debug' and 'make release'.
1bb902
%define debugbuildsenabled 1
Jesse Keating 7a3296
329873
# Kernel headers are being split out into a separate package
329873
%define with_headers 0
329873
%define with_cross_headers 0
329873
f8e9b4
%if %{with_verbose}
f8e9b4
%define make_opts V=1
f8e9b4
%else
f8e9b4
%define make_opts -s
f8e9b4
%endif
f8e9b4
Jesse Keating 7a3296
# Want to build a vanilla kernel build without any non-upstream patches?
Jesse Keating 7a3296
%define with_vanilla %{?_with_vanilla: 1} %{?!_with_vanilla: 0}
Jesse Keating 7a3296
Jesse Keating 7a3296
# pkg_release is what we'll fill in for the rpm Release: field
Jesse Keating 7a3296
%if 0%{?released_kernel}
Jesse Keating 7a3296
Chuck Ebbert e6236b
%define pkg_release %{fedora_build}%{?buildid}%{?dist}
Jesse Keating 7a3296
Jesse Keating 7a3296
%else
Jesse Keating 7a3296
Jesse Keating 7a3296
# non-released_kernel
Jesse Keating 7a3296
%if 0%{?rcrev}
Jesse Keating 7a3296
%define rctag .rc%rcrev
Jesse Keating 7a3296
%else
Jesse Keating 7a3296
%define rctag .rc0
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
%if 0%{?gitrev}
Jesse Keating 7a3296
%define gittag .git%gitrev
Jesse Keating 7a3296
%else
Jesse Keating 7a3296
%define gittag .git0
Jesse Keating 7a3296
%endif
Kyle McMartin 66ce81
%define pkg_release 0%{?rctag}%{?gittag}.%{fedora_build}%{?buildid}%{?dist}
Jesse Keating 7a3296
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
# The kernel tarball/base version
85afd6
%define kversion 4.%{base_sublevel}
Jesse Keating 7a3296
Jesse Keating 7a3296
%define make_target bzImage
3ceaf1
%define image_install_path boot
Jesse Keating 7a3296
Jesse Keating 7a3296
%define KVERREL %{version}-%{release}.%{_target_cpu}
Jesse Keating 7a3296
%define hdrarch %_target_cpu
Jesse Keating 7a3296
%define asmarch %_target_cpu
Jesse Keating 7a3296
Jesse Keating 7a3296
%if 0%{!?nopatches:1}
Jesse Keating 7a3296
%define nopatches 0
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
%if %{with_vanilla}
Jesse Keating 7a3296
%define nopatches 1
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
%if %{nopatches}
Jesse Keating 7a3296
%define with_bootwrapper 0
Jesse Keating 7a3296
%define variant -vanilla
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
%if !%{debugbuildsenabled}
Jesse Keating 7a3296
%define with_debug 0
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
%if !%{with_debuginfo}
Jesse Keating 7a3296
%define _enable_debug_packages 0
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
%define debuginfodir /usr/lib/debug
88fc0e
# Needed because we override almost everything involving build-ids
88fc0e
# and debuginfo generation. Currently we rely on the old alldebug setting.
88fc0e
%global _build_id_links alldebug
Jesse Keating 7a3296
c5708d
# kernel PAE is only built on ARMv7 in rawhide.
c5708d
# Fedora 27 and earlier still support PAE, so change this on rebases.
c5708d
# %ifnarch armv7hl
Kyle McMartin bc5f99
%ifnarch i686 armv7hl
Jesse Keating 7a3296
%define with_pae 0
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
# if requested, only build base kernel
Jesse Keating 7a3296
%if %{with_baseonly}
Jarod Wilson 5b0327
%define with_pae 0
Jarod Wilson 5b0327
%define with_debug 0
Jarod Wilson 5b0327
%endif
Jarod Wilson 5b0327
Jarod Wilson 5b0327
# if requested, only build pae kernel
Jarod Wilson 5b0327
%if %{with_paeonly}
Jarod Wilson 5b0327
%define with_up 0
Jesse Keating 7a3296
%define with_debug 0
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
# if requested, only build debug kernel
Jesse Keating 7a3296
%if %{with_dbgonly}
Jesse Keating 7a3296
%if %{debugbuildsenabled}
Jesse Keating 7a3296
%define with_up 0
Jarod Wilson 5b0327
%define with_pae 0
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
%define with_pae 0
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
%define all_x86 i386 i686
Jesse Keating 7a3296
Jesse Keating 7a3296
%if %{with_vdso_install}
df3d8e
%define use_vdso 1
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
# Overrides for generic default options
Jesse Keating 7a3296
Jesse Keating 7a3296
# don't do debug builds on anything but i686 and x86_64
Jesse Keating 7a3296
%ifnarch i686 x86_64
Jesse Keating 7a3296
%define with_debug 0
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
# don't build noarch kernels or headers (duh)
Jesse Keating 7a3296
%ifarch noarch
Jesse Keating 7a3296
%define with_up 0
Jesse Keating 7a3296
%define with_headers 0
f65f3f
%define with_cross_headers 0
Jesse Keating 7a3296
%define all_arch_configs kernel-%{version}-*.config
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
# bootwrapper is only on ppc
a3f68e
# sparse blows up on ppc
9a6acd
%ifnarch %{power64}
Jesse Keating 7a3296
%define with_bootwrapper 0
Jesse Keating 7a3296
%define with_sparse 0
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
# Per-arch tweaks
Jesse Keating 7a3296
Jesse Keating 7a3296
%ifarch %{all_x86}
Jesse Keating 7a3296
%define asmarch x86
Jesse Keating 7a3296
%define hdrarch i386
Kyle McMartin bc5f99
%define pae PAE
Jesse Keating 7a3296
%define all_arch_configs kernel-%{version}-i?86*.config
Jesse Keating 7a3296
%define kernel_image arch/x86/boot/bzImage
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
%ifarch x86_64
Jesse Keating 7a3296
%define asmarch x86
Jesse Keating 7a3296
%define all_arch_configs kernel-%{version}-x86_64*.config
Jesse Keating 7a3296
%define kernel_image arch/x86/boot/bzImage
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
a3f68e
%ifarch %{power64}
Jesse Keating 7a3296
%define asmarch powerpc
Jesse Keating 7a3296
%define hdrarch powerpc
Jesse Keating 7a3296
%define make_target vmlinux
Jesse Keating 7a3296
%define kernel_image vmlinux
Jesse Keating 7a3296
%define kernel_image_elf 1
7baeeb
%ifarch ppc64
a3f68e
%define all_arch_configs kernel-%{version}-ppc64*.config
Jesse Keating 7a3296
%endif
Josh Boyer 5a7728
%ifarch ppc64le
c9229e
%define all_arch_configs kernel-%{version}-ppc64le*.config
a3f68e
%endif
Josh Boyer 5a7728
%endif
Josh Boyer 5a7728
Jesse Keating 7a3296
%ifarch s390x
Jesse Keating 7a3296
%define asmarch s390
Jesse Keating 7a3296
%define hdrarch s390
Jesse Keating 7a3296
%define all_arch_configs kernel-%{version}-s390x.config
Hendrik Brueckner d018df
%define kernel_image arch/s390/boot/bzImage
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
%ifarch %{arm}
Jesse Keating 7a3296
%define all_arch_configs kernel-%{version}-arm*.config
df3d8e
%define skip_nonpae_vdso 1
Josh Boyer 8ffa0a
%define asmarch arm
Jesse Keating 7a3296
%define hdrarch arm
Kyle McMartin bc5f99
%define pae lpae
986a9f
%define make_target bzImage
986a9f
%define kernel_image arch/arm/boot/zImage
Kyle McMartin 9b1a4c
# http://lists.infradead.org/pipermail/linux-arm-kernel/2012-March/091404.html
Kyle McMartin 9b1a4c
%define kernel_mflags KALLSYMS_EXTRA_PASS=1
43fa71
# we only build headers/perf/tools on the base arm arches
94b006
# just like we used to only build them on i386 for x86
a94069
%ifnarch armv7hl
94b006
%define with_headers 0
f65f3f
%define with_cross_headers 0
94b006
%endif
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Kyle McMartin 575de6
%ifarch aarch64
918c10
%define all_arch_configs kernel-%{version}-aarch64*.config
Kyle McMartin 575de6
%define asmarch arm64
Kyle McMartin 575de6
%define hdrarch arm64
Kyle McMartin 575de6
%define make_target Image.gz
Kyle McMartin 575de6
%define kernel_image arch/arm64/boot/Image.gz
Kyle McMartin 575de6
%endif
Kyle McMartin 575de6
Dave Jones 834dba
# Should make listnewconfig fail if there's config options
Dave Jones 834dba
# printed out?
cff59d
%if %{nopatches}
Dave Jones 834dba
%define listnewconfig_fail 0
a20ad4
%define configmismatch_fail 0
Dave Jones 834dba
%else
Dave Jones 834dba
%define listnewconfig_fail 1
a20ad4
%define configmismatch_fail 1
Dave Jones 834dba
%endif
Dave Jones 834dba
Jesse Keating 7a3296
# To temporarily exclude an architecture from being built, add it to
Dave Jones 166b79
# %%nobuildarches. Do _NOT_ use the ExclusiveArch: line, because if we
Jesse Keating 7a3296
# don't build kernel-headers then the new build system will no longer let
Jesse Keating 7a3296
# us use the previous build of that package -- it'll just be completely AWOL.
Jesse Keating 7a3296
# Which is a BadThing(tm).
Jesse Keating 7a3296
Jesse Keating 7a3296
# We only build kernel-headers on the following...
5865c6
%define nobuildarches i386
Jesse Keating 7a3296
Jesse Keating 7a3296
%ifarch %nobuildarches
Jesse Keating 7a3296
%define with_up 0
Jesse Keating 7a3296
%define with_pae 0
Jesse Keating 7a3296
%define with_debuginfo 0
Jesse Keating 7a3296
%define _enable_debug_packages 0
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
%define with_pae_debug 0
Jesse Keating 7a3296
%if %{with_pae}
Jesse Keating 7a3296
%define with_pae_debug %{with_debug}
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Josh Boyer 8addb5
# Architectures we build tools/cpupower on
2117ac
%define cpupowerarchs %{ix86} x86_64 %{power64} %{arm} aarch64
Josh Boyer 8addb5
df3d8e
%if %{use_vdso}
df3d8e
df3d8e
%if 0%{?skip_nonpae_vdso}
df3d8e
%define _use_vdso 0
df3d8e
%else
df3d8e
%define _use_vdso 1
df3d8e
%endif
df3d8e
df3d8e
%else
df3d8e
%define _use_vdso 0
df3d8e
%endif
df3d8e
df3d8e
Jesse Keating 7a3296
#
Dave Jones 166b79
# Packages that need to be installed before the kernel is, because the %%post
Jesse Keating 7a3296
# scripts use them.
Jesse Keating 7a3296
#
e07a3b
%define kernel_prereq  coreutils, systemd >= 203-2, /usr/bin/kernel-install
Josh Boyer 6d752a
%define initrd_prereq  dracut >= 027
Jesse Keating 7a3296
Jesse Keating 7a3296
Jesse Keating 7a3296
Name: kernel%{?variant}
Dave Jones 702ef3
License: GPLv2 and Redistributable, no modification permitted
37d074
URL: https://www.kernel.org/
Jesse Keating 7a3296
Version: %{rpmversion}
e093b2
Release: %{pkg_release}
Jesse Keating 7a3296
# DO NOT CHANGE THE 'ExclusiveArch' LINE TO TEMPORARILY EXCLUDE AN ARCHITECTURE BUILD.
Jesse Keating 7a3296
# SET %%nobuildarches (ABOVE) INSTEAD
7baeeb
ExclusiveArch: %{all_x86} x86_64 ppc64 s390x %{arm} aarch64 ppc64le
Jesse Keating 7a3296
ExclusiveOS: Linux
a9cc54
%ifnarch %{nobuildarches}
Jarod Wilson a96d89
Requires: kernel-core-uname-r = %{KVERREL}%{?variant}
Jarod Wilson a96d89
Requires: kernel-modules-uname-r = %{KVERREL}%{?variant}
a9cc54
%endif
Jesse Keating 7a3296
Dave Jones efc71a
Jesse Keating 7a3296
#
Jesse Keating 7a3296
# List the packages used during the kernel build
Jesse Keating 7a3296
#
c5708d
BuildRequires: kmod, patch, bash, tar, git
575a9e
BuildRequires: bzip2, xz, findutils, gzip, m4, perl-interpreter, perl-Carp, perl-devel, perl-generators, make, diffutils, gawk
37d074
BuildRequires: gcc, binutils, redhat-rpm-config, hmaccalc, bison, flex
e986b2
BuildRequires: net-tools, hostname, bc, elfutils-devel
Jesse Keating 7a3296
%if %{with_sparse}
Kyle McMartin 11dfcd
BuildRequires: sparse
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
BuildConflicts: rhbuildsys(DiskFree) < 500Mb
Jesse Keating 7a3296
%if %{with_debuginfo}
Kyle McMartin 11dfcd
BuildRequires: rpm-build, elfutils
debc7c
BuildConflicts: rpm < 4.13.0.1-19
debc7c
# Most of these should be enabled after more investigation
debc7c
%undefine _include_minidebuginfo
debc7c
%undefine _find_debuginfo_dwz_opts
debc7c
%undefine _unique_build_ids
debc7c
%undefine _unique_debug_names
debc7c
%undefine _unique_debug_srcs
e23cf2
%undefine _debugsource_packages
e23cf2
%undefine _debuginfo_subpackages
36c073
%undefine _include_gdb_index
debc7c
%global _find_debuginfo_opts -r
debc7c
%global _missing_build_ids_terminate_build 1
debc7c
%global _no_recompute_build_ids 1
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
149275
%if %{signkernel}%{signmodules}
c0b697
BuildRequires: openssl openssl-devel
149275
%if %{signkernel}
Josh Boyer bf81d1
BuildRequires: pesign >= 0.10-4
Josh Boyer c2a12c
%endif
149275
%endif
Josh Boyer c2a12c
Kyle McMartin 43d64b
%if %{with_cross}
Kyle McMartin 43d64b
BuildRequires: binutils-%{_build_arch}-linux-gnu, gcc-%{_build_arch}-linux-gnu
Kyle McMartin 43d64b
%define cross_opts CROSS_COMPILE=%{_build_arch}-linux-gnu-
Kyle McMartin 43d64b
%endif
Kyle McMartin 43d64b
aca291
Source0: https://www.kernel.org/pub/linux/kernel/v4.x/linux-%{kversion}.tar.xz
Jesse Keating 7a3296
Josh Boyer f0f4ff
Source11: x509.genkey
523d98
Source12: remove-binary-diff.pl
Jesse Keating 7a3296
Source15: merge.pl
Josh Boyer b8b278
Source16: mod-extra.list
Josh Boyer 0b4338
Source17: mod-extra.sh
Kyle McMartin d0a8cf
Source18: mod-sign.sh
94ce4e
Source90: filter-x86_64.sh
94ce4e
Source91: filter-armv7hl.sh
94ce4e
Source92: filter-i686.sh
94ce4e
Source93: filter-aarch64.sh
94ce4e
Source95: filter-ppc64.sh
94ce4e
Source96: filter-ppc64le.sh
94ce4e
Source97: filter-s390x.sh
94ce4e
Source99: filter-modules.sh
Kyle McMartin d0a8cf
%define modsign_cmd %{SOURCE18}
Jesse Keating 7a3296
1b7eeb
Source20: kernel-aarch64.config
1b7eeb
Source21: kernel-aarch64-debug.config
1b7eeb
Source22: kernel-armv7hl.config
1b7eeb
Source23: kernel-armv7hl-debug.config
1b7eeb
Source24: kernel-armv7hl-lpae.config
1b7eeb
Source25: kernel-armv7hl-lpae-debug.config
1b7eeb
Source26: kernel-i686.config
1b7eeb
Source27: kernel-i686-debug.config
1b7eeb
Source28: kernel-i686-PAE.config
1b7eeb
Source29: kernel-i686-PAEdebug.config
1b7eeb
Source30: kernel-ppc64.config
1b7eeb
Source31: kernel-ppc64-debug.config
1b7eeb
Source32: kernel-ppc64le.config
1b7eeb
Source33: kernel-ppc64le-debug.config
1b7eeb
Source36: kernel-s390x.config
1b7eeb
Source37: kernel-s390x-debug.config
1b7eeb
Source38: kernel-x86_64.config
1b7eeb
Source39: kernel-x86_64-debug.config
1b7eeb
1b7eeb
Source40: generate_all_configs.sh
1b7eeb
Source41: generate_debug_configs.sh
Jesse Keating 7a3296
b1f098
Source42: process_configs.sh
b1f098
Source43: generate_bls_conf.sh
a20ad4
Jarod Wilson 5b6529
# This file is intentionally left empty in the stock kernel. Its a nicety
Jarod Wilson 5b6529
# added for those wanting to do custom rebuilds with altered config opts.
1b7eeb
Source1000: kernel-local
Jarod Wilson 5b6529
Josh Boyer 8addb5
# Sources for kernel-tools
Josh Boyer 8addb5
Source2000: cpupower.service
Josh Boyer 8addb5
Source2001: cpupower.config
Josh Boyer 8addb5
Jesse Keating 7a3296
# Here should be only the patches up to the upstream canonical Linus tree.
Jesse Keating 7a3296
Jesse Keating 7a3296
# For a stable release kernel
Jesse Keating 7a3296
%if 0%{?stable_update}
Jesse Keating 7a3296
%if 0%{?stable_base}
d72933
%define    stable_patch_00  patch-4.%{base_sublevel}.%{stable_base}.xz
178df3
Source5000: %{stable_patch_00}
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
# non-released_kernel case
Jesse Keating 7a3296
# These are automagically defined by the rcrev and gitrev values set up
Jesse Keating 7a3296
# near the top of this spec file.
Jesse Keating 7a3296
%else
Jesse Keating 7a3296
%if 0%{?rcrev}
178df3
Source5000: patch-4.%{upstream_sublevel}-rc%{rcrev}.xz
Jesse Keating 7a3296
%if 0%{?gitrev}
178df3
Source5001: patch-4.%{upstream_sublevel}-rc%{rcrev}-git%{gitrev}.xz
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
%else
Jesse Keating 7a3296
# pre-{base_sublevel+1}-rc1 case
Jesse Keating 7a3296
%if 0%{?gitrev}
178df3
Source5000: patch-4.%{base_sublevel}-git%{gitrev}.xz
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
476553
## Patches needed for building this package
476553
476553
## compile fixes
476553
476553
# ongoing complaint, full discussion delayed until ksummit/plumbers
476553
Patch002: 0001-iio-Use-event-header-from-kernel-tree.patch
476553
Jesse Keating 7a3296
%if !%{nopatches}
Jesse Keating 7a3296
Jesse Keating 7a3296
# Git trees.
Jesse Keating 7a3296
Jesse Keating 7a3296
# Standalone patches
72924c
# 100 - Generic long running patches
Jesse Keating 7a3296
72924c
Patch110: lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch
db34f9
72924c
Patch111: input-kill-stupid-messages.patch
57a67d
72924c
Patch112: die-floppy-die.patch
07611b
72924c
Patch113: no-pcspkr-modalias.patch
07611b
72924c
Patch114: silence-fbcon-logo.patch
35eff4
72924c
Patch115: Kbuild-Add-an-option-to-enable-GCC-VTA.patch
c59b07
72924c
Patch116: crash-driver.patch
78560e
72924c
Patch117: lis3-improve-handling-of-null-rate.patch
6c5f57
72924c
Patch118: scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch
e93be6
72924c
Patch119: criu-no-expert.patch
861737
72924c
Patch120: ath9k-rx-dma-stop-check.patch
72924c
72924c
Patch121: xen-pciback-Don-t-disable-PCI_COMMAND-on-PCI-device-.patch
72924c
72924c
Patch122: Input-synaptics-pin-3-touches-when-the-firmware-repo.patch
ddc931
ad5e49
# This no longer applies, let's see if it needs to be updated
ad5e49
# Patch123: firmware-Drop-WARN-from-usermodehelper_read_trylock-.patch
4768e6
72924c
# 200 - x86 / secureboot
Jesse Keating 7a3296
72924c
Patch201: efi-lockdown.patch
Jesse Keating 7a3296
72924c
Patch202: KEYS-Allow-unrestricted-boot-time-addition-of-keys-t.patch
Josh Boyer 306dfc
72924c
Patch203: Add-EFI-signature-data-types.patch
6a9155
72924c
Patch204: Add-an-EFI-signature-blob-parser-and-key-loader.patch
Matthew Garrett 447e3a
72924c
Patch205: MODSIGN-Import-certificates-from-UEFI-Secure-Boot.patch
bbf3f5
72924c
Patch206: MODSIGN-Support-not-importing-certs-from-db.patch
Jesse Keating 7a3296
ee57b1
# bz 1497559 - Make kernel MODSIGN code not error on missing variables
ea1b81
Patch207: 0001-Make-get_cert_list-not-complain-about-cert-lists-tha.patch
ea1b81
Patch208: 0002-Add-efi_status_to_str-and-rework-efi_status_to_err.patch
ea1b81
Patch209: 0003-Make-get_cert_list-use-efi_status_to_str-to-print-er.patch
ea1b81
72924c
Patch210: disable-i8042-check-on-apple-mac.patch
Dave Jones 18e50c
72924c
Patch211: drm-i915-hush-check-crtc-state.patch
8c64d2
b1f098
Patch212: efi-secureboot.patch
b1f098
Patch213: lockdown-fix-coordination-of-kernel-module-signature-verification.patch
b1f098
72924c
# 300 - ARM patches
f8e9b4
Patch300: arm64-Add-option-of-13-for-FORCE_MAX_ZONEORDER.patch
03ccb2
72924c
# http://www.spinics.net/lists/linux-tegra/msg26029.html
9a73c9
Patch301: usb-phy-tegra-Add-38.4MHz-clock-table-entry.patch
72924c
# http://patchwork.ozlabs.org/patch/587554/
37d074
Patch302: ARM-tegra-usb-no-reset.patch
35eff4
fbb329
# https://patchwork.kernel.org/patch/10351797/
b1f098
Patch303: ACPI-scan-Fix-regression-related-to-X-Gene-UARTs.patch
b1f098
# rhbz 1574718
b1f098
Patch304: ACPI-irq-Workaround-firmware-issue-on-X-Gene-based-m400.patch
6adde4
b1f098
# https://patchwork.kernel.org/patch/9820417/
b1f098
Patch305: qcom-msm89xx-fixes.patch
5b99eb
16fb23
# https://patchwork.kernel.org/project/linux-mmc/list/?submitter=71861
16fb23
Patch306: arm-sdhci-esdhc-imx-fixes.patch
0b78d8
16fb23
# https://patchwork.kernel.org/patch/10539291/
16fb23
Patch308: mmc-sunxi-allow-3.3V-DDR-when-DDR-is-available.patch
16fb23
# https://patchwork.kernel.org/patch/10540521/
16fb23
Patch309: mmc-sunxi-remove-output-of-virtual-base-address.patch
370113
16fb23
# https://www.spinics.net/lists/arm-kernel/msg670137.html
16fb23
Patch311: arm64-ZynqMP-firmware-clock-drivers-core.patch
790224
16fb23
# Enabling Patches for the RPi3+
16fb23
Patch330: bcm2837-enable-pmu.patch
545b76
0edfe4
16fb23
# Fix for AllWinner A64 Timer Errata, still not final
16fb23
# https://patchwork.kernel.org/patch/10392891/
16fb23
Patch350: arm64-arch_timer-Workaround-for-Allwinner-A64-timer-instability.patch
16fb23
Patch351: arm64-dts-allwinner-a64-Enable-A64-timer-workaround.patch
3bb483
37d074
# 400 - IBM (ppc/s390x) patches
54be9d
37d074
# 500 - Temp fixes/CVEs etc
9d77f5
37d074
# rhbz 1476467
37d074
Patch501: Fix-for-module-sig-verification.patch
24931b
37d074
# rhbz 1431375
37d074
Patch502: input-rmi4-remove-the-need-for-artifical-IRQ.patch
756abe
c96d1d
# rhbz 1572944
c96d1d
Patch506: 0001-random-add-a-config-option-to-trust-the-CPU-s-hwrng.patch
c96d1d
Patch507: 0001-random-make-CPU-trust-a-boot-parameter.patch
c96d1d
Josh Boyer 812ba1
# END OF PATCH DEFINITIONS
Josh Boyer 812ba1
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
Jesse Keating 7a3296
%description
94ce4e
The kernel meta package
94ce4e
94ce4e
#
94ce4e
# This macro does requires, provides, conflicts, obsoletes for a kernel package.
94ce4e
#	%%kernel_reqprovconf <subpackage>
94ce4e
# It uses any kernel_<subpackage>_conflicts and kernel_<subpackage>_obsoletes
94ce4e
# macros defined above.
94ce4e
#
94ce4e
%define kernel_reqprovconf \
94ce4e
Provides: kernel = %{rpmversion}-%{pkg_release}\
94ce4e
Provides: kernel-%{_target_cpu} = %{rpmversion}-%{pkg_release}%{?1:+%{1}}\
94ce4e
Provides: kernel-drm-nouveau = 16\
Jarod Wilson a96d89
Provides: kernel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
94ce4e
Requires(pre): %{kernel_prereq}\
94ce4e
Requires(pre): %{initrd_prereq}\
573a44
Requires(pre): linux-firmware >= 20150904-56.git6ebf5d57\
94ce4e
Requires(preun): systemd >= 200\
519148
Conflicts: xfsprogs < 4.3.0-1\
6ab5f4
Conflicts: xorg-x11-drv-vmmouse < 13.0.99\
94ce4e
%{expand:%%{?kernel%{?1:_%{1}}_conflicts:Conflicts: %%{kernel%{?1:_%{1}}_conflicts}}}\
94ce4e
%{expand:%%{?kernel%{?1:_%{1}}_obsoletes:Obsoletes: %%{kernel%{?1:_%{1}}_obsoletes}}}\
94ce4e
%{expand:%%{?kernel%{?1:_%{1}}_provides:Provides: %%{kernel%{?1:_%{1}}_provides}}}\
94ce4e
# We can't let RPM do the dependencies automatic because it'll then pick up\
94ce4e
# a correct but undesirable perl dependency from the module headers which\
94ce4e
# isn't required for the kernel proper to function\
f19b8f
AutoReq: no\
f19b8f
AutoProv: yes\
94ce4e
%{nil}
Jesse Keating 7a3296
Jesse Keating 7a3296
%package headers
Jesse Keating 7a3296
Summary: Header files for the Linux kernel for use by glibc
Dave Jones d555d6
Obsoletes: glibc-kernheaders < 3.0-46
Jesse Keating 7a3296
Provides: glibc-kernheaders = 3.0-46
Jarod Wilson cde0b0
%if "0%{?variant}"
Jarod Wilson 8a29c5
Obsoletes: kernel-headers < %{rpmversion}-%{pkg_release}
Jarod Wilson 8a29c5
Provides: kernel-headers = %{rpmversion}-%{pkg_release}
Jarod Wilson 8a29c5
%endif
Jesse Keating 7a3296
%description headers
Jesse Keating 7a3296
Kernel-headers includes the C header files that specify the interface
Jesse Keating 7a3296
between the Linux kernel and userspace libraries and programs.  The
Jesse Keating 7a3296
header files define structures and constants that are needed for
Jesse Keating 7a3296
building most standard programs and are also needed for rebuilding the
Jesse Keating 7a3296
glibc package.
Jesse Keating 7a3296
f65f3f
%package cross-headers
f65f3f
Summary: Header files for the Linux kernel for use by cross-glibc
f65f3f
%description cross-headers
f65f3f
Kernel-cross-headers includes the C header files that specify the interface
f65f3f
between the Linux kernel and userspace libraries and programs.  The
f65f3f
header files define structures and constants that are needed for
f65f3f
building most standard programs and are also needed for rebuilding the
f65f3f
cross-glibc package.
f65f3f
f65f3f
Jesse Keating 7a3296
%package bootwrapper
Jesse Keating 7a3296
Summary: Boot wrapper files for generating combined kernel + initrd images
Dave Jones 524b8c
Requires: gzip binutils
Jesse Keating 7a3296
%description bootwrapper
Jesse Keating 7a3296
Kernel-bootwrapper contains the wrapper code which makes bootable "zImage"
Jesse Keating 7a3296
files combining both kernel and initial ramdisk.
Jesse Keating 7a3296
Jesse Keating 7a3296
%package debuginfo-common-%{_target_cpu}
Jesse Keating 7a3296
Summary: Kernel source files used by %{name}-debuginfo packages
f8e555
Provides: installonlypkg(kernel)
Jesse Keating 7a3296
%description debuginfo-common-%{_target_cpu}
Jesse Keating 7a3296
This package is required by %{name}-debuginfo subpackages.
Jesse Keating 7a3296
It provides the kernel source files common to all builds.
Jesse Keating 7a3296
Jesse Keating 7a3296
#
Jesse Keating 7a3296
# This macro creates a kernel-<subpackage>-debuginfo package.
Jesse Keating 7a3296
#	%%kernel_debuginfo_package <subpackage>
Jesse Keating 7a3296
#
Jesse Keating 7a3296
%define kernel_debuginfo_package() \
Jesse Keating 7a3296
%package %{?1:%{1}-}debuginfo\
Jesse Keating 7a3296
Summary: Debug information for package %{name}%{?1:-%{1}}\
Jesse Keating 7a3296
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}\
Jesse Keating 7a3296
Provides: %{name}%{?1:-%{1}}-debuginfo-%{_target_cpu} = %{version}-%{release}\
f8e555
Provides: installonlypkg(kernel)\
Jesse Keating 7a3296
AutoReqProv: no\
Jarod Wilson b55491
%description %{?1:%{1}-}debuginfo\
Jesse Keating 7a3296
This package provides debug information for package %{name}%{?1:-%{1}}.\
Jesse Keating 7a3296
This is required to use SystemTap with %{name}%{?1:-%{1}}-%{KVERREL}.\
debc7c
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '/.*/%%{KVERREL}%{?1:[+]%{1}}/.*|/.*%%{KVERREL}%{?1:\+%{1}}(\.debug)?' -o debuginfo%{?1}.list}\
Jesse Keating 7a3296
%{nil}
Jesse Keating 7a3296
Jesse Keating 7a3296
#
Jesse Keating 7a3296
# This macro creates a kernel-<subpackage>-devel package.
Jesse Keating 7a3296
#	%%kernel_devel_package <subpackage> <pretty-name>
Jesse Keating 7a3296
#
Jesse Keating 7a3296
%define kernel_devel_package() \
Jesse Keating 7a3296
%package %{?1:%{1}-}devel\
Jesse Keating 7a3296
Summary: Development package for building kernel modules to match the %{?2:%{2} }kernel\
Jesse Keating 7a3296
Provides: kernel%{?1:-%{1}}-devel-%{_target_cpu} = %{version}-%{release}\
faf252
Provides: kernel-devel-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\
Jarod Wilson a96d89
Provides: kernel-devel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
aba394
Provides: installonlypkg(kernel)\
Jesse Keating 7a3296
AutoReqProv: no\
9b73a1
Requires(pre): findutils\
9b73a1
Requires: findutils\
575a9e
Requires: perl-interpreter\
Jarod Wilson b55491
%description %{?1:%{1}-}devel\
Jesse Keating 7a3296
This package provides kernel headers and makefiles sufficient to build modules\
Jesse Keating 7a3296
against the %{?2:%{2} }kernel package.\
Jesse Keating 7a3296
%{nil}
Jesse Keating 7a3296
Jesse Keating 7a3296
#
Josh Boyer b8b278
# This macro creates a kernel-<subpackage>-modules-extra package.
Kyle McMartin de50ed
#	%%kernel_modules_extra_package <subpackage> <pretty-name>
Josh Boyer b8b278
#
Kyle McMartin de50ed
%define kernel_modules_extra_package() \
Josh Boyer b8b278
%package %{?1:%{1}-}modules-extra\
Josh Boyer b8b278
Summary: Extra kernel modules to match the %{?2:%{2} }kernel\
Josh Boyer b8b278
Provides: kernel%{?1:-%{1}}-modules-extra-%{_target_cpu} = %{version}-%{release}\
3752c8
Provides: kernel%{?1:-%{1}}-modules-extra-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\
3752c8
Provides: kernel%{?1:-%{1}}-modules-extra = %{version}-%{release}%{?1:+%{1}}\
Josh Boyer 6721e4
Provides: installonlypkg(kernel-module)\
Jarod Wilson a96d89
Provides: kernel%{?1:-%{1}}-modules-extra-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Jarod Wilson a96d89
Requires: kernel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Jarod Wilson a96d89
Requires: kernel%{?1:-%{1}}-modules-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
f19b8f
AutoReq: no\
f19b8f
AutoProv: yes\
Jarod Wilson b55491
%description %{?1:%{1}-}modules-extra\
Josh Boyer b8b278
This package provides less commonly used kernel modules for the %{?2:%{2} }kernel package.\
Josh Boyer b8b278
%{nil}
Josh Boyer b8b278
Josh Boyer b8b278
#
aa7351
# This macro creates a kernel-<subpackage>-modules package.
aa7351
#	%%kernel_modules_package <subpackage> <pretty-name>
94ce4e
#
aa7351
%define kernel_modules_package() \
aa7351
%package %{?1:%{1}-}modules\
94ce4e
Summary: kernel modules to match the %{?2:%{2}-}core kernel\
aa7351
Provides: kernel%{?1:-%{1}}-modules-%{_target_cpu} = %{version}-%{release}\
aa7351
Provides: kernel-modules-%{_target_cpu} = %{version}-%{release}%{?1:+%{1}}\
aa7351
Provides: kernel-modules = %{version}-%{release}%{?1:+%{1}}\
94ce4e
Provides: installonlypkg(kernel-module)\
Jarod Wilson a96d89
Provides: kernel%{?1:-%{1}}-modules-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
Jarod Wilson a96d89
Requires: kernel-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
f19b8f
AutoReq: no\
f19b8f
AutoProv: yes\
Jarod Wilson b55491
%description %{?1:%{1}-}modules\
94ce4e
This package provides commonly used kernel modules for the %{?2:%{2}-}core kernel package.\
94ce4e
%{nil}
94ce4e
94ce4e
#
335206
# this macro creates a kernel-<subpackage> meta package.
335206
#	%%kernel_meta_package <subpackage>
335206
#
335206
%define kernel_meta_package() \
335206
%package %{1}\
335206
summary: kernel meta-package for the %{1} kernel\
Jarod Wilson a96d89
Requires: kernel-%{1}-core-uname-r = %{KVERREL}%{?variant}+%{1}\
Jarod Wilson a96d89
Requires: kernel-%{1}-modules-uname-r = %{KVERREL}%{?variant}+%{1}\
f8e555
Provides: installonlypkg(kernel)\
335206
%description %{1}\
335206
The meta-package for the %{1} kernel\
335206
%{nil}
335206
335206
#
Jesse Keating 7a3296
# This macro creates a kernel-<subpackage> and its -devel and -debuginfo too.
Jesse Keating 7a3296
#	%%define variant_summary The Linux kernel compiled for <configuration>
Jesse Keating 7a3296
#	%%kernel_variant_package [-n <pretty-name>] <subpackage>
Jesse Keating 7a3296
#
Jesse Keating 7a3296
%define kernel_variant_package(n:) \
94ce4e
%package %{?1:%{1}-}core\
Jesse Keating 7a3296
Summary: %{variant_summary}\
Jarod Wilson a96d89
Provides: kernel-%{?1:%{1}-}core-uname-r = %{KVERREL}%{?variant}%{?1:+%{1}}\
f8e555
Provides: installonlypkg(kernel)\
94ce4e
%{expand:%%kernel_reqprovconf}\
335206
%if %{?1:1} %{!?1:0} \
335206
%{expand:%%kernel_meta_package %{?1:%{1}}}\
335206
%endif\
94ce4e
%{expand:%%kernel_devel_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
aa7351
%{expand:%%kernel_modules_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
94ce4e
%{expand:%%kernel_modules_extra_package %{?1:%{1}} %{!?{-n}:%{1}}%{?{-n}:%{-n*}}}\
94ce4e
%{expand:%%kernel_debuginfo_package %{?1:%{1}}}\
Jesse Keating 7a3296
%{nil}
Jesse Keating 7a3296
Jesse Keating 7a3296
# Now, each variant package.
Jesse Keating 7a3296
f8e9b4
%if %{with_pae}
Kyle McMartin be52af
%ifnarch armv7hl
Jesse Keating 7a3296
%define variant_summary The Linux kernel compiled for PAE capable machines
Kyle McMartin bc5f99
%kernel_variant_package %{pae}
94ce4e
%description %{pae}-core
Jesse Keating 7a3296
This package includes a version of the Linux kernel with support for up to
Jesse Keating 7a3296
64GB of high memory. It requires a CPU with Physical Address Extensions (PAE).
Jesse Keating 7a3296
The non-PAE kernel can only address up to 4GB of memory.
Jesse Keating 7a3296
Install the kernel-PAE package if your machine has more than 4GB of memory.
Kyle McMartin be52af
%else
Kyle McMartin bc5f99
%define variant_summary The Linux kernel compiled for Cortex-A15
Kyle McMartin bc5f99
%kernel_variant_package %{pae}
94ce4e
%description %{pae}-core
Kyle McMartin bc5f99
This package includes a version of the Linux kernel with support for
Kyle McMartin bc5f99
Cortex-A15 devices with LPAE and HW virtualisation support
Kyle McMartin bc5f99
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
Jesse Keating 7a3296
%define variant_summary The Linux kernel compiled with extra debugging enabled for PAE capable machines
Kyle McMartin bc5f99
%kernel_variant_package %{pae}debug
Jesse Keating 7a3296
Obsoletes: kernel-PAE-debug
94ce4e
%description %{pae}debug-core
Jesse Keating 7a3296
This package includes a version of the Linux kernel with support for up to
Jesse Keating 7a3296
64GB of high memory. It requires a CPU with Physical Address Extensions (PAE).
Jesse Keating 7a3296
The non-PAE kernel can only address up to 4GB of memory.
Jesse Keating 7a3296
Install the kernel-PAE package if your machine has more than 4GB of memory.
Jesse Keating 7a3296
Jesse Keating 7a3296
This variant of the kernel has numerous debugging options enabled.
Jesse Keating 7a3296
It should only be installed when trying to gather additional information
Jesse Keating 7a3296
on kernel bugs, as some of these options impact performance noticably.
f8e9b4
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
%define variant_summary The Linux kernel compiled with extra debugging enabled
Jesse Keating 7a3296
%kernel_variant_package debug
94ce4e
%description debug-core
Jesse Keating 7a3296
The kernel package contains the Linux kernel (vmlinuz), the core of any
Jesse Keating 7a3296
Linux operating system.  The kernel handles the basic functions
Jesse Keating 7a3296
of the operating system:  memory allocation, process allocation, device
Jesse Keating 7a3296
input and output, etc.
Jesse Keating 7a3296
Jesse Keating 7a3296
This variant of the kernel has numerous debugging options enabled.
Jesse Keating 7a3296
It should only be installed when trying to gather additional information
Jesse Keating 7a3296
on kernel bugs, as some of these options impact performance noticably.
Jesse Keating 7a3296
94ce4e
# And finally the main -core package
94ce4e
94ce4e
%define variant_summary The Linux kernel
2117ac
%kernel_variant_package
94ce4e
%description core
94ce4e
The kernel package contains the Linux kernel (vmlinuz), the core of any
94ce4e
Linux operating system.  The kernel handles the basic functions
94ce4e
of the operating system: memory allocation, process allocation, device
94ce4e
input and output, etc.
94ce4e
986a9f
Jesse Keating 7a3296
%prep
Jesse Keating 7a3296
# do a few sanity-checks for --with *only builds
Jesse Keating 7a3296
%if %{with_baseonly}
Jesse Keating 7a3296
%if !%{with_up}%{with_pae}
Jesse Keating 7a3296
echo "Cannot build --with baseonly, up build is disabled"
Jesse Keating 7a3296
exit 1
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Josh Boyer c78a08
%if "%{baserelease}" == "0"
Chuck Ebbert 05e763
echo "baserelease must be greater than zero"
Chuck Ebbert 05e763
exit 1
Chuck Ebbert 05e763
%endif
Chuck Ebbert 05e763
Jesse Keating 7a3296
# more sanity checking; do it quietly
Jesse Keating 7a3296
if [ "%{patches}" != "%%{patches}" ] ; then
Jesse Keating 7a3296
  for patch in %{patches} ; do
Jesse Keating 7a3296
    if [ ! -f $patch ] ; then
Jesse Keating 7a3296
      echo "ERROR: Patch  ${patch##/*/}  listed in specfile but is missing"
Jesse Keating 7a3296
      exit 1
Jesse Keating 7a3296
    fi
Jesse Keating 7a3296
  done
Jesse Keating 7a3296
fi 2>/dev/null
Jesse Keating 7a3296
Jesse Keating 7a3296
patch_command='patch -p1 -F1 -s'
Jesse Keating 7a3296
ApplyPatch()
Jesse Keating 7a3296
{
Jesse Keating 7a3296
  local patch=$1
Jesse Keating 7a3296
  shift
Jesse Keating 7a3296
  if [ ! -f $RPM_SOURCE_DIR/$patch ]; then
Jesse Keating 7a3296
    exit 1
Jesse Keating 7a3296
  fi
Dave Jones b89c80
  if ! grep -E "^Patch[0-9]+: $patch\$" %{_specdir}/${RPM_PACKAGE_NAME%%%%%{?variant}}.spec ; then
adc659
    if [ "${patch:0:8}" != "patch-4." ] ; then
Jesse Keating 7a3296
      echo "ERROR: Patch  $patch  not listed as a source patch in specfile"
Jesse Keating 7a3296
      exit 1
Jesse Keating 7a3296
    fi
Jesse Keating 7a3296
  fi 2>/dev/null
Jesse Keating 7a3296
  case "$patch" in
Jesse Keating 7a3296
  *.bz2) bunzip2 < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
Chuck Ebbert 7cfa68
  *.gz)  gunzip  < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
Chuck Ebbert 7cfa68
  *.xz)  unxz    < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
Jesse Keating 7a3296
  *) $patch_command ${1+"$@"} < "$RPM_SOURCE_DIR/$patch" ;;
Jesse Keating 7a3296
  esac
Jesse Keating 7a3296
}
Jesse Keating 7a3296
Jesse Keating 7a3296
# don't apply patch if it's empty
Jesse Keating 7a3296
ApplyOptionalPatch()
Jesse Keating 7a3296
{
Jesse Keating 7a3296
  local patch=$1
Jesse Keating 7a3296
  shift
Jesse Keating 7a3296
  if [ ! -f $RPM_SOURCE_DIR/$patch ]; then
Jesse Keating 7a3296
    exit 1
Jesse Keating 7a3296
  fi
Jesse Keating 7a3296
  local C=$(wc -l $RPM_SOURCE_DIR/$patch | awk '{print $1}')
Jesse Keating 7a3296
  if [ "$C" -gt 9 ]; then
Jesse Keating 7a3296
    ApplyPatch $patch ${1+"$@"}
Jesse Keating 7a3296
  fi
Jesse Keating 7a3296
}
Jesse Keating 7a3296
Jesse Keating 7a3296
# First we unpack the kernel tarball.
Jesse Keating 7a3296
# If this isn't the first make prep, we use links to the existing clean tarball
Jesse Keating 7a3296
# which speeds things up quite a bit.
Jesse Keating 7a3296
Jesse Keating 7a3296
# Update to latest upstream.
Jesse Keating 7a3296
%if 0%{?released_kernel}
d72933
%define vanillaversion 4.%{base_sublevel}
Jesse Keating 7a3296
# non-released_kernel case
Jesse Keating 7a3296
%else
Jesse Keating 7a3296
%if 0%{?rcrev}
d72933
%define vanillaversion 4.%{upstream_sublevel}-rc%{rcrev}
Jesse Keating 7a3296
%if 0%{?gitrev}
d72933
%define vanillaversion 4.%{upstream_sublevel}-rc%{rcrev}-git%{gitrev}
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
%else
Jesse Keating 7a3296
# pre-{base_sublevel+1}-rc1 case
Jesse Keating 7a3296
%if 0%{?gitrev}
d72933
%define vanillaversion 4.%{base_sublevel}-git%{gitrev}
Jesse Keating 7a3296
%else
d72933
%define vanillaversion 4.%{base_sublevel}
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Dave Jones 166b79
# %%{vanillaversion} : the full version name, e.g. 2.6.35-rc6-git3
Dave Jones 166b79
# %%{kversion}       : the base version, e.g. 2.6.34
Jesse Keating 7a3296
Dave Jones 166b79
# Use kernel-%%{kversion}%%{?dist} as the top-level directory name
Chuck Ebbert 26d08c
# so we can prep different trees within a single git directory.
Jesse Keating 7a3296
Chuck Ebbert 26d08c
# Build a list of the other top-level kernel tree directories.
Chuck Ebbert 26d08c
# This will be used to hardlink identical vanilla subdirs.
d72933
sharedirs=$(find "$PWD" -maxdepth 1 -type d -name 'kernel-4.*' \
Chuck Ebbert 26d08c
            | grep -x -v "$PWD"/kernel-%{kversion}%{?dist}) ||:
Jesse Keating 7a3296
Dave Jones 9e2943
# Delete all old stale trees.
Dave Jones 9e2943
if [ -d kernel-%{kversion}%{?dist} ]; then
Dave Jones 9e2943
  cd kernel-%{kversion}%{?dist}
Dave Jones 9e2943
  for i in linux-*
Dave Jones 9e2943
  do
Dave Jones 7bd4de
     if [ -d $i ]; then
Dave Jones 7bd4de
       # Just in case we ctrl-c'd a prep already
Dave Jones 7bd4de
       rm -rf deleteme.%{_target_cpu}
Dave Jones 7bd4de
       # Move away the stale away, and delete in background.
Dave Jones 7bd4de
       mv $i deleteme-$i
Dave Jones 7bd4de
       rm -rf deleteme* &
Dave Jones 7bd4de
     fi
Dave Jones 9e2943
  done
Dave Jones 9e2943
  cd ..
Dave Jones 9e2943
fi
Dave Jones 9e2943
Dave Jones 9e2943
# Generate new tree
Chuck Ebbert 26d08c
if [ ! -d kernel-%{kversion}%{?dist}/vanilla-%{vanillaversion} ]; then
Chuck Ebbert 26d08c
Chuck Ebbert 26d08c
  if [ -d kernel-%{kversion}%{?dist}/vanilla-%{kversion} ]; then
Chuck Ebbert 26d08c
Chuck Ebbert 26d08c
    # The base vanilla version already exists.
Chuck Ebbert 26d08c
    cd kernel-%{kversion}%{?dist}
Jesse Keating 7a3296
Jesse Keating 7a3296
    # Any vanilla-* directories other than the base one are stale.
Jesse Keating 7a3296
    for dir in vanilla-*; do
Jesse Keating 7a3296
      [ "$dir" = vanilla-%{kversion} ] || rm -rf $dir &
Jesse Keating 7a3296
    done
Jesse Keating 7a3296
Jesse Keating 7a3296
  else
Jesse Keating 7a3296
Jesse Keating 7a3296
    rm -f pax_global_header
Chuck Ebbert 26d08c
    # Look for an identical base vanilla dir that can be hardlinked.
Jesse Keating 7a3296
    for sharedir in $sharedirs ; do
Chuck Ebbert 26d08c
      if [[ ! -z $sharedir  &&  -d $sharedir/vanilla-%{kversion} ]] ; then
Jesse Keating 7a3296
        break
Jesse Keating 7a3296
      fi
Jesse Keating 7a3296
    done
Chuck Ebbert 26d08c
    if [[ ! -z $sharedir  &&  -d $sharedir/vanilla-%{kversion} ]] ; then
Chuck Ebbert 26d08c
%setup -q -n kernel-%{kversion}%{?dist} -c -T
16cb95
      cp -al $sharedir/vanilla-%{kversion} .
Jesse Keating 7a3296
    else
Chuck Ebbert 26d08c
%setup -q -n kernel-%{kversion}%{?dist} -c
Josh Boyer 728b14
      mv linux-%{kversion} vanilla-%{kversion}
Jesse Keating 7a3296
    fi
Jesse Keating 7a3296
Jesse Keating 7a3296
  fi
Jesse Keating 7a3296
Jesse Keating 7a3296
%if "%{kversion}" != "%{vanillaversion}"
Jesse Keating 7a3296
Jesse Keating 7a3296
  for sharedir in $sharedirs ; do
Chuck Ebbert 26d08c
    if [[ ! -z $sharedir  &&  -d $sharedir/vanilla-%{vanillaversion} ]] ; then
Jesse Keating 7a3296
      break
Jesse Keating 7a3296
    fi
Jesse Keating 7a3296
  done
Chuck Ebbert 26d08c
  if [[ ! -z $sharedir  &&  -d $sharedir/vanilla-%{vanillaversion} ]] ; then
Jesse Keating 7a3296
16cb95
    cp -al $sharedir/vanilla-%{vanillaversion} .
Jesse Keating 7a3296
Jesse Keating 7a3296
  else
Jesse Keating 7a3296
Chuck Ebbert 26d08c
    # Need to apply patches to the base vanilla version.
16cb95
    cp -al vanilla-%{kversion} vanilla-%{vanillaversion}
Jesse Keating 7a3296
    cd vanilla-%{vanillaversion}
Jesse Keating 7a3296
523d98
cp %{SOURCE12} .
523d98
Jesse Keating 7a3296
# Update vanilla to the latest upstream.
Jesse Keating 7a3296
# (non-released_kernel case only)
Jesse Keating 7a3296
%if 0%{?rcrev}
523d98
    xzcat %{SOURCE5000} | ./remove-binary-diff.pl | patch -p1 -F1 -s
Jesse Keating 7a3296
%if 0%{?gitrev}
523d98
    xzcat %{SOURCE5001} | ./remove-binary-diff.pl | patch -p1 -F1 -s
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
%else
Jesse Keating 7a3296
# pre-{base_sublevel+1}-rc1 case
Jesse Keating 7a3296
%if 0%{?gitrev}
523d98
    xzcat %{SOURCE5000} | ./remove-binary-diff.pl | patch -p1 -F1 -s
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
%endif
178df3
    git init
178df3
    git config user.email "kernel-team@fedoraproject.org"
178df3
    git config user.name "Fedora Kernel Team"
178df3
    git config gc.auto 0
178df3
    git add .
178df3
    git commit -a -q -m "baseline"
Jesse Keating 7a3296
Jesse Keating 7a3296
    cd ..
Jesse Keating 7a3296
Jesse Keating 7a3296
  fi
Jesse Keating 7a3296
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
else
Chuck Ebbert 26d08c
Chuck Ebbert 26d08c
  # We already have all vanilla dirs, just change to the top-level directory.
Chuck Ebbert 26d08c
  cd kernel-%{kversion}%{?dist}
Chuck Ebbert 26d08c
Jesse Keating 7a3296
fi
Jesse Keating 7a3296
Chuck Ebbert 26d08c
# Now build the fedora kernel tree.
16cb95
cp -al vanilla-%{vanillaversion} linux-%{KVERREL}
Jesse Keating 7a3296
Josh Boyer 83337c
cd linux-%{KVERREL}
0ee200
if [ ! -d .git ]; then
0ee200
    git init
0ee200
    git config user.email "kernel-team@fedoraproject.org"
0ee200
    git config user.name "Fedora Kernel Team"
0ee200
    git config gc.auto 0
0ee200
    git add .
0ee200
    git commit -a -q -m "baseline"
0ee200
fi
0ee200
Jesse Keating 7a3296
Jesse Keating 7a3296
# released_kernel with possible stable updates
Jesse Keating 7a3296
%if 0%{?stable_base}
178df3
# This is special because the kernel spec is hell and nothing is consistent
178df3
xzcat %{SOURCE5000} | patch -p1 -F1 -s
178df3
git commit -a -m "Stable update"
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
b1f098
# Note: Even in the "nopatches" path some patches (build tweaks and compile
b1f098
# fixes) will always get applied; see patch defition above for details
b1f098
b1f098
git am %{patches}
b1f098
b1f098
# END OF PATCH APPLICATIONS
b1f098
b1f098
# Any further pre-build tree manipulations happen here.
b1f098
b1f098
chmod +x scripts/checkpatch.pl
b1f098
chmod +x tools/objtool/sync-check.sh
b1f098
mv COPYING COPYING-%{version}
b1f098
b1f098
# This Prevents scripts/setlocalversion from mucking with our version numbers.
b1f098
touch .scmversion
b1f098
b1f098
# Deal with configs stuff
b1f098
mkdir configs
b1f098
cd configs
b1f098
Jesse Keating 7a3296
# Drop some necessary files from the source dir into the buildroot
1b7eeb
cp $RPM_SOURCE_DIR/kernel-*.config .
1b7eeb
cp %{SOURCE1000} .
Jesse Keating 7a3296
cp %{SOURCE15} .
1b7eeb
cp %{SOURCE40} .
1b7eeb
cp %{SOURCE41} .
b1f098
cp %{SOURCE43} .
Jesse Keating 7a3296
Chuck Ebbert c6b36e
%if !%{debugbuildsenabled}
Chuck Ebbert c6b36e
# The normal build is a really debug build and the user has explicitly requested
Chuck Ebbert 11ee03
# a release kernel. Change the config files into non-debug versions.
1b7eeb
%if !%{with_release}
1b7eeb
VERSION=%{version} ./generate_debug_configs.sh
1b7eeb
%else
1b7eeb
VERSION=%{version} ./generate_all_configs.sh
Chuck Ebbert c6b36e
%endif
Chuck Ebbert c6b36e
1b7eeb
%else
1b7eeb
VERSION=%{version} ./generate_all_configs.sh
1b7eeb
%endif
Jesse Keating 7a3296
Jarod Wilson 5b6529
# Merge in any user-provided local config option changes
54a9e1
%ifnarch %nobuildarches
e57e8f
for i in %{all_arch_configs}
Jarod Wilson 5b6529
do
Jarod Wilson 5b6529
  mv $i $i.tmp
Jarod Wilson 5b6529
  ./merge.pl %{SOURCE1000} $i.tmp > $i
Jarod Wilson 5b6529
  rm $i.tmp
Jarod Wilson 5b6529
done
54a9e1
%endif
Jarod Wilson 5b6529
Jesse Keating 7a3296
# only deal with configs if we are going to build for the arch
Jesse Keating 7a3296
%ifnarch %nobuildarches
Jesse Keating 7a3296
Jesse Keating 7a3296
%if !%{debugbuildsenabled}
Jesse Keating 7a3296
rm -f kernel-%{version}-*debug.config
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Kyle McMartin 43d64b
%define make make %{?cross_opts}
Kyle McMartin 43d64b
a20ad4
CheckConfigs() {
a20ad4
     ./check_configs.awk $1 $2 > .mismatches
a20ad4
     if [ -s .mismatches ]
a20ad4
     then
a20ad4
	echo "Error: Mismatches found in configuration files"
a20ad4
	cat .mismatches
a20ad4
	exit 1
a20ad4
     fi
a20ad4
}
a20ad4
a20ad4
cp %{SOURCE42} .
b1f098
OPTS=""
Dave Jones 834dba
%if %{listnewconfig_fail}
b1f098
	OPTS="$OPTS -n"
Dave Jones 834dba
%endif
a20ad4
%if %{configmismatch_fail}
b1f098
	OPTS="$OPTS -c"
a20ad4
%endif
b1f098
./process_configs.sh $OPTS kernel %{rpmversion}
b1f098
Jesse Keating 7a3296
# end of kernel config
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
b1f098
cd ..
b1f098
# End of Configs stuff
b1f098
John W. Linville fa580e
# get rid of unwanted files resulting from patch fuzz
John W. Linville fa580e
find . \( -name "*.orig" -o -name "*~" \) -exec rm -f {} \; >/dev/null
John W. Linville fa580e
Dave Jones 246f94
# remove unnecessary SCM files
Dave Jones 246f94
find . -name .gitignore -exec rm -f {} \; >/dev/null
Dave Jones 246f94
Jesse Keating 7a3296
cd ..
Jesse Keating 7a3296
Jesse Keating 7a3296
###
Jesse Keating 7a3296
### build
Jesse Keating 7a3296
###
Jesse Keating 7a3296
%build
Jesse Keating 7a3296
Jesse Keating 7a3296
%if %{with_sparse}
Jesse Keating 7a3296
%define sparse_mflags	C=1
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
cp_vmlinux()
Jesse Keating 7a3296
{
Jesse Keating 7a3296
  eu-strip --remove-comment -o "$2" "$1"
Jesse Keating 7a3296
}
Jesse Keating 7a3296
Jesse Keating 7a3296
BuildKernel() {
Jesse Keating 7a3296
    MakeTarget=$1
Jesse Keating 7a3296
    KernelImage=$2
df3d8e
    Flavour=$4
df3d8e
    DoVDSO=$3
faf252
    Flav=${Flavour:++${Flavour}}
df3d8e
    InstallName=${5:-vmlinuz}
Jesse Keating 7a3296
Jesse Keating 7a3296
    # Pick the right config file for the kernel we're building
Jesse Keating 7a3296
    Config=kernel-%{version}-%{_target_cpu}${Flavour:+-${Flavour}}.config
Kyle McMartin 9fc584
    DevelDir=/usr/src/kernels/%{KVERREL}${Flav}
Jesse Keating 7a3296
Jesse Keating 7a3296
    # When the bootable image is just the ELF kernel, strip it.
Jesse Keating 7a3296
    # We already copy the unstripped file into the debuginfo package.
Jesse Keating 7a3296
    if [ "$KernelImage" = vmlinux ]; then
Jesse Keating 7a3296
      CopyKernel=cp_vmlinux
Jesse Keating 7a3296
    else
Jesse Keating 7a3296
      CopyKernel=cp
Jesse Keating 7a3296
    fi
Jesse Keating 7a3296
Kyle McMartin 9fc584
    KernelVer=%{version}-%{release}.%{_target_cpu}${Flav}
Jesse Keating 7a3296
    echo BUILDING A KERNEL FOR ${Flavour} %{_target_cpu}...
Jesse Keating 7a3296
Josh Boyer 740de5
    %if 0%{?stable_update}
Josh Boyer 740de5
    # make sure SUBLEVEL is incremented on a stable release.  Sigh 3.x.
Josh Boyer 740de5
    perl -p -i -e "s/^SUBLEVEL.*/SUBLEVEL = %{?stablerev}/" Makefile
Josh Boyer 740de5
    %endif
Josh Boyer 740de5
Jesse Keating 7a3296
    # make sure EXTRAVERSION says what we want it to say
Kyle McMartin 9fc584
    perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -%{release}.%{_target_cpu}${Flav}/" Makefile
Jesse Keating 7a3296
Josh Boyer 9e4aea
    # if pre-rc1 devel kernel, must fix up PATCHLEVEL for our versioning scheme
Jesse Keating 7a3296
    %if !0%{?rcrev}
Jesse Keating 7a3296
    %if 0%{?gitrev}
Josh Boyer 9e4aea
    perl -p -i -e 's/^PATCHLEVEL.*/PATCHLEVEL = %{upstream_sublevel}/' Makefile
Jesse Keating 7a3296
    %endif
Jesse Keating 7a3296
    %endif
Jesse Keating 7a3296
Jesse Keating 7a3296
    # and now to start the build process
Jesse Keating 7a3296
f8e9b4
    make %{?make_opts} mrproper
Jesse Keating 7a3296
    cp configs/$Config .config
Jesse Keating 7a3296
149275
    %if %{signkernel}%{signmodules}
18c824
    cp %{SOURCE11} certs/.
Josh Boyer 6e2d2c
    %endif
Josh Boyer 6e2d2c
Jesse Keating 7a3296
    Arch=`head -1 .config | cut -b 3-`
Jesse Keating 7a3296
    echo USING ARCH=$Arch
Jesse Keating 7a3296
f8e9b4
    make %{?make_opts} ARCH=$Arch olddefconfig >/dev/null
f8e9b4
    %{make} %{?make_opts} ARCH=$Arch %{?_smp_mflags} $MakeTarget %{?sparse_mflags} %{?kernel_mflags}
f8e9b4
    %{make} %{?make_opts} ARCH=$Arch %{?_smp_mflags} modules %{?sparse_mflags} || exit 1
783eee
958df3
    mkdir -p $RPM_BUILD_ROOT/%{image_install_path}
958df3
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer
958df3
%if %{with_debuginfo}
958df3
    mkdir -p $RPM_BUILD_ROOT%{debuginfodir}/%{image_install_path}
958df3
%endif
958df3
Kyle McMartin 49ba08
%ifarch %{arm} aarch64
f8e9b4
    %{make} %{?make_opts} ARCH=$Arch dtbs dtbs_install INSTALL_DTBS_PATH=$RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
a96239
    cp -r $RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer $RPM_BUILD_ROOT/lib/modules/$KernelVer/dtb
Kyle McMartin 1c0b00
    find arch/$Arch/boot/dts -name '*.dtb' -type f | xargs rm -f
e6eb2f
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
    # Start installing the results
Jesse Keating 7a3296
    install -m 644 .config $RPM_BUILD_ROOT/boot/config-$KernelVer
958df3
    install -m 644 .config $RPM_BUILD_ROOT/lib/modules/$KernelVer/config
Jesse Keating 7a3296
    install -m 644 System.map $RPM_BUILD_ROOT/boot/System.map-$KernelVer
958df3
    install -m 644 System.map $RPM_BUILD_ROOT/lib/modules/$KernelVer/System.map
Jesse Keating 7a3296
Jesse Keating 7a3296
    # We estimate the size of the initramfs because rpm needs to take this size
Jesse Keating 7a3296
    # into consideration when performing disk space calculations. (See bz #530778)
Jesse Keating 7a3296
    dd if=/dev/zero of=$RPM_BUILD_ROOT/boot/initramfs-$KernelVer.img bs=1M count=20
Jesse Keating 7a3296
Jesse Keating 7a3296
    if [ -f arch/$Arch/boot/zImage.stub ]; then
Jesse Keating 7a3296
      cp arch/$Arch/boot/zImage.stub $RPM_BUILD_ROOT/%{image_install_path}/zImage.stub-$KernelVer || :
958df3
      cp arch/$Arch/boot/zImage.stub $RPM_BUILD_ROOT/lib/modules/$KernelVer/zImage.stub-$KernelVer || :
Jesse Keating 7a3296
    fi
149275
    %if %{signkernel}
d3182f
    # Sign the image if we're using EFI
d3182f
    %pesign -s -i $KernelImage -o vmlinuz.signed
Josh Boyer 42d219
    if [ ! -s vmlinuz.signed ]; then
Josh Boyer 42d219
        echo "pesigning failed"
Josh Boyer 42d219
        exit 1
Josh Boyer 42d219
    fi
d3182f
    mv vmlinuz.signed $KernelImage
d3182f
    %endif
Jesse Keating 7a3296
    $CopyKernel $KernelImage \
e9fda3
                $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
Jesse Keating 7a3296
    chmod 755 $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
958df3
    cp $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer $RPM_BUILD_ROOT/lib/modules/$KernelVer/$InstallName
Jesse Keating 7a3296
Josh Boyer 70f813
    # hmac sign the kernel for FIPS
Josh Boyer 70f813
    echo "Creating hmac file: $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac"
Josh Boyer 70f813
    ls -l $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
Josh Boyer 70f813
    sha512hmac $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer | sed -e "s,$RPM_BUILD_ROOT,," > $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac;
958df3
    cp $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac $RPM_BUILD_ROOT/lib/modules/$KernelVer/.vmlinuz.hmac
Josh Boyer 70f813
Jesse Keating 7a3296
    # Override $(mod-fw) because we don't want it to install any firmware
Kyle McMartin eb0d56
    # we'll get it from the linux-firmware package and we don't want conflicts
f8e9b4
    %{make} %{?make_opts} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_install KERNELRELEASE=$KernelVer mod-fw=
Josh Boyer c2a12c
b1f098
    # add an a noop %%defattr statement 'cause rpm doesn't like empty file list files
b1f098
    echo '%%defattr(-,-,-)' > ../kernel${Flavour:+-${Flavour}}-ldsoconf.list
df3d8e
    if [ $DoVDSO -ne 0 ]; then
f8e9b4
        %{make} %{?make_opts} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT vdso_install KERNELRELEASE=$KernelVer
b1f098
        if [ -s ldconfig-kernel.conf ]; then
b1f098
            install -D -m 444 ldconfig-kernel.conf \
b1f098
                $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernel-$KernelVer.conf
b1f098
            echo /etc/ld.so.conf.d/kernel-$KernelVer.conf >> ../kernel${Flavour:+-${Flavour}}-ldsoconf.list
df3d8e
        fi
df3d8e
        rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/vdso/.build-id
Jesse Keating 7a3296
    fi
Jesse Keating 7a3296
Jesse Keating 7a3296
    # And save the headers/makefiles etc for building modules against
Jesse Keating 7a3296
    #
Jesse Keating 7a3296
    # This all looks scary, but the end result is supposed to be:
Jesse Keating 7a3296
    # * all arch relevant include/ files
Jesse Keating 7a3296
    # * all Makefile/Kconfig files
Jesse Keating 7a3296
    # * all script/ files
Jesse Keating 7a3296
Jesse Keating 7a3296
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a3296
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/source
Jesse Keating 7a3296
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a3296
    (cd $RPM_BUILD_ROOT/lib/modules/$KernelVer ; ln -s build source)
Jesse Keating 7a3296
    # dirs for additional modules per module-init-tools, kbuild/modules.txt
Jesse Keating 7a3296
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/extra
Jesse Keating 7a3296
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/updates
Jesse Keating 7a3296
    # first copy everything
Jesse Keating 7a3296
    cp --parents `find  -type f -name "Makefile*" -o -name "Kconfig*"` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a3296
    cp Module.symvers $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a3296
    cp System.map $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a3296
    if [ -s Module.markers ]; then
Jesse Keating 7a3296
      cp Module.markers $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a3296
    fi
Jesse Keating 7a3296
    # then drop all but the needed Makefiles/Kconfig files
Jesse Keating 7a3296
    rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Documentation
Jesse Keating 7a3296
    rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts
Jesse Keating 7a3296
    rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
Jesse Keating 7a3296
    cp .config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a3296
    cp -a scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
803c5b
    if [ -f tools/objtool/objtool ]; then
b1cf8c
      cp -a tools/objtool/objtool $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/tools/objtool/ || :
382c37
      # these are a few files associated with objtool
382c37
      cp -a --parents tools/build/Build.include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
382c37
      cp -a --parents tools/build/Build $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
382c37
      cp -a --parents tools/build/fixdep.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
382c37
      cp -a --parents tools/scripts/utilities.mak $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
382c37
      # also more than necessary but it's not that many more files
382c37
      cp -a --parents tools/objtool/* $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
382c37
      cp -a --parents tools/lib/str_error_r.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
382c37
      cp -a --parents tools/lib/string.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
382c37
      cp -a --parents tools/lib/subcmd/* $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
803c5b
    fi
Jesse Keating 7a3296
    if [ -d arch/$Arch/scripts ]; then
Jesse Keating 7a3296
      cp -a arch/$Arch/scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch} || :
Jesse Keating 7a3296
    fi
Jesse Keating 7a3296
    if [ -f arch/$Arch/*lds ]; then
Jesse Keating 7a3296
      cp -a arch/$Arch/*lds $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch}/ || :
Jesse Keating 7a3296
    fi
f3815d
    if [ -f arch/%{asmarch}/kernel/module.lds ]; then
f3815d
      cp -a --parents arch/%{asmarch}/kernel/module.lds $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
f3815d
    fi
Jesse Keating 7a3296
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*.o
Jesse Keating 7a3296
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*/*.o
9a6acd
%ifarch %{power64}
Jesse Keating 7a3296
    cp -a --parents arch/powerpc/lib/crtsavres.[So] $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
    if [ -d arch/%{asmarch}/include ]; then
Jesse Keating 7a3296
      cp -a --parents arch/%{asmarch}/include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Jesse Keating 7a3296
    fi
ea6c81
%ifarch aarch64
ea6c81
    # arch/arm64/include/asm/xen references arch/arm
ea6c81
    cp -a --parents arch/arm/include/asm/xen $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
ec3031
    # arch/arm64/include/asm/opcodes.h references arch/arm
ec3031
    cp -a --parents arch/arm/include/asm/opcodes.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
ea6c81
%endif
3b024e
    # include the machine specific headers for ARM variants, if available.
3b024e
%ifarch %{arm}
3b024e
    if [ -d arch/%{asmarch}/mach-${Flavour}/include ]; then
3b024e
      cp -a --parents arch/%{asmarch}/mach-${Flavour}/include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
3b024e
    fi
19c3eb
    # include a few files for 'make prepare'
19c3eb
    cp -a --parents arch/arm/tools/gen-mach-types $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/arm/tools/mach-types $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
3b024e
%endif
Jesse Keating 7a3296
    cp -a include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
19c3eb
%ifarch %{ix86} x86_64
19c3eb
    # files for 'make prepare' to succeed with kernel-devel
19c3eb
    cp -a --parents arch/x86/entry/syscalls/syscall_32.tbl $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/entry/syscalls/syscalltbl.sh $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/entry/syscalls/syscallhdr.sh $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/entry/syscalls/syscall_64.tbl $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/tools/relocs_32.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/tools/relocs_64.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/tools/relocs.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/tools/relocs_common.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/tools/relocs.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
382c37
    # Yes this is more includes than we probably need. Feel free to sort out
382c37
    # dependencies if you so choose.
382c37
    cp -a --parents tools/include/* $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/purgatory/purgatory.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/purgatory/stack.S $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/purgatory/string.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/purgatory/setup-x86_64.S $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/purgatory/entry64.S $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/boot/string.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/boot/string.c $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
    cp -a --parents arch/x86/boot/ctype.h $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
19c3eb
%endif
Jesse Keating 7a3296
    # Make sure the Makefile and version.h have a matching timestamp so that
Jesse Keating 7a3296
    # external modules can be built
1ef1d3
    touch -r $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Makefile $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/generated/uapi/linux/version.h
Dave Jones c80928
Jesse Keating 7a3296
    # Copy .config to include/config/auto.conf so "make prepare" is unnecessary.
Jesse Keating 7a3296
    cp $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/.config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/config/auto.conf
Jesse Keating 7a3296
Kyle McMartin 1bfd59
%if %{with_debuginfo}
debc7c
    eu-readelf -n vmlinux | grep "Build ID" | awk '{print $NF}' > vmlinux.id
debc7c
    cp vmlinux.id $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/vmlinux.id
Jesse Keating 7a3296
Jesse Keating 7a3296
    #
Jesse Keating 7a3296
    # save the vmlinux file for kernel debugging into the kernel-debuginfo rpm
Jesse Keating 7a3296
    #
Jesse Keating 7a3296
    mkdir -p $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer
Jesse Keating 7a3296
    cp vmlinux $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
    find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name "*.ko" -type f >modnames
Jesse Keating 7a3296
Jesse Keating 7a3296
    # mark modules executable so that strip-to-file can strip them
Jesse Keating 7a3296
    xargs --no-run-if-empty chmod u+x < modnames
Jesse Keating 7a3296
Jesse Keating 7a3296
    # Generate a list of modules for block and networking.
Jesse Keating 7a3296
Dave Jones b89c80
    grep -F /drivers/ modnames | xargs --no-run-if-empty nm -upA |
Jesse Keating 7a3296
    sed -n 's,^.*/\([^/]*\.ko\):  *U \(.*\)$,\1 \2,p' > drivers.undef
Jesse Keating 7a3296
Jesse Keating 7a3296
    collect_modules_list()
Jesse Keating 7a3296
    {
Jesse Keating 7a3296
      sed -r -n -e "s/^([^ ]+) \\.?($2)\$/\\1/p" drivers.undef |
Kyle McMartin cdb790
        LC_ALL=C sort -u > $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.$1
Kyle McMartin cdb790
      if [ ! -z "$3" ]; then
Kyle McMartin 399410
        sed -r -e "/^($3)\$/d" -i $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.$1
Kyle McMartin cdb790
      fi
Jesse Keating 7a3296
    }
Jesse Keating 7a3296
Jesse Keating 7a3296
    collect_modules_list networking \
e9fda3
      'register_netdev|ieee80211_register_hw|usbnet_probe|phy_driver_register|rt(l_|2x00)(pci|usb)_probe|register_netdevice'
Jesse Keating 7a3296
    collect_modules_list block \
e9fda3
      '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'
Jesse Keating 7a3296
    collect_modules_list drm \
e9fda3
      'drm_open|drm_init'
Jesse Keating 7a3296
    collect_modules_list modesetting \
e9fda3
      'drm_crtc_init'
Jesse Keating 7a3296
Jesse Keating 7a3296
    # detect missing or incorrect license tags
Kyle McMartin 21284e
    ( find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name '*.ko' | xargs /sbin/modinfo -l | \
Kyle McMartin 21284e
        grep -E -v 'GPL( v2)?$|Dual BSD/GPL$|Dual MPL/GPL$|GPL and additional rights$' ) && exit 1
Jesse Keating 7a3296
Kyle McMartin 634522
    # remove files that will be auto generated by depmod at rpm -i time
Kyle McMartin 634522
    pushd $RPM_BUILD_ROOT/lib/modules/$KernelVer/
Kyle McMartin 634522
        rm -f modules.{alias*,builtin.bin,dep*,*map,symbols*,devname,softdep}
Kyle McMartin 634522
    popd
Kyle McMartin 634522
Josh Boyer 0b4338
    # Call the modules-extra script to move things around
Josh Boyer 0b4338
    %{SOURCE17} $RPM_BUILD_ROOT/lib/modules/$KernelVer %{SOURCE16}
Josh Boyer b8b278
94ce4e
    #
aa7351
    # Generate the kernel-core and kernel-modules files lists
94ce4e
    #
94ce4e
94ce4e
    # Copy the System.map file for depmod to use, and create a backup of the
94ce4e
    # full module tree so we can restore it after we're done filtering
94ce4e
    cp System.map $RPM_BUILD_ROOT/.
94ce4e
    pushd $RPM_BUILD_ROOT
94ce4e
    mkdir restore
94ce4e
    cp -r lib/modules/$KernelVer/* restore/.
94ce4e
94ce4e
    # don't include anything going into k-m-e in the file lists
94ce4e
    rm -rf lib/modules/$KernelVer/extra
94ce4e
aa7351
    # Find all the module files and filter them out into the core and modules
aa7351
    # lists.  This actually removes anything going into -modules from the dir.
94ce4e
    find lib/modules/$KernelVer/kernel -name *.ko | sort -n > modules.list
e9fda3
    cp $RPM_SOURCE_DIR/filter-*.sh .
94ce4e
    %{SOURCE99} modules.list %{_target_cpu}
e9fda3
    rm filter-*.sh
94ce4e
94ce4e
    # Run depmod on the resulting module tree and make sure it isn't broken
069d85
    depmod -b . -aeF ./System.map $KernelVer &> depmod.out
069d85
    if [ -s depmod.out ]; then
069d85
        echo "Depmod failure"
069d85
        cat depmod.out
069d85
        exit 1
069d85
    else
069d85
        rm depmod.out
069d85
    fi
94ce4e
    # remove files that will be auto generated by depmod at rpm -i time
94ce4e
    pushd $RPM_BUILD_ROOT/lib/modules/$KernelVer/
94ce4e
        rm -f modules.{alias*,builtin.bin,dep*,*map,symbols*,devname,softdep}
94ce4e
    popd
94ce4e
94ce4e
    # Go back and find all of the various directories in the tree.  We use this
94ce4e
    # for the dir lists in kernel-core
Paul Bolle fc4b4c
    find lib/modules/$KernelVer/kernel -mindepth 1 -type d | sort -n > module-dirs.list
94ce4e
94ce4e
    # Cleanup
94ce4e
    rm System.map
94ce4e
    cp -r restore/* lib/modules/$KernelVer/.
94ce4e
    rm -rf restore
94ce4e
    popd
94ce4e
94ce4e
    # Make sure the files lists start with absolute paths or rpmbuild fails.
94ce4e
    # Also add in the dir entries
Kyle McMartin 892262
    sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/k-d.list > ../kernel${Flavour:+-${Flavour}}-modules.list
Kyle McMartin 892262
    sed -e 's/^lib*/%dir \/lib/' %{?zipsed} $RPM_BUILD_ROOT/module-dirs.list > ../kernel${Flavour:+-${Flavour}}-core.list
Kyle McMartin 892262
    sed -e 's/^lib*/\/lib/' %{?zipsed} $RPM_BUILD_ROOT/modules.list >> ../kernel${Flavour:+-${Flavour}}-core.list
94ce4e
94ce4e
    # Cleanup
94ce4e
    rm -f $RPM_BUILD_ROOT/k-d.list
94ce4e
    rm -f $RPM_BUILD_ROOT/modules.list
94ce4e
    rm -f $RPM_BUILD_ROOT/module-dirs.list
94ce4e
Josh Boyer f0f4ff
%if %{signmodules}
Kyle McMartin 249d64
    # Save the signing keys so we can sign the modules in __modsign_install_post
18c824
    cp certs/signing_key.pem certs/signing_key.pem.sign${Flav}
18c824
    cp certs/signing_key.x509 certs/signing_key.x509.sign${Flav}
Josh Boyer f0f4ff
%endif
Josh Boyer f0f4ff
Jesse Keating 7a3296
    # Move the devel headers out of the root file system
Kyle McMartin f6c1ae
    mkdir -p $RPM_BUILD_ROOT/usr/src/kernels
Jesse Keating 7a3296
    mv $RPM_BUILD_ROOT/lib/modules/$KernelVer/build $RPM_BUILD_ROOT/$DevelDir
Josh Boyer bddef7
Josh Boyer bddef7
    # This is going to create a broken link during the build, but we don't use
Josh Boyer bddef7
    # it after this point.  We need the link to actually point to something
Josh Boyer bddef7
    # when kernel-devel is installed, and a relative link doesn't work across
Josh Boyer bddef7
    # the F17 UsrMove feature.
Josh Boyer bddef7
    ln -sf $DevelDir $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Kyle McMartin 4b3b40
Kyle McMartin 4b3b40
    # prune junk from kernel-devel
Kyle McMartin 4b3b40
    find $RPM_BUILD_ROOT/usr/src/kernels -name ".*.cmd" -exec rm -f {} \;
b1f098
b1f098
    # build a BLS config for this kernel
b1f098
    %{SOURCE43} "$KernelVer" "$RPM_BUILD_ROOT" "%{?variant}"
Jesse Keating 7a3296
}
Jesse Keating 7a3296
Jesse Keating 7a3296
###
Jesse Keating 7a3296
# DO it...
Jesse Keating 7a3296
###
Jesse Keating 7a3296
Jesse Keating 7a3296
# prepare directories
Jesse Keating 7a3296
rm -rf $RPM_BUILD_ROOT
Jesse Keating 7a3296
mkdir -p $RPM_BUILD_ROOT/boot
Jesse Keating 7a3296
mkdir -p $RPM_BUILD_ROOT%{_libexecdir}
Jesse Keating 7a3296
Josh Boyer 83337c
cd linux-%{KVERREL}
Jesse Keating 7a3296
df3d8e
Jesse Keating 7a3296
%if %{with_debug}
df3d8e
BuildKernel %make_target %kernel_image %{_use_vdso} debug
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
%if %{with_pae_debug}
df3d8e
BuildKernel %make_target %kernel_image %{use_vdso} %{pae}debug
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
%if %{with_pae}
df3d8e
BuildKernel %make_target %kernel_image %{use_vdso} %{pae}
986a9f
%endif
986a9f
Jesse Keating 7a3296
%if %{with_up}
df3d8e
BuildKernel %make_target %kernel_image %{_use_vdso}
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Josh Boyer f0f4ff
# In the modsign case, we do 3 things.  1) We check the "flavour" and hard
Josh Boyer f0f4ff
# code the value in the following invocations.  This is somewhat sub-optimal
Josh Boyer f0f4ff
# but we're doing this inside of an RPM macro and it isn't as easy as it
Josh Boyer f0f4ff
# could be because of that.  2) We restore the .tmp_versions/ directory from
Josh Boyer f0f4ff
# the one we saved off in BuildKernel above.  This is to make sure we're
Josh Boyer f0f4ff
# signing the modules we actually built/installed in that flavour.  3) We
Kyle McMartin d0a8cf
# grab the arch and invoke mod-sign.sh command to actually sign the modules.
Josh Boyer f0f4ff
#
Josh Boyer f0f4ff
# We have to do all of those things _after_ find-debuginfo runs, otherwise
Josh Boyer f0f4ff
# that will strip the signature off of the modules.
Josh Boyer f0f4ff
Kyle McMartin 92559e
%define __modsign_install_post \
Kyle McMartin f9a5fa
  if [ "%{signmodules}" -eq "1" ]; then \
Kyle McMartin 63cb38
    if [ "%{with_pae}" -ne "0" ]; then \
18c824
      %{modsign_cmd} certs/signing_key.pem.sign+%{pae} certs/signing_key.x509.sign+%{pae} $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+%{pae}/ \
Josh Boyer f0f4ff
    fi \
Kyle McMartin 63cb38
    if [ "%{with_debug}" -ne "0" ]; then \
18c824
      %{modsign_cmd} certs/signing_key.pem.sign+debug certs/signing_key.x509.sign+debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+debug/ \
Josh Boyer f0f4ff
    fi \
Kyle McMartin 63cb38
    if [ "%{with_pae_debug}" -ne "0" ]; then \
18c824
      %{modsign_cmd} certs/signing_key.pem.sign+%{pae}debug certs/signing_key.x509.sign+%{pae}debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}+%{pae}debug/ \
Josh Boyer f0f4ff
    fi \
Kyle McMartin f9a5fa
    if [ "%{with_up}" -ne "0" ]; then \
18c824
      %{modsign_cmd} certs/signing_key.pem.sign certs/signing_key.x509.sign $RPM_BUILD_ROOT/lib/modules/%{KVERREL}/ \
Josh Boyer f0f4ff
    fi \
Josh Boyer f0f4ff
  fi \
Kyle McMartin 892262
  if [ "%{zipmodules}" -eq "1" ]; then \
Kyle McMartin 892262
    find $RPM_BUILD_ROOT/lib/modules/ -type f -name '*.ko' | xargs xz; \
Kyle McMartin 892262
  fi \
Jesse Keating 7a3296
%{nil}
Jesse Keating 7a3296
Kyle McMartin 92559e
###
Kyle McMartin 92559e
### Special hacks for debuginfo subpackages.
Kyle McMartin 92559e
###
Kyle McMartin 92559e
Kyle McMartin 92559e
# This macro is used by %%install, so we must redefine it before that.
Kyle McMartin 92559e
%define debug_package %{nil}
Kyle McMartin 92559e
Kyle McMartin 92559e
%if %{with_debuginfo}
Kyle McMartin 92559e
Jesse Keating 7a3296
%ifnarch noarch
Jesse Keating 7a3296
%global __debug_package 1
Jesse Keating 7a3296
%files -f debugfiles.list debuginfo-common-%{_target_cpu}
Jesse Keating 7a3296
%endif
Kyle McMartin 92559e
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Kyle McMartin 92559e
#
Kyle McMartin 92559e
# Disgusting hack alert! We need to ensure we sign modules *after* all
Kyle McMartin 92559e
# invocations of strip occur, which is in __debug_install_post if
Kyle McMartin 92559e
# find-debuginfo.sh runs, and __os_install_post if not.
Kyle McMartin 92559e
#
Kyle McMartin 92559e
%define __spec_install_post \
Kyle McMartin 92559e
  %{?__debug_package:%{__debug_install_post}}\
Kyle McMartin 92559e
  %{__arch_install_post}\
Kyle McMartin 92559e
  %{__os_install_post}\
Kyle McMartin 92559e
  %{__modsign_install_post}
Kyle McMartin 92559e
Jesse Keating 7a3296
###
Jesse Keating 7a3296
### install
Jesse Keating 7a3296
###
Jesse Keating 7a3296
Jesse Keating 7a3296
%install
Jesse Keating 7a3296
Josh Boyer 83337c
cd linux-%{KVERREL}
Jesse Keating 7a3296
Josh Boyer 8addb5
# We have to do the headers install before the tools install because the
Josh Boyer 8addb5
# kernel headers_install will remove any header files in /usr/include that
Josh Boyer 8addb5
# it doesn't install itself.
Jesse Keating 7a3296
Jesse Keating 7a3296
%if %{with_headers}
Jesse Keating 7a3296
# Install kernel headers
Jesse Keating 7a3296
make ARCH=%{hdrarch} INSTALL_HDR_PATH=$RPM_BUILD_ROOT/usr headers_install
Jesse Keating 7a3296
Jesse Keating 7a3296
find $RPM_BUILD_ROOT/usr/include \
Jesse Keating 7a3296
     \( -name .install -o -name .check -o \
e9fda3
        -name ..install.cmd -o -name ..check.cmd \) | xargs rm -f
Jesse Keating 7a3296
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
f65f3f
%if %{with_cross_headers}
f65f3f
mkdir -p $RPM_BUILD_ROOT/usr/tmp-headers
f65f3f
make ARCH=%{hdrarch} INSTALL_HDR_PATH=$RPM_BUILD_ROOT/usr/tmp-headers headers_install_all
f65f3f
f65f3f
find $RPM_BUILD_ROOT/usr/tmp-headers/include \
f65f3f
     \( -name .install -o -name .check -o \
e9fda3
        -name ..install.cmd -o -name ..check.cmd \) | xargs rm -f
f65f3f
f65f3f
# Copy all the architectures we care about to their respective asm directories
f65f3f
for arch in arm arm64 powerpc s390 x86 ; do
f65f3f
mkdir -p $RPM_BUILD_ROOT/usr/${arch}-linux-gnu/include
231008
mv $RPM_BUILD_ROOT/usr/tmp-headers/include/arch-${arch}/asm $RPM_BUILD_ROOT/usr/${arch}-linux-gnu/include/
f65f3f
cp -a $RPM_BUILD_ROOT/usr/tmp-headers/include/asm-generic $RPM_BUILD_ROOT/usr/${arch}-linux-gnu/include/.
f65f3f
done
f65f3f
f65f3f
# Remove the rest of the architectures
f65f3f
rm -rf $RPM_BUILD_ROOT/usr/tmp-headers/include/arch*
f65f3f
rm -rf $RPM_BUILD_ROOT/usr/tmp-headers/include/asm-*
f65f3f
f65f3f
# Copy the rest of the headers over
f65f3f
for arch in arm arm64 powerpc s390 x86 ; do
f65f3f
cp -a $RPM_BUILD_ROOT/usr/tmp-headers/include/* $RPM_BUILD_ROOT/usr/${arch}-linux-gnu/include/.
f65f3f
done
f65f3f
f65f3f
rm -rf $RPM_BUILD_ROOT/usr/tmp-headers
f65f3f
%endif
f65f3f
Jesse Keating 7a3296
%if %{with_bootwrapper}
Jesse Keating 7a3296
make DESTDIR=$RPM_BUILD_ROOT bootwrapper_install WRAPPER_OBJDIR=%{_libdir}/kernel-wrapper WRAPPER_DTSDIR=%{_libdir}/kernel-wrapper/dts
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
###
Jesse Keating 7a3296
### clean
Jesse Keating 7a3296
###
Jesse Keating 7a3296
Jesse Keating 7a3296
###
Jesse Keating 7a3296
### scripts
Jesse Keating 7a3296
###
Jesse Keating 7a3296
Jesse Keating 7a3296
#
Jesse Keating 7a3296
# This macro defines a %%post script for a kernel*-devel package.
Jesse Keating 7a3296
#	%%kernel_devel_post [<subpackage>]
Jesse Keating 7a3296
#
Jesse Keating 7a3296
%define kernel_devel_post() \
Jesse Keating 7a3296
%{expand:%%post %{?1:%{1}-}devel}\
Jesse Keating 7a3296
if [ -f /etc/sysconfig/kernel ]\
Jesse Keating 7a3296
then\
Jesse Keating 7a3296
    . /etc/sysconfig/kernel || exit $?\
Jesse Keating 7a3296
fi\
Jesse Keating 7a3296
if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ]\
Jesse Keating 7a3296
then\
faf252
    (cd /usr/src/kernels/%{KVERREL}%{?1:+%{1}} &&\
Jesse Keating 7a3296
     /usr/bin/find . -type f | while read f; do\
Jesse Keating 7a3296
       hardlink -c /usr/src/kernels/*.fc*.*/$f $f\
Jesse Keating 7a3296
     done)\
Jesse Keating 7a3296
fi\
Jesse Keating 7a3296
%{nil}
Jesse Keating 7a3296
Josh Boyer b8b278
#
Josh Boyer b8b278
# This macro defines a %%post script for a kernel*-modules-extra package.
94ce4e
# It also defines a %%postun script that does the same thing.
Kyle McMartin de50ed
#	%%kernel_modules_extra_post [<subpackage>]
Josh Boyer b8b278
#
Josh Boyer b8b278
%define kernel_modules_extra_post() \
Josh Boyer b8b278
%{expand:%%post %{?1:%{1}-}modules-extra}\
faf252
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
94ce4e
%{nil}\
94ce4e
%{expand:%%postun %{?1:%{1}-}modules-extra}\
94ce4e
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
94ce4e
%{nil}
94ce4e
94ce4e
#
aa7351
# This macro defines a %%post script for a kernel*-modules package.
94ce4e
# It also defines a %%postun script that does the same thing.
aa7351
#	%%kernel_modules_post [<subpackage>]
94ce4e
#
aa7351
%define kernel_modules_post() \
aa7351
%{expand:%%post %{?1:%{1}-}modules}\
94ce4e
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
94ce4e
%{nil}\
aa7351
%{expand:%%postun %{?1:%{1}-}modules}\
94ce4e
/sbin/depmod -a %{KVERREL}%{?1:+%{1}}\
Josh Boyer b8b278
%{nil}
Josh Boyer 8addb5
Jesse Keating 7a3296
# This macro defines a %%posttrans script for a kernel package.
Jesse Keating 7a3296
#	%%kernel_variant_posttrans [<subpackage>]
Jesse Keating 7a3296
# More text can follow to go at the end of this variant's %%post.
Jesse Keating 7a3296
#
Jesse Keating 7a3296
%define kernel_variant_posttrans() \
94ce4e
%{expand:%%posttrans %{?1:%{1}-}core}\
958df3
/bin/kernel-install add %{KVERREL}%{?1:+%{1}} /lib/modules/%{KVERREL}%{?1:+%{1}}/vmlinuz || exit $?\
Jesse Keating 7a3296
%{nil}
Jesse Keating 7a3296
Jesse Keating 7a3296
#
Jesse Keating 7a3296
# This macro defines a %%post script for a kernel package and its devel package.
Jesse Keating 7a3296
#	%%kernel_variant_post [-v <subpackage>] [-r <replace>]
Jesse Keating 7a3296
# More text can follow to go at the end of this variant's %%post.
Jesse Keating 7a3296
#
Jesse Keating 7a3296
%define kernel_variant_post(v:r:) \
Jesse Keating 7a3296
%{expand:%%kernel_devel_post %{?-v*}}\
aa7351
%{expand:%%kernel_modules_post %{?-v*}}\
Josh Boyer b8b278
%{expand:%%kernel_modules_extra_post %{?-v*}}\
Jesse Keating 7a3296
%{expand:%%kernel_variant_posttrans %{?-v*}}\
94ce4e
%{expand:%%post %{?-v*:%{-v*}-}core}\
Jesse Keating 7a3296
%{-r:\
Jesse Keating 7a3296
if [ `uname -i` == "x86_64" -o `uname -i` == "i386" ] &&\
Jesse Keating 7a3296
   [ -f /etc/sysconfig/kernel ]; then\
Jesse Keating 7a3296
  /bin/sed -r -i -e 's/^DEFAULTKERNEL=%{-r*}$/DEFAULTKERNEL=kernel%{?-v:-%{-v*}}/' /etc/sysconfig/kernel || exit $?\
Jesse Keating 7a3296
fi}\
Jesse Keating 7a3296
%{nil}
Jesse Keating 7a3296
Jesse Keating 7a3296
#
Jesse Keating 7a3296
# This macro defines a %%preun script for a kernel package.
Jesse Keating 7a3296
#	%%kernel_variant_preun <subpackage>
Jesse Keating 7a3296
#
Jesse Keating 7a3296
%define kernel_variant_preun() \
94ce4e
%{expand:%%preun %{?1:%{1}-}core}\
958df3
/bin/kernel-install remove %{KVERREL}%{?1:+%{1}} /lib/modules/%{KVERREL}%{?1:+%{1}}/vmlinuz || exit $?\
Jesse Keating 7a3296
%{nil}
Jesse Keating 7a3296
Jesse Keating 7a3296
%kernel_variant_preun
Jesse Keating 7a3296
%kernel_variant_post -r kernel-smp
Jesse Keating 7a3296
f8e9b4
%if %{with_pae}
Kyle McMartin bc5f99
%kernel_variant_preun %{pae}
Kyle McMartin bc5f99
%kernel_variant_post -v %{pae} -r (kernel|kernel-smp)
Kyle McMartin bc5f99
Kyle McMartin bc5f99
%kernel_variant_post -v %{pae}debug -r (kernel|kernel-smp)
Kyle McMartin bc5f99
%kernel_variant_preun %{pae}debug
f8e9b4
%endif
Jesse Keating 7a3296
Jesse Keating 7a3296
%kernel_variant_preun debug
Jesse Keating 7a3296
%kernel_variant_post -v debug
Jesse Keating 7a3296
Jesse Keating 7a3296
if [ -x /sbin/ldconfig ]
Jesse Keating 7a3296
then
Jesse Keating 7a3296
    /sbin/ldconfig -X || exit $?
Jesse Keating 7a3296
fi
Jesse Keating 7a3296
Jesse Keating 7a3296
###
Jesse Keating 7a3296
### file lists
Jesse Keating 7a3296
###
Jesse Keating 7a3296
Jesse Keating 7a3296
%if %{with_headers}
Jesse Keating 7a3296
%files headers
Jesse Keating 7a3296
/usr/include/*
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
f65f3f
%if %{with_cross_headers}
f65f3f
%files cross-headers
f65f3f
/usr/*-linux-gnu/include/*
f65f3f
%endif
f65f3f
Jesse Keating 7a3296
%if %{with_bootwrapper}
Jesse Keating 7a3296
%files bootwrapper
Jesse Keating 7a3296
/usr/sbin/*
Jesse Keating 7a3296
%{_libdir}/kernel-wrapper
Jesse Keating 7a3296
%endif
Jesse Keating 7a3296
94ce4e
# empty meta-package
94ce4e
%files
Dave Jones 166b79
# This is %%{image_install_path} on an arch where that includes ELF files,
Jesse Keating 7a3296
# or empty otherwise.
Jesse Keating 7a3296
%define elf_image_install_path %{?kernel_image_elf:%{image_install_path}}
Jesse Keating 7a3296
Jesse Keating 7a3296
#
Jesse Keating 7a3296
# This macro defines the %%files sections for a kernel package
Jesse Keating 7a3296
# and its devel and debuginfo packages.
Jesse Keating 7a3296
#	%%kernel_variant_files [-k vmlinux] <condition> <subpackage>
Jesse Keating 7a3296
#
Jesse Keating 7a3296
%define kernel_variant_files(k:) \
df3d8e
%if %{2}\
b1f098
%{expand:%%files -f kernel-%{?3:%{3}-}core.list %{?1:-f kernel-%{?3:%{3}-}ldsoconf.list} %{?3:%{3}-}core}\
d23e53
%{!?_licensedir:%global license %%doc}\
b1f098
%license linux-%{KVERREL}/COPYING-%{version}\
df3d8e
/lib/modules/%{KVERREL}%{?3:+%{3}}/%{?-k:%{-k*}}%{!?-k:vmlinuz}\
df3d8e
%ghost /%{image_install_path}/%{?-k:%{-k*}}%{!?-k:vmlinuz}-%{KVERREL}%{?3:+%{3}}\
df3d8e
/lib/modules/%{KVERREL}%{?3:+%{3}}/.vmlinuz.hmac \
df3d8e
%ghost /%{image_install_path}/.vmlinuz-%{KVERREL}%{?3:+%{3}}.hmac \
Kyle McMartin 49ba08
%ifarch %{arm} aarch64\
df3d8e
/lib/modules/%{KVERREL}%{?3:+%{3}}/dtb \
df3d8e
%ghost /%{image_install_path}/dtb-%{KVERREL}%{?3:+%{3}} \
783eee
%endif\
df3d8e
%attr(600,root,root) /lib/modules/%{KVERREL}%{?3:+%{3}}/System.map\
df3d8e
%ghost /boot/System.map-%{KVERREL}%{?3:+%{3}}\
df3d8e
/lib/modules/%{KVERREL}%{?3:+%{3}}/config\
df3d8e
%ghost /boot/config-%{KVERREL}%{?3:+%{3}}\
df3d8e
%ghost /boot/initramfs-%{KVERREL}%{?3:+%{3}}.img\
b7897a
%dir /lib/modules\
df3d8e
%dir /lib/modules/%{KVERREL}%{?3:+%{3}}\
df3d8e
%dir /lib/modules/%{KVERREL}%{?3:+%{3}}/kernel\
df3d8e
/lib/modules/%{KVERREL}%{?3:+%{3}}/build\
df3d8e
/lib/modules/%{KVERREL}%{?3:+%{3}}/source\
df3d8e
/lib/modules/%{KVERREL}%{?3:+%{3}}/updates\
b1f098
/lib/modules/%{KVERREL}%{?3:+%{3}}/bls.conf\
df3d8e
%if %{1}\
df3d8e
/lib/modules/%{KVERREL}%{?3:+%{3}}/vdso\
Jesse Keating 7a3296
%endif\
df3d8e
/lib/modules/%{KVERREL}%{?3:+%{3}}/modules.*\
df3d8e
%{expand:%%files -f kernel-%{?3:%{3}-}modules.list %{?3:%{3}-}modules}\
df3d8e
%{expand:%%files %{?3:%{3}-}devel}\
a78151
%defverify(not mtime)\
df3d8e
/usr/src/kernels/%{KVERREL}%{?3:+%{3}}\
df3d8e
%{expand:%%files %{?3:%{3}-}modules-extra}\
df3d8e
/lib/modules/%{KVERREL}%{?3:+%{3}}/extra\
Jesse Keating 7a3296
%if %{with_debuginfo}\
Jesse Keating 7a3296
%ifnarch noarch\
df3d8e
%{expand:%%files -f debuginfo%{?3}.list %{?3:%{3}-}debuginfo}\
Jesse Keating 7a3296
%endif\
Jesse Keating 7a3296
%endif\
df3d8e
%if %{?3:1} %{!?3:0}\
df3d8e
%{expand:%%files %{3}}\
335206
%endif\
Jesse Keating 7a3296
%endif\
Jesse Keating 7a3296
%{nil}
Jesse Keating 7a3296
37d074
%kernel_variant_files %{_use_vdso} %{with_up}
37d074
%kernel_variant_files %{_use_vdso} %{with_debug} debug
df3d8e
%kernel_variant_files %{use_vdso} %{with_pae} %{pae}
df3d8e
%kernel_variant_files %{use_vdso} %{with_pae_debug} %{pae}debug
Jesse Keating 7a3296
Jesse Keating 7a3296
# plz don't put in a version string unless you're going to tag
Jesse Keating 7a3296
# and build.
Dave Jones 1d43b9
#
2117ac
#
Jesse Keating 7a3296
%changelog
Jeremy Cline 5e48c7
* Wed Nov 21 2018 Jeremy Cline <jcline@redhat.com> - 4.18.20-100
Jeremy Cline 5e48c7
- Linux v4.18.20
Jeremy Cline 5e48c7
Jeremy Cline c689c4
* Wed Nov 14 2018 Jeremy Cline <jcline@redhat.com> - 4.18.19-100
Jeremy Cline c689c4
- Linux v4.18.19
Jeremy Cline c689c4
Jeremy Cline 58b771
* Wed Nov 14 2018 Jeremy Cline <jcline@redhat.com>
Jeremy Cline 58b771
- Fix CVE-2018-18710 (rhbz 1645140 1648485)
Jeremy Cline 58b771
4f3ff8
* Mon Nov 12 2018 Laura Abbott <labbott@redhat.com> - 4.18.18-100
4f3ff8
- Linux v4.18.18
4f3ff8
0adcee
* Mon Nov 05 2018 Laura Abbott <labbott@redhat.com> - 4.18.17-100
0adcee
- Linux v4.18.17
0adcee
0c5656
* Tue Oct 23 2018 Laura Abbott <labbott@redhat.com>
0c5656
- Add i915 eDP fixes
0c5656
fce2df
* Sat Oct 20 2018 Peter Robinson <pbrobinson@fedoraproject.org> 4.18.16-100
fce2df
- Linux v4.18.16
e75be0
- Fix network on some i.MX6 devices (rhbz 1628209)
e75be0
dea49a
* Thu Oct 18 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.18.15-100
dea49a
- Linux v4.18.15
dea49a
d710a9
* Mon Oct 15 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.18.14-100
d710a9
- Linux v4.18.14
d710a9
4a998d
* Wed Oct 10 2018 Laura Abbott <labbott@redhat.com> - 4.18.13-300
4a998d
- Linux v4.18.13
4a998d
fe053a
* Mon Oct 08 2018 Justin M. Forbes <jforbes@fedoraproject.org>
fe053a
- Revert drm/amd/pp: Send khz clock values to DC for smu7/8 (rhbz 1636249)
fe053a
d2e4e7
* Thu Oct 04 2018 Laura Abbott <labbott@redhat.com> - 4.18.12-100
d2e4e7
- Linux v4.18.12
d2e4e7
f4b36f
* Wed Oct 03 2018 Justin M. Forbes <jforbes@fedoraproject.org>
f4b36f
- Fix arm64 kvm priv escalation (rhbz 1635475 1635476)
f4b36f
24bd8d
* Mon Oct 01 2018 Laura Abbott <labbott@redhat.com>
24bd8d
- Disable CONFIG_CRYPTO_DEV_SP_PSP (rhbz 1608242)
24bd8d
e7a03f
* Mon Oct  1 2018 Laura Abbott <labbott@redhat.com>
e7a03f
- Fix for Intel Sensor Hub (rhbz 1634250)
e7a03f
a9f8a0
* Sun Sep 30 2018 Laura Abbott <labbott@redhat.com> - 4.18.11-100
a9f8a0
- Linux v4.18.11
a9f8a0
0cf94e
* Wed Sep 26 2018 Laura Abbott <labbott@redhat.com> - 4.18.10-100
0cf94e
- Linux v4.18.10
0cf94e
7ba0e4
* Wed Sep 26 2018 Laura Abbott <labbott@redhat.com>
7ba0e4
- Fix powerpc IPv6 (rhbz 1628394)
7ba0e4
e1c84e
* Mon Sep 24 2018 Justin M. Forbes <jforbes@fedoraproject.org>
e1c84e
- Fix CVE-2018-14633 (rhbz 1626035 1632185)
e1c84e
b1e22d
* Thu Sep 20 2018 Laura Abbott <labbott@redhat.com> - 4.18.9-100
b1e22d
- Linux v4.18.9
d499fd
- Fixes CVE-2018-17182 (rhbz 1631205 1631206)
b1e22d
b1e22d
* Sun Sep 16 2018 Laura Abbott <labbott@redhat.com> - 4.18.8-100
5cd25e
- Linux v4.18.8
5cd25e
dfce0d
* Fri Sep 14 2018 Justin M. Forbes <jforbes@fedoraproject.org>
dfce0d
- Additional Fixes for CVE-2018-5391 (rhbz 1616059)
dfce0d
846547
* Thu Sep 13 2018 Laura Abbott <labbott@redhat.com>
c96d1d
- Use the CPU RNG for entropy (rhbz 1572944)
c96d1d
c96d1d
* Thu Sep 13 2018 Laura Abbott <labbott@redhat.com>
846547
- HID fixes (rhbz 1627963 1628715)
846547
16fb23
* Mon Sep 10 2018 Laura Abbott <labbott@redhat.com> - 4.18.7-100
16fb23
- Linux v4.18.7
16fb23
d253aa
* Fri Aug 24 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.17.19-100
d253aa
- Linux v4.17.19
d253aa
a2297c
* Wed Aug 22 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.17.18-100
a2297c
- Linux v4.17.18
a2297c
0b9b1d
* Mon Aug 20 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.17.17-100
0b9b1d
- Linux v4.17.17
da950b
- Fix CVE-2018-15471 (rhbz 1610555 1618414)
0b9b1d
bd99ca
* Wed Aug 15 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.17.14-102
bd99ca
- Include missing Forshadow patches
bd99ca
6370f3
* Tue Aug 14 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.17.14-101
6370f3
- Fix "Foreshadow" CVE-2018-3620 CVE-2018-3646 (rhbz 1585005 1615998)
6370f3
5efbf7
* Thu Aug 09 2018 Justin M. Forbes <jforbes@redhat.com> - 4.17.14-100
5efbf7
- Linux v4.17.14
5efbf7
a7b026
* Wed Aug 08 2018 Justin M. Forbes <jforbes@redhat.com> - 4.17.13-100
a7b026
- Linux v4.17.13
a7b026
edd3d9
* Fri Aug 03 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.17.12-100
edd3d9
- Linux v4.17.12
edd3d9
- Fixes CVE-2018-14734 (rhbz 1611005 1611007)
edd3d9
- Fixes (rhbz 1609932)
edd3d9
329873
* Mon Jul 30 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.17.11-100
329873
- Linux v4.17.11
329873
- Turn off kernel-headers for the split
020145
- Fix CVE-2018-14678 (rhbz 1608559 1608560)
329873
fa0faf
* Wed Jul 25 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.17.10-100
fa0faf
- Linux v4.17.10
fa0faf
2a8ca2
* Mon Jul 23 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.17.9-200
2a8ca2
- Linux v4.17.9
2a8ca2
- Fix emergency shell with ext4 rootfs (rhbz 1602971)
2a8ca2
Jeremy Cline e9258f
* Mon Jul 23 2018 Jeremy Cline <jeremy@jcline.org>
Jeremy Cline e9258f
- Fix iwlwifi module load failure (rhbz 1607092)
Jeremy Cline e9258f
78463b
* Tue Jul 17 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.17.7-100
78463b
- Linux v4.17.7
78463b
Jeremy Cline a883cb
* Thu Jul 12 2018 Jeremy Cline <jeremy@jcline.org>
Jeremy Cline a883cb
- Avoid an early WARN_ON in Xen (rhbz 1592976)
Jeremy Cline ce14d7
- Fix perceived dead xhci host (rhbz 1597333)
Jeremy Cline a883cb
4ca8fe
* Thu Jul 12 2018 Dan Horák <dan@danny.cz>
4ca8fe
- Enable HDA sound drivers on PPC
4ca8fe
Jeremy Cline 605267
* Wed Jul 11 2018 Jeremy Cline <jcline@redhat.com> - 4.17.6-100
Jeremy Cline 605267
- Linux v4.17.6
Jeremy Cline 605267
Jeremy Cline bc7256
* Wed Jul 11 2018 Jeremy Cline <jeremy@jcline.org>
Jeremy Cline bc7256
- Add device ID for RTL8822BE in the Asus ROG GL702ZC (rhbz 1599917)
Jeremy Cline bc7256
Jeremy Cline 8f24bd
* Mon Jul 09 2018 Jeremy Cline <jcline@redhat.com> - 4.17.5-100
Jeremy Cline 8f24bd
- Linux v4.17.5
Jeremy Cline 8f24bd
- Fix CVE-2018-13405 (rhbz 1599161 1599162)
Jeremy Cline 8f24bd
1a9181
* Thu Jul 05 2018 Justin M. Forbes <jforbes@fedoraproject.org>
1a9181
- Fix CVE-2018-13053 (rhbz 1597747 1597748)
1a9181
- Fix CVE-2018-12896 (rhbz 1597759 1597760) 
1a9181
- Fix CVE-2018-13093 (rhbz 1597766 1597767)
1a9181
- Fix CVE-2018-13094 (rhbz 1597771 1597772)
1a9181
- Fix CVE-2018-13095 (rhbz 1597775 1597777)
1a9181
539a3a
* Tue Jul 03 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.17.4-100
539a3a
- Linux v4.17.4
539a3a
127cdf
* Fri Jun 29 2018 Jeremy Cline <jeremy@jcline.org>
127cdf
- Revert the CRNG init patches (rhbz 1572944)
127cdf
Jeremy Cline cbe47d
* Thu Jun 28 2018 Jeremy Cline <jeremy@jcline.org>
Jeremy Cline cbe47d
- Fix CVE-2018-12714 (rhbz 1595835 1595837)
Jeremy Cline cbe47d
Jeremy Cline 4342af
* Tue Jun 26 2018 Jeremy Cline <jcline@redhat.com> - 4.17.3-100
Jeremy Cline 4342af
- Linux v4.17.3
Jeremy Cline 4342af
- Don't log an error if RTC_NVMEM isn't enabled (rhbz 1568276)
Jeremy Cline 4342af
75499e
* Mon Jun 25 2018 Laura Abbott <labbott@fedoraproject.org>
75499e
- Some webcam fixes (rhbz 1592454 1590304)
1afc41
- Fix for armv7 siginfo ABI regression (rhbz 1591516)
75499e
22df9d
* Fri Jun 22 2018 Justin M. Forbes <jforbes@fedoraproject.org>
22df9d
- Fix CVE-2018-12633 (rhbz 1594170 1594172)
22df9d
b1f098
* Fri Jun 22 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.17.2-100
b1f098
- Linux v4.17.2 rebase
b1f098
Jeremy Cline a98ecb
* Thu Jun 21 2018 Jeremy Cline <jcline@redhat.com> - 4.16.17-200
Jeremy Cline a98ecb
- Linux v4.16.17
Jeremy Cline a98ecb
Jeremy Cline cf5d82
* Sun Jun 17 2018 Jeremy Cline <jcline@redhat.com> - 4.16.16-200
Jeremy Cline cf5d82
- Linux v4.16.16
Jeremy Cline cf5d82
Jeremy Cline 5240d6
* Tue Jun 12 2018 Jeremy Cline <jeremy@jcline.org>
Jeremy Cline 5240d6
- Fix a crash in ath10k when bandwidth changes (rhbz 1577106)
Jeremy Cline ba7706
- Fix kexec_file_load pefile signature verification (rhbz 1470995)
Jeremy Cline 5240d6
096368
* Tue Jun 12 2018 Justin M. Forbes <jforbes@fedoraproject.org>
096368
- Fix CVE-2018-12232 (rhbz 1590215 1590216)
096368
Jeremy Cline b74e65
* Mon Jun 11 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.15-200
Jeremy Cline 51a0ba
- Fix for the keyboard backlight on Dell XPS 13 9370
Jeremy Cline b74e65
- Linux v4.16.15
Jeremy Cline 51a0ba
d54cf7
* Mon Jun 11 2018 Justin M. Forbes <jforbes@fedoraproject.org>
d54cf7
- Fix CVE-2018-10853 (rhbz 1589890 1589892)
d54cf7
Jeremy Cline bfc648
* Tue Jun 05 2018 Jeremy Cline <jcline@redhat.com> - 4.16.14-200
Jeremy Cline bfc648
- Linux v4.16.14
Jeremy Cline bfc648
Jeremy Cline b5f690
* Mon Jun 04 2018 Jeremy Cline <jeremy@jcline.org>
Jeremy Cline b5f690
- Drop SanDisk SD7UB3Q*G1001 NOLPM quirk (rhbz 1583207)
Jeremy Cline b5f690
Jeremy Cline 78065f
* Wed May 30 2018 Jeremy Cline <jcline@redhat.com> - 4.16.13-200
Jeremy Cline 78065f
- Linux v4.16.13
Jeremy Cline 78065f
- Fixes CVE-2018-11506 (rhbz 1583210 1583213)
Jeremy Cline 78065f
Jeremy Cline 7cbd09
* Fri May 25 2018 Jeremy Cline <jcline@redhat.com> - 4.16.12-200
Jeremy Cline 7cbd09
- Linux v4.16.12
Jeremy Cline 7cbd09
- Fix CVE-2018-10840 (rhbz 1582346 1582348)
Jeremy Cline 767215
- Fix for incorrect error message about parsing PCCT (rhbz 1435837)
Jeremy Cline 767215
Jeremy Cline 6a1512
* Tue May 22 2018 Jeremy Cline <jcline@redhat.com> - 4.16.11-200
Jeremy Cline 6a1512
- Linux v4.16.11
Jeremy Cline 6a1512
dabc30
* Mon May 21 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.16.10-201
dabc30
- Fix CVE-2018-3639 (rhbz 1566890 1580713)
dabc30
Jeremy Cline 9dd4bb
* Mon May 21 2018 Jeremy Cline <jcline@redhat.com> - 4.16.10-200
Jeremy Cline 9dd4bb
- Linux v4.16.10
Jeremy Cline 9dd4bb
d165d8
* Sun May 20 2018 Hans de Goede <hdegoede@redhat.com>
d165d8
- Enable GPIO_AMDPT, PINCTRL_AMD and X86_AMD_PLATFORM_DEVICE Kconfig options
d165d8
  to fix i2c and GPIOs not working on AMD based laptops (rhbz#1510649)
d165d8
f739b2
* Thu May 17 2018 Justin M. Forbes <jforbes@fedoraproject.org>
f739b2
- Fix CVE-2018-1120 (rhbz 1575472 1579542)
f739b2
Jeremy Cline 68b537
* Thu May 17 2018 Jeremy Cline <jcline@redhat.com> - 4.16.9-200
Jeremy Cline 68b537
- Linux v4.16.9
Jeremy Cline 2bda33
- Silence unwanted "swiotlb buffer is full" warnings (rhbz 1556797)
Jeremy Cline 2bda33
Jeremy Cline b0f161
* Wed May 09 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.8-201
Jeremy Cline b0f161
- Bump the release for a re-build
Jeremy Cline b0f161
Jeremy Cline 5e0244
* Wed May 09 2018 Jeremy Cline <jeremy@jcline.org>
Jeremy Cline 5e0244
- Workaround for m400 uart irq firmware description (rhbz 1574718)
Jeremy Cline 5e0244
76a13e
* Wed May 09 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.8-200
76a13e
- Linux v4.16.8
76a13e
05c1f6
* Mon May 07 2018 Jeremy Cline <jeremy@jcline.org>
05c1f6
- Fix issue with KVM on older Core 2 processors (rhbz 1566258)
05c1f6
61eb4e
* Sat May  5 2018 Peter Robinson <pbrobinson@fedoraproject.org>
61eb4e
- ARM and Raspberry Pi fixes
36316b
- Fix USB-2 on Tegra devices
61eb4e
f3815d
* Fri May 04 2018 Laura Abbott <labbott@redhat.com>
f3815d
- Fix for building out of tree modules on powerpc (rhbz 1574604)
f3815d
68c668
* Fri May 04 2018 Justin M. Forbes <jforbes@fedoraproject.org>
68c668
- Fix CVE-2018-10322 (rhbz 1571623 1571624)
68c668
- Fix CVE-2018-10323 (rhbz 1571627 1571630)
68c668
2774e9
* Wed May 02 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.7-200
2774e9
- Linux v4.16.7
2774e9
1491bf
* Tue May 01 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.6-202
1491bf
- Revert the entire random series from 4.16.4 (rhbz 1572944)
1491bf
fedaeb
* Tue May 01 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.6-201
fedaeb
- Revert the fix for CVE-2018-1108 (rhbz 1572944)
fedaeb
b13f30
* Mon Apr 30 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.6-200
b13f30
- Linux v4.16.6
b13f30
415e87
* Fri Apr 27 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.5-200
68012d
- Fix an issue with bluetooth autosupsend on some XPS 13 9360 (rhbz 1514836)
415e87
- Fix prlimit64 with RLIMIT_CPU ignored (rhbz 1568337)
415e87
- Linux v4.16.5
68012d
a6847a
* Fri Apr 27 2018 Peter Robinson <pbrobinson@fedoraproject.org>
a6847a
- Enable QLogic NICs on ARM
a6847a
ba88fe
* Wed Apr 25 2018 Jeremy Cline <jeremy@jcline.org>
ba88fe
- Fix a kernel oops when using Thunderbolt 3 docks (rhbz 1565131)
ba88fe
2a0825
* Tue Apr 24 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.4-200
37525c
- Fix a regression in backlight interfaces for some laptops (rhbz 1571036)
2a0825
- Linux v4.16.4
37525c
fbb329
* Sun Apr 22 2018 Peter Robinson <pbrobinson@fedoraproject.org>
fbb329
- Add quirk patch to fix X-Gene 1 console on HP m400/Mustang (RHBZ 1531140)
0edfe4
- Add fixes for Marvell a37xx EspressoBin
0edfe4
- Update to latest Raspberry Pi 3+ fixes
0edfe4
- More fixes for lan78xx on the Raspberry Pi 3+
fbb329
edca09
* Thu Apr 19 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.3-200
edca09
- Linux v4.16.3
edca09
c0c88a
* Thu Apr 19 2018 Peter Robinson <pbrobinson@fedoraproject.org>
c0c88a
- Enable UFS storage options on ARM
545b76
- Add support for Pocket Beagle
c0c88a
271a43
* Tue Apr 17 2018 Peter Robinson <pbrobinson@fedoraproject.org>
271a43
- Enable drivers for Xilinx ZYMQ-MP Ultra96
271a43
0bde8a
* Mon Apr 16 2018 Laura Abbott <labbott@fedoraproject.org>
0bde8a
- Fix for hang on removal of macsec module (rhbz 1566410)
0bde8a
37d074
* Thu Apr 12 2018 Jeremy Cline <jeremy@jcline.org> - 4.16.2-200
37d074
- Linux v4.16.2
37d074
2637ac
* Thu Apr 12 2018 Laura Abbott <labbott@redhat.com> - 4.15.17-300
2637ac
- Linux v4.15.17
2637ac
e88c4d
* Thu Apr 12 2018 Justin M. Forbes <jforbes@fedoraproject.org>
e88c4d
- Fix CVE-2018-10021 (rhbz 1566407 1566409)
e88c4d
f33548
* Mon Apr 09 2018 Laura Abbott <labbott@redhat.com> - 4.15.16-300
f33548
- Linux v4.15.16
f33548
dbd278
* Mon Apr 02 2018 Laura Abbott <labbott@redhat.com> - 4.15.15-300
dbd278
- Linux v4.15.15
dbd278
d78929
* Thu Mar 29 2018 Laura Abbott <labbott@redhat.com> - 4.15.14-300
d78929
- Linux v4.15.14
d78929
1d02cb
* Thu Mar 29 2018 Jeremy Cline <jeremy@jcline.org>
1d02cb
- Fix mounting NFS with kerberos (rhbz 1558977)
1d02cb
c6be1e
* Mon Mar 26 2018 Laura Abbott <labbott@redhat.com> - 4.15.13-300
c6be1e
- Linux v4.15.13
c6be1e
f665fd
* Thu Mar 22 2018 Laura Abbott <labbott@redhat.com> - 4.15.12-301
f665fd
- Rebuild for kernel-devel fix
f665fd
1d7702
* Thu Mar 22 2018 Jeremy Cline <jeremy@jcline.org>
1d7702
- Fix for nouveau backlight regression (rhbz 1511786)
1d7702
020840
* Wed Mar 21 2018 Laura Abbott <labbott@redhat.com> - 4.15.12-300
020840
- Linux v4.15.12
020840
da2f60
* Mon Mar 19 2018 Laura Abbott <labbott@redhat.com> - 4.15.11-300
da2f60
- Linux v4.15.11
da2f60
756abe
* Mon Mar 19 2018 Justin M. Forbes <jforbes@fedoraproject.org>
756abe
- Fix CVE-2017-18232 (rhbz 1558066 1558067)
756abe
67c1a8
* Thu Mar 15 2018 Laura Abbott <labbott@redhat.com> - 4.15.10-300
67c1a8
- Linux v4.15.10
67c1a8
- Fix for dock booting (rhbz 1549042)
67c1a8
- Fix THP bug (rhbz 1546709)
67c1a8
3f91bd
* Mon Mar 12 2018 Laura Abbott <labbott@redhat.com> - 4.15.9-300
3f91bd
- Linux v4.15.9
3f91bd
24931b
* Mon Mar 12 2018 Justin M. Forbes <jforbes@fedoraproject.org>
24931b
- Fix CVE-2018-7995 (rhbz 1553911 1553918)
24931b
- Fix CVE-2018-8043 (rhbz 1554199 1554200)
24931b
1fe905
* Fri Mar 09 2018 Laura Abbott <labbott@redhat.com> - 4.15.8-300
1fe905
- Linux v4.15.8
1fe905
704c87
* Thu Mar 08 2018 Justin M. Forbes <jforbes@fedoraproject.org>
704c87
- Fix CVE-2018-7757 (rhbz 1553361 1553363)
704c87
9d77f5
* Tue Mar 06 2018 Laura Abbott <labbott@redhat.com>
9d77f5
- Fixes for IPMI crash (rbhz 1549316)
9d77f5
30ed1d
* Mon Mar 05 2018 Justin M. Forbes <jforbes@fedoraproject.org>
30ed1d
- Fix CVE-2018-5803 (rhbz 1551051 1551053)
30ed1d
58c4aa
* Fri Mar 02 2018 Justin M. Forbes <jforbes@fedoraproject.org>
58c4aa
- Fix CVE-2018-1065 (rhbz 1547824 1547831)
58c4aa
e4f82e
* Wed Feb 28 2018 Laura Abbott <labbott@redhat.com> - 4.15.7-300
e4f82e
- Linux v4.15.7
e4f82e
- Fix IPMI crash (rhbz 1549316)
e4f82e
5fa353
* Mon Feb 26 2018 Laura Abbott <labbott@redhat.com> - 4.15.6-300
5fa353
- Linux v4.15.6
5fa353
53bdc6
* Fri Feb 23 2018 Laura Abbott <labbott@redhat.com> - 4.15.5-300
53bdc6
- Linux v4.15.5
53bdc6
713c57
* Mon Feb 19 2018 Laura Abbott <labbott@redhat.com> - 4.15.4-300
713c57
- Linux v4.15.4
713c57
54be9d
* Mon Feb 19 2018 Justin M. Forbes <jforbes@fedoraproject.org>
54be9d
- Fix CVE-2018-1000026 (rhbz 1541846 1546744)
54be9d
48664e
* Thu Feb 15 2018 François Cami <fcami@fedoraproject.org>
48664e
- Enable CONFIG_DRM_AMDGPU_SI
48664e
947af9
* Tue Feb 13 2018 Laura Abbott <labbott@redhat.com> - 4.15.3-300
947af9
- Linux v4.15.3
1b9687
- Fix for b43 wifi (rhbz 1544821)
1b9687
- Turn off a few powersave options for rebase
947af9
45f4d8
* Sun Feb 11 2018 Peter Robinson <pbrobinson@fedoraproject.org> 4.15.2-301
1b293c
- Add Exynos5 patch (second part of series) to fix USB-3 devices on some Odroid devices
1b293c
- Fix up and re-enable adv7511
2002d6
- Fix loading of i.MX6 cpufreq driver (rhbz 1466991)
253ab8
- Improvements/fixes for Raspberry Pi HDMI monitor detection
253ab8
- Fix regression with AllWinner (sunxi) crypto PRNG, and module loading
1b293c
f8e9b4
* Wed Feb 07 2018 Laura Abbott <labbott@redhat.com> - 4.15.2-300
f8e9b4
- Linux v4.15.2 rebase
b9f37a
- Enable Jack sound on Thinkpad Dock (rhbz 1543326)
f8e9b4
27927b
* Wed Feb 07 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.18-300
27927b
- Linux v4.14.18
27927b
8e6874
* Mon Feb 05 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.17-300
8e6874
- Linux v4.14.17
8e6874
4731c6
* Wed Jan 31 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.16-300
4731c6
- Linux v4.14.16
4731c6
f9f080
* Mon Jan 29 2018 Justin M. Forbes <jforbes@fedoraproject.org>
f9f080
- Fix CVE-2018-5750 (rhbz 1539706 1539708)
078f4c
- Fix softlockup (rhbz 1492664 1492665)
f9f080
612b57
* Sat Jan 27 2018 Laura Abbott <labbott@fedoraproject.org>
612b57
- Add support for Wacom tablet (rhbz 1539238)
612b57
491a12
* Fri Jan 26 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.15-301
491a12
- Revert retpoline vermagic tag
491a12
e1bb1f
* Wed Jan 24 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.15-300
e1bb1f
- Linux v4.14.15
e1bb1f
- Fix CVE-2018-1000004 (rhbz 1535315 1535316)
e1bb1f
067fb2
* Tue Jan 23 2018 Laura Abbott <labbott@fedoraproject.org>
067fb2
- Fix for nouveau crash (rhbz 1513150)
067fb2
53734c
* Thu Jan 18 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.14-300
53734c
- Add some ppc mitigations from upstream
53734c
53734c
* Wed Jan 17 2018 Justin M. Forbes <jforbes@fedoraproject.org>
a73de3
- Linux v4.14.14
a73de3
- Fixes (rhbz 1532458)
a73de3
e4655c
* Fri Jan 12 2018 Jeremy Cline <jeremy@jcline.org>
e4655c
- Fix for CVE-2018-5344 (rhbz 1533909 1533911)
630c6b
- Fix for CVE-2018-5332 (rhbz 1533890 1533895)
630c6b
- Fix for CVE-2018-5333 (rhbz 1533891 1533895)
e4655c
5b99eb
* Wed Jan 10 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.13-300
5b99eb
- Linux v4.14.13
b04920
- Iniital retpoline fixes for Spectre v2
5b99eb
00d096
* Mon Jan 08 2018 Laura Abbott <labbott@redhat.com>
00d096
- Disable CONFIG_RESET_ATTACK_MITIGATION (rhbz 1532058)
00d096
3efc96
* Fri Jan 05 2018 Laura Abbott <labbott@redhat.com>
3efc96
- Copy module linker script (rhbz 1531182)
3efc96
05dab9
* Fri Jan 05 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.12-300
05dab9
- Linux v4.14.12
05dab9
b4569a
* Thu Jan 04 2018 Hans de Goede <hdegoede@redhat.com>
b4569a
- Add a patch to filter false positive kbd backlight change events (#1514969)
b4569a
4c66c4
* Wed Jan 03 2018 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.11-300
4c66c4
- Linux v4.14.11
4c66c4
1360e6
* Mon Jan 01 2018 Laura Abbott <labbott@redhat.com> - 4.14.10-300
1360e6
- Linux v4.14.10
1360e6
583301
* Tue Dec 26 2017 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.9-300
583301
- Linux v4.14.9
583301
- Fixes CVE-2017-17862 CVE-2017-17863 CVE-2017-17864 (rhbz 1529120 1529123 1529124 1529125)
68464f
- Fixes CVE-2017-17852 CVE-2017-17853 CVE-2017-17854 CVE-2017-17855 CVE-2017-17856 CVE-2017-17857
68464f
  (rhbz 1530269 1530270 1530271 1530272 1530273 1530274 1530279)
583301
33a4fe
* Wed Dec 20 2017 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.8-300
33a4fe
- Linux v4.14.8
33a4fe
ef1fbf
* Wed Dec 20 2017 Jeremy Cline <jeremy@jcline.org>
ef1fbf
- Backport fix e1000_check_for_copper_link_ich8lan return value
ef1fbf
32faf6
* Tue Dec 19 2017 Justin M. Forbes <jforbes@fedoraproject.org>
32faf6
- Fix CVE-2017-17741 (rhbz 1527112 1527113)
32faf6
2ca4e0
* Mon Dec 18 2017 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.7-300
2ca4e0
- Linux v4.14.7
18f6ac
- Fix CVE-2017-17712 (rhbz 1526427 1526933)
2ca4e0
b6e3b1
* Thu Dec 14 2017 Jeremy Cline <jeremy@jcline.org> - 4.14.6-300
b6e3b1
- Linux v4.14.6
b6e3b1
- Security fix for CVE-2017-17449 (rhbz 1525762 1525763)
b6e3b1
- Security fix for CVE-2017-17450 (rhbz 1525761 1525764)
b6e3b1
- Security fix for CVE-2017-17448 (rhbz 1525768 1525769)
b6e3b1
5f8532
* Wed Dec 13 2017 Jeremy Cline <jeremy@jcline.org>
5f8532
- Fix CVE-2017-17558 (rhbz 1525474 1525476)
d04c5c
- Revert exec: avoid RLIMIT_STACK races with prlimit()
5f8532
33a5b3
* Tue Dec 12 2017 Jeremy Cline <jeremy@jcline.org>
33a5b3
- Fix CVE-2017-8824 (rhbz 1519591 1520764)
33a5b3
790224
* Mon Dec 11 2017 Jeremy Cline <jeremy@jcline.org>
790224
- Re-fix USB null pointer dereference on ThinkPad X1 (rhbz 1462175)
790224
d9d8da
* Mon Dec 11 2017 Jeremy Cline <jeremy@jcline.org> - 4.14.5-300
d9d8da
- Linux v4.14.5
d9d8da
- Re-enable driver for the Behringer BCD 2000
d9d8da
c1a45a
* Wed Dec  6 2017 Peter Robinson <pbrobinson@fedoraproject.org> 4.14.4-300
c1a45a
- Linux v4.14.4
c1a45a
- Fixes for dwmac-sun8i for A64/Pine64
c1a45a
- Fixes for Cavium ThunderX (rhbz 1521190)
c1a45a
c5708d
* Mon Dec 04 2017 Justin M. Forbes <jforbes@fedoraproject.org> - 4.14.3-300
c5708d
- Linux v4.14.3 rebase
c5708d
c4b864
* Thu Nov 30 2017 Jeremy Cline <jeremy@jcline.org> - 4.13.16-302
c4b864
- Fix CVE-2017-1000405 (rhbz 1516514 1519115)
c4b864
d21fcd
* Wed Nov 29 2017 Jeremy Cline <jeremy@jcline.org> - 4.13.16-301
cf68d0
- Fix USB null pointer dereference on ThinkPad X1 (rhbz 1462175)
d21fcd
- Patches ppc64, ppc64le mm failure (rhbz 1518707)
cf68d0
3f1199
* Mon Nov 27 2017 Jeremy Cline <jeremy@jcline.org> - 4.13.16-300
3f1199
- Linux v4.13.16
3f1199
- Fix CVE-2017-16649 (rhbz 1516267 1516274)
3f1199
- Fix CVE-2017-16650 (rhbz 1516265 1516274)
3f1199
- Fix CVE-2017-16644 (rhbz 1516273 1516274)
3f1199
- Fix CVE-2017-16647 (rhbz 1516270 1516274)
3f1199
f65562
* Tue Nov 21 2017 Justin M. Forbes <jforbes@fedoraproject.org>
f65562
- Fix cursor issues with QXL (rhbz 1507931)
f65562
451f0e
* Tue Nov 21 2017 Jeremy Cline <jeremy@jcline.org> - 4.13.15-300
451f0e
- Linux v4.13.15
451f0e
cd8034
* Mon Nov 20 2017 Laura Abbott <labbott@redhat.com>
cd8034
- Enable driver for the Behringer BCD 2000 (rhbz 1514945)
cd8034
218883
* Sun Nov 19 2017 Jeremy Cline <jeremy@jcline.org> - 4.13.14-300
218883
- Linux v4.13.14
218883
be9699
* Wed Nov 15 2017 Jeremy Cline <jeremy@jcline.org> - 4.13.13-300
be9699
- Linux v4.13.13
be9699
- Fix CVE-2017-15115 (rhbz 1513346 1513345)
be9699
e4ae5c
* Wed Nov 15 2017 Peter Robinson <pbrobinson@fedoraproject.org>
e4ae5c
- Add fix for vc4 interupts
e4ae5c
a4e91a
* Wed Nov 08 2017 Jeremy Cline <jeremy@jcline.org> - 4.13.12-300
a4e91a
- Linux v4.13.12
a4e91a
af239e
* Wed Nov 08 2017 Justin M. Forbes <jforbes@fedoraproject.org>
af239e
- Fix CVE-2017-16532 (rhbz 1510835 1510854)
af239e
- Fix CVE-2017-16538 (rhbz 1510826 1510854)
af239e
dd3696
* Mon Nov 06 2017 Laura Abbott <labbott@redhat.com>
dd3696
- Patches for ThinkPad X1 Carbon Gen5 Touchpad (rhbz 1509461)
370113
- Fix for KVM regression on some machines (rhbz 1490803)
dd3696
3b14f9
* Thu Nov 02 2017 Jeremy Cline <jeremy@jcline.org> - 4.13.11-300
3b14f9
- Linux v4.13.11
3b14f9
- Fix CVE-2017-12193 (rhbz 1501215 1508717)
3b14f9
- SMB3: Validate negotiate request must always be signed (rhbz 1502606)
3b14f9
- Backport new SELinux NNP/nosuid patch to resolve interactions with systemd
3b14f9
d96b45
* Wed Nov 01 2017 Laura Abbott <labbott@fedoraproject.org>
d96b45
- Add fix for potential mlxsw firmware incompatibility
d96b45
3be09c
* Mon Oct 30 2017 Hans de Goede <jwrdegoede@fedoraproject.org>
3be09c
- Fix 0001-platform-x86-peaq-wmi-Add-DMI-check-before-binding-t.patch
3be09c
  having a dmi_table which lacks a terminating entry
3be09c
b7699c
* Fri Oct 27 2017 Jeremy Cline <jeremy@jcline.org> - 4.13.10-300
b7699c
- Linux v4.13.10
b7699c
289b4a
* Mon Oct 23 2017 Laura Abbott <labbott@redhat.com> - 4.13.9-300
289b4a
- Linux v4.13.9
289b4a
b041cc
* Wed Oct 18 2017 Laura Abbott <labbott@fedoraproject.org> - 4.13.8-300
b041cc
- Linux v4.13.8
1b984b
- Fix CVE-2017-12190 (rhbz 1495089 1503580)
b041cc
93b5dd
* Mon Oct 16 2017 Justin M. Forbes <jforbes@fedoraproject.org> - 4.13.7-300
93b5dd
- Linux v4.13.7
cd7dbc
- Fixes CVE-2017-5123 (rhbz 1500094 1501762)
0e8165
- Fix CVE-2017-15265 (rhbz 1501878 1501880)
93b5dd
1afd1b
* Sun Oct 15 2017 Peter Robinson <pbrobinson@fedoraproject.org>
225f54
- Fix USB-3 Superspeed negotiation on exynos5 hardware (rhbz 1487006)
c934db
- Some AllWinner A64 fixes and improvements
1afd1b
1a4bd4
* Thu Oct 12 2017 Hans de Goede <jwrdegoede@fedoraproject.org>
1a4bd4
- Fix vboxvideo causing gnome 3.26+ to not work under VirtualBox
1a4bd4
4ae8c9
* Thu Oct 12 2017 Justin M. Forbes <jforbes@fedoraproject.org> - 4.13.6-300
4ae8c9
- Linux v4.13.6
4ae8c9
- Fixes CVE-2017-1000255 (rhbz 1498067 1500335)
4ae8c9
f43f87
* Thu Oct 12 2017 Peter Robinson <pbrobinson@fedoraproject.org>
f43f87
- Fixes for Cavium ThunderX plaforms
f43f87
5e44bb
* Wed Oct 11 2017 Jeremy Cline <jeremy@jcline.org>
c3f3f8
- Fix incorrect updates of uninstantiated keys crash the kernel (rhbz 1498016 1498017)
5e44bb
0b78d8
* Tue Oct 10 2017 Justin M. Forbes <jforbes@fedoraproject.org>
0b78d8
- Disable kernel tracking on SMBus devices (rhbz 1482648)
0b78d8
7fcc58
* Mon Oct  9 2017 Peter Robinson <pbrobinson@fedoraproject.org>
7fcc58
- Enable KASLR on aarch64
7fcc58
d83abc
* Fri Oct  6 2017 Peter Robinson <pbrobinson@fedoraproject.org>
d83abc
- ARM ACPI fix for x-gene RHBZ #1498117
ee0bdd
- Initial support for Socionext Synquacer platform
32616a
- Fix for QCom GPU clock rate
d83abc
2bd4c7
* Thu Oct 05 2017 Laura Abbott <labbott@fedoraproject.org> - 4.13.5-300
2bd4c7
- Linux v4.13.5
2bd4c7
- Fix for peaq_wmi nul spew (rhbz 1497861)
952ab1
- Fixes CVE-2017-14954 (rhbz 1497745 1497747)
2bd4c7
88bf69
* Thu Sep 28 2017 Laura Abbott <labbott@redhat.com> - 4.13.4-300
88bf69
- Linux v4.13.4
88bf69
ce7773
* Mon Sep 25 2017 Peter Robinson <pbrobinson@fedoraproject.org>
ce7773
- Add patch to fix PCI on tegra20
ce7773
ce00e7
* Mon Sep 25 2017 Laura Abbott <labbott@redhat.com> - 4.13.3-301
ce00e7
- Bump for new build
ce00e7
de7836
* Thu Sep 21 2017 Laura Abbott <labbott@redhat.com>
de7836
- Fix useaddr regression (rhbz 1432684)
de7836
dc72d0
* Wed Sep 20 2017 Laura Abbott <labbott@redhat.com>
dc72d0
- Disable CONFIG_VIRTIO_BLK_SCSI
dc72d0
ba9364
* Wed Sep 20 2017 Justin M. Forbes <jforbes@fedoraproject.org> - 4.13.3-300
ba9364
- Linux v4.13.3
ba9364
- Fixes 1493435 1493436
ba9364
886e8b
* Tue Sep 19 2017 Peter Robinson <pbrobinson@fedoraproject.org>
886e8b
- Fix a few vc4 crashes on the Raspberry Pi
886e8b
cbd54a
* Mon Sep 18 2017 Justin M. Forbes <jforbes@edoraproject.org>
cbd54a
- Fixes for QXL (rhbz 1462381)
a8fc92
- Fix rhbz 1431375
cbd54a
317480
* Fri Sep 15 2017 Peter Robinson <pbrobinson@fedoraproject.org>
317480
- Enable Tegra 186
317480
a0ab8c
* Thu Sep 14 2017 Laura Abbott <labbott@redhat.com> - 4.13.2-300
a0ab8c
- Linux v4.13.2
a0ab8c
b1def3
* Wed Sep 13 2017 Justin M. Forbes <jforbes@fedoraproject.org>
b1def3
- Fix CVE-2017-12154 (rhbz 1491224 1491231)
b1def3
- Fix CVE-2017-12153 (rhbz 1491046 1491057)
b1def3
- Fix CVE-2017-1000251 (rhbz 1489716 1490906)
b1def3
eecd41
* Tue Sep 12 2017 Peter Robinson <pbrobinson@fedoraproject.org>
eecd41
- Fix issue with DMA allocation with some device configurations
eecd41
77bac4
* Tue Sep 12 2017 Peter Robinson <pbrobinson@fedoraproject.org> 4.13.1-302
77bac4
- Disable debugging options.