summaryrefslogtreecommitdiffstats
path: root/kernel.spec
diff options
context:
space:
mode:
Diffstat (limited to 'kernel.spec')
-rw-r--r--kernel.spec206
1 files changed, 99 insertions, 107 deletions
diff --git a/kernel.spec b/kernel.spec
index e454c4055..5864e54a0 100644
--- a/kernel.spec
+++ b/kernel.spec
@@ -48,13 +48,13 @@ Summary: The Linux kernel
# base_sublevel is the kernel version we're starting with and patching
# on top of -- for example, 3.1-rc7-git1 starts with a 3.0 base,
# which yields a base_sublevel of 0.
-%define base_sublevel 9
+%define base_sublevel 10
## If this is a released kernel ##
%if 0%{?released_kernel}
# Do we have a -stable update to apply?
-%define stable_update 14
+%define stable_update 3
# Set rpm version accordingly
%if 0%{?stable_update}
%define stablerev %{stable_update}
@@ -67,7 +67,7 @@ Summary: The Linux kernel
# The next upstream release sublevel (base_sublevel+1)
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
# The rc snapshot level
-%define rcrev 0
+%global rcrev 0
# The git snapshot level
%define gitrev 0
# Set rpm version accordingly
@@ -313,8 +313,10 @@ Summary: The Linux kernel
# printed out?
%if %{nopatches}
%define listnewconfig_fail 0
+%define configmismatch_fail 0
%else
%define listnewconfig_fail 1
+%define configmismatch_fail 1
%endif
# To temporarily exclude an architecture from being built, add it to
@@ -425,38 +427,35 @@ Source98: filter-ppc64p7.sh
Source99: filter-modules.sh
%define modsign_cmd %{SOURCE18}
-Source19: Makefile.release
-Source20: Makefile.config
-Source21: config-debug
-Source22: config-nodebug
-Source23: config-generic
-Source24: config-no-extra
-
-Source30: config-x86-generic
-Source31: config-i686-PAE
-Source32: config-x86-32-generic
-
-Source40: config-x86_64-generic
-
-Source50: config-powerpc64-generic
-Source53: config-powerpc64
-Source54: config-powerpc64p7
-Source55: config-powerpc64le
-
-Source70: config-s390x
-
-Source100: config-arm-generic
-
-# Unified ARM kernels
-Source101: config-armv7-generic
-Source102: config-armv7
-Source103: config-armv7-lpae
-
-Source110: config-arm64
+Source20: kernel-aarch64.config
+Source21: kernel-aarch64-debug.config
+Source22: kernel-armv7hl.config
+Source23: kernel-armv7hl-debug.config
+Source24: kernel-armv7hl-lpae.config
+Source25: kernel-armv7hl-lpae-debug.config
+Source26: kernel-i686.config
+Source27: kernel-i686-debug.config
+Source28: kernel-i686-PAE.config
+Source29: kernel-i686-PAEdebug.config
+Source30: kernel-ppc64.config
+Source31: kernel-ppc64-debug.config
+Source32: kernel-ppc64le.config
+Source33: kernel-ppc64le-debug.config
+Source34: kernel-ppc64p7.config
+Source35: kernel-ppc64p7-debug.config
+Source36: kernel-s390x.config
+Source37: kernel-s390x-debug.config
+Source38: kernel-x86_64.config
+Source39: kernel-x86_64-debug.config
+
+Source40: generate_all_configs.sh
+Source41: generate_debug_configs.sh
+
+Source42: check_configs.awk
# This file is intentionally left empty in the stock kernel. Its a nicety
# added for those wanting to do custom rebuilds with altered config opts.
-Source1000: config-local
+Source1000: kernel-local
# Sources for kernel-tools
Source2000: cpupower.service
@@ -498,44 +497,48 @@ Source5005: kbuild-AFTER_LINK.patch
# Standalone patches
# a tempory patch for QCOM hardware enablement. Will be gone by end of 2016/F-26 GA
-Patch421: qcom-QDF2432-tmp-errata.patch
+Patch420: qcom-QDF2432-tmp-errata.patch
# http://www.spinics.net/lists/arm-kernel/msg490981.html
-Patch422: geekbox-v4-device-tree-support.patch
-
-# http://www.spinics.net/lists/linux-pci/msg53991.html
-# https://patchwork.kernel.org/patch/9337113/
-Patch425: arm64-pcie-quirks.patch
+Patch421: geekbox-v4-device-tree-support.patch
# http://www.spinics.net/lists/linux-tegra/msg26029.html
-Patch426: usb-phy-tegra-Add-38.4MHz-clock-table-entry.patch
+Patch422: usb-phy-tegra-Add-38.4MHz-clock-table-entry.patch
# Fix OMAP4 (pandaboard)
-Patch427: arm-revert-mmc-omap_hsmmc-Use-dma_request_chan-for-reque.patch
+Patch423: arm-revert-mmc-omap_hsmmc-Use-dma_request_chan-for-reque.patch
# Not particularly happy we don't yet have a proper upstream resolution this is the right direction
# https://www.spinics.net/lists/arm-kernel/msg535191.html
-Patch429: arm64-mm-Fix-memmap-to-be-initialized-for-the-entire-section.patch
+Patch424: arm64-mm-Fix-memmap-to-be-initialized-for-the-entire-section.patch
# http://patchwork.ozlabs.org/patch/587554/
-Patch430: ARM-tegra-usb-no-reset.patch
+Patch425: ARM-tegra-usb-no-reset.patch
-Patch431: bcm2837-initial-support.patch
+Patch426: AllWinner-net-emac.patch
-Patch432: drm-vc4-Fix-OOPSes-from-trying-to-cache-a-partially-constructed-BO..patch
+# http://www.spinics.net/lists/devicetree/msg163238.html
+Patch430: bcm2837-initial-support.patch
# http://www.spinics.net/lists/linux-mmc/msg41151.html
-Patch433: bcm283x-mmc-imp-speed.patch
+Patch431: bcm283x-mmc-imp-speed.patch
-Patch434: mm-alloc_contig-re-allow-CMA-to-compact-FS-pages.patch
+Patch432: bcm283x-VEC.patch
-Patch436: vc4-fix-vblank-cursor-update-issue.patch
+# http://www.spinics.net/lists/dri-devel/msg132235.html
+Patch433: drm-vc4-Fix-OOPSes-from-trying-to-cache-a-partially-constructed-BO..patch
-Patch440: AllWinner-net-emac.patch
+# Fix RPi3 from crashing. Nowhere near a final fix but provides breathing room while that is sorted
+# https://github.com/anholt/linux/issues/89
+Patch434: 0001-i2c-bcm2835-Debug-test-for-curr_msg.patch
-Patch442: ARM-Drop-fixed-200-Hz-timer-requirement-from-Samsung-platforms.patch
+# Upstream fixes for i2c/serial/ethernet MAC addresses
+Patch435: bcm283x-fixes.patch
-Patch443: imx6sx-Add-UDOO-Neo-support.patch
+Patch436: vc4-fix-vblank-cursor-update-issue.patch
+
+# http://www.spinics.net/lists/arm-kernel/msg552554.html
+Patch438: arm-imx6-hummingboard2.patch
Patch460: lib-cpumask-Make-CPUMASK_OFFSTACK-usable-without-deb.patch
@@ -551,33 +554,7 @@ Patch471: Kbuild-Add-an-option-to-enable-GCC-VTA.patch
Patch472: crash-driver.patch
-Patch473: Add-secure_modules-call.patch
-
-Patch474: PCI-Lock-down-BAR-access-when-module-security-is-ena.patch
-
-Patch475: x86-Lock-down-IO-port-access-when-module-security-is.patch
-
-Patch476: ACPI-Limit-access-to-custom_method.patch
-
-Patch477: asus-wmi-Restrict-debugfs-interface-when-module-load.patch
-
-Patch478: Restrict-dev-mem-and-dev-kmem-when-module-loading-is.patch
-
-Patch479: acpi-Ignore-acpi_rsdp-kernel-parameter-when-module-l.patch
-
-Patch480: kexec-Disable-at-runtime-if-the-kernel-enforces-modu.patch
-
-Patch481: x86-Restrict-MSR-access-when-module-loading-is-restr.patch
-
-Patch482: Add-option-to-automatically-enforce-module-signature.patch
-
-Patch483: efi-Add-SHIM-and-image-security-database-GUID-defini.patch
-
-Patch484: efi-Disable-secure-boot-if-shim-is-in-insecure-mode.patch
-
-Patch485: efi-Add-EFI_SECURE_BOOT-bit.patch
-
-Patch486: hibernate-Disable-in-a-signed-modules-environment.patch
+Patch473: efi-lockdown.patch
Patch487: Add-EFI-signature-data-types.patch
@@ -592,17 +569,12 @@ Patch490: MODSIGN-Import-certificates-from-UEFI-Secure-Boot.patch
Patch491: MODSIGN-Support-not-importing-certs-from-db.patch
-Patch492: Add-sysrq-option-to-disable-secure-boot-mode.patch
-
Patch493: drm-i915-hush-check-crtc-state.patch
Patch494: disable-i8042-check-on-apple-mac.patch
Patch495: lis3-improve-handling-of-null-rate.patch
-# In theory this has been fixed so should no longer be needed, it also causes problems with aarch64 DMI, so disable to see for sure if it's fixed
-# Patch496: watchdog-Disable-watchdog-on-virtual-machines.patch
-
Patch497: scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch
Patch498: criu-no-expert.patch
@@ -617,8 +589,6 @@ Patch502: firmware-Drop-WARN-from-usermodehelper_read_trylock-.patch
# Patch503: drm-i915-turn-off-wc-mmaps.patch
-Patch508: kexec-uefi-copy-secure_boot-flag-in-boot-params.patch
-
Patch509: MODSIGN-Don-t-try-secure-boot-if-EFI-runtime-is-disa.patch
#CVE-2016-3134 rhbz 1317383 1317384
@@ -627,27 +597,23 @@ Patch665: netfilter-x_tables-deal-with-bogus-nextoffset-values.patch
#ongoing complaint, full discussion delayed until ksummit/plumbers
Patch849: 0001-iio-Use-event-header-from-kernel-tree.patch
-# Request from dwalsh
-Patch851: selinux-namespace-fix.patch
-
-#rhbz 1390308
-Patch852: nouveau-add-maxwell-to-backlight-init.patch
+# Fix build issue with armada_trace
+Patch851: Armada-trace-build-fix.patch
-# CVE-2017-2596 rhbz 1417812 1417813
-Patch855: kvm-fix-page-struct-leak-in-handle_vmon.patch
+# selinux: allow context mounts on tmpfs, ramfs, devpts within user namespaces
+Patch852: selinux-allow-context-mounts-on-tmpfs-etc.patch
-#rhbz 1417829
-Patch858: 1-2-media-cxusb-Use-a-dma-capable-buffer-also-for-reading.patch
-Patch859: 2-2-media-dvb-usb-firmware-don-t-do-DMA-on-stack.patch
+# See http://lists.infradead.org/pipermail/linux-arm-kernel/2016-October/461597.html
+Patch853: 0001-Work-around-for-gcc7-and-arm64.patch
-#rhbz 1422969
-Patch862: rt2800-warning.patch
+#CVE-2017-2596 rhbz 1417812 1417813
+Patch854: kvm-fix-page-struct-leak-in-handle_vmon.patch
#CVE-2017-6353 rhbz 1428907 1428910
-Patch864: sctp-deny-peeloff-operation-on-asocs-with-threads-sl.patch
+Patch855: sctp-deny-peeloff-operation-on-asocs-with-threads-sl.patch
-# CVE-2017-2636 rhbz 1430049
-Patch668: 0001-tty-n_hdlc-get-rid-of-racy-n_hdlc.tbuf.patch
+#CVE-2017-6874 rhbz 1432429 1432430
+Patch856: ucount-Remove-the-atomicity-from-ucount-count.patch
# END OF PATCH DEFINITIONS
@@ -1219,19 +1185,24 @@ git commit -a -m "Stable update"
%endif
# Drop some necessary files from the source dir into the buildroot
-cp $RPM_SOURCE_DIR/config-* .
+cp $RPM_SOURCE_DIR/kernel-*.config .
+cp %{SOURCE1000} .
cp %{SOURCE15} .
+cp %{SOURCE40} .
+cp %{SOURCE41} .
%if !%{debugbuildsenabled}
-%if %{with_release}
# The normal build is a really debug build and the user has explicitly requested
# a release kernel. Change the config files into non-debug versions.
-make -f %{SOURCE19} config-release
-%endif
+%if !%{with_release}
+VERSION=%{version} ./generate_debug_configs.sh
+%else
+VERSION=%{version} ./generate_all_configs.sh
%endif
-# Dynamically generate kernel .config files from config-* files
-make -f %{SOURCE20} VERSION=%{version} configs
+%else
+VERSION=%{version} ./generate_all_configs.sh
+%endif
# Merge in any user-provided local config option changes
%ifnarch %nobuildarches
@@ -1273,9 +1244,21 @@ rm -f kernel-%{version}-*debug.config
%define make make %{?cross_opts}
+CheckConfigs() {
+ ./check_configs.awk $1 $2 > .mismatches
+ if [ -s .mismatches ]
+ then
+ echo "Error: Mismatches found in configuration files"
+ cat .mismatches
+ exit 1
+ fi
+}
+
+cp %{SOURCE42} .
# now run oldconfig over all the config files
for i in *.config
do
+ cat $i > temp-$i
mv $i .config
Arch=`head -1 .config | cut -b 3-`
make ARCH=$Arch listnewconfig | grep -E '^CONFIG_' >.newoptions || true
@@ -1289,6 +1272,10 @@ do
make ARCH=$Arch oldnoconfig
echo "# $Arch" > configs/$i
cat .config >> configs/$i
+%if %{configmismatch_fail}
+ CheckConfigs configs/$i temp-$i
+%endif
+ rm temp-$i
done
# end of kernel config
%endif
@@ -1624,7 +1611,7 @@ BuildKernel() {
# Go back and find all of the various directories in the tree. We use this
# for the dir lists in kernel-core
- find lib/modules/$KernelVer/kernel -type d | sort -n > module-dirs.list
+ find lib/modules/$KernelVer/kernel -mindepth 1 -type d | sort -n > module-dirs.list
# Cleanup
rm System.map
@@ -1691,9 +1678,11 @@ BuildKernel %make_target %kernel_image
%endif
%global perf_make \
- make -s EXTRA_CFLAGS="${RPM_OPT_FLAGS}" LDFLAGS="%{__global_ldflags}" %{?cross_opts} -C tools/perf V=1 NO_PERF_READ_VDSO32=1 NO_PERF_READ_VDSOX32=1 WERROR=0 NO_LIBUNWIND=1 HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_STRLCPY=1 NO_BIONIC=1 prefix=%{_prefix}
+ make -s EXTRA_CFLAGS="${RPM_OPT_FLAGS}" LDFLAGS="%{__global_ldflags}" %{?cross_opts} -C tools/perf V=1 NO_PERF_READ_VDSO32=1 NO_PERF_READ_VDSOX32=1 WERROR=0 NO_LIBUNWIND=1 HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_STRLCPY=1 NO_BIONIC=1 NO_JVMTI=1 prefix=%{_prefix}
%if %{with_perf}
# perf
+# make sure check-headers.sh is executable
+chmod +x tools/perf/check-headers.sh
%{perf_make} DESTDIR=$RPM_BUILD_ROOT all
%endif
@@ -2195,6 +2184,9 @@ fi
#
#
%changelog
+* Wed Mar 15 2017 Justin M. Forbes <jforbes@fedoraproject.org> - 4.10.3-200
+- Linux v4.10.3 rebase
+
* Mon Mar 13 2017 Laura Abbott <labbott@fedoraproject.org> - 4.9.14-200
- Linux v4.9.14