diff --git a/.gitignore b/.gitignore index ad167ee..08edc13 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,4 @@ SOURCES/kernel-abi-whitelists-514.tar.bz2 -SOURCES/linux-3.10.0-514.21.2.el7.tar.xz +SOURCES/linux-3.10.0-514.26.1.el7.tar.xz SOURCES/rheldup3.x509 SOURCES/rhelkpatch1.x509 -SOURCES/centos-kpatch.x509 -SOURCES/centos-ldup.x509 -SOURCES/centos.cer diff --git a/.kernel.metadata b/.kernel.metadata index 9905d25..0bec9a2 100644 --- a/.kernel.metadata +++ b/.kernel.metadata @@ -1,7 +1,4 @@ 9d627e35baa56e8ffc7dc32e5d9ffa68c185e19c SOURCES/kernel-abi-whitelists-514.tar.bz2 -c271941c683571110565d9f6721348df4a655d99 SOURCES/linux-3.10.0-514.21.2.el7.tar.xz +a8bcf1ebc71dcf63ff3921cdee162f465130f64a SOURCES/linux-3.10.0-514.26.1.el7.tar.xz 95b9b811c7b0a6c98b2eafc4e7d6d24f2cb63289 SOURCES/rheldup3.x509 d90885108d225a234a5a9d054fc80893a5bd54d0 SOURCES/rhelkpatch1.x509 -5a7d05a8298cf38d43689470e8e43230d8add0f9 SOURCES/centos-kpatch.x509 -c61172887746663d3bdd9acaa263cbfacf99e8b3 SOURCES/centos-ldup.x509 -6e9105eb51e55a46761838f289a917611cad8091 SOURCES/centos.cer diff --git a/SOURCES/Makefile.common b/SOURCES/Makefile.common index af322e4..c385d3f 100644 --- a/SOURCES/Makefile.common +++ b/SOURCES/Makefile.common @@ -9,7 +9,7 @@ RPMVERSION:=3.10.0 # marker is git tag which we base off of for exporting patches MARKER:=v3.10 PREBUILD:= -BUILD:=514.21.2 +BUILD:=514.26.1 DIST:=.el7 SPECFILE:=kernel.spec RPM:=$(REDHAT)/rpm diff --git a/SOURCES/Module.kabi_dup_ppc64 b/SOURCES/Module.kabi_dup_ppc64 new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/SOURCES/Module.kabi_dup_ppc64 diff --git a/SOURCES/Module.kabi_dup_ppc64le b/SOURCES/Module.kabi_dup_ppc64le new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/SOURCES/Module.kabi_dup_ppc64le diff --git a/SOURCES/Module.kabi_dup_s390x b/SOURCES/Module.kabi_dup_s390x new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/SOURCES/Module.kabi_dup_s390x diff --git a/SOURCES/Module.kabi_dup_x86_64 b/SOURCES/Module.kabi_dup_x86_64 new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/SOURCES/Module.kabi_dup_x86_64 diff --git a/SOURCES/debrand-rh-i686-cpu.patch b/SOURCES/debrand-rh-i686-cpu.patch deleted file mode 100644 index 739855c..0000000 --- a/SOURCES/debrand-rh-i686-cpu.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/arch/x86/boot/main.c 2014-06-04 10:05:04.000000000 -0700 -+++ b/arch/x86/boot/main.c 2014-07-09 12:54:40.000000000 -0700 -@@ -146,7 +146,7 @@ void main(void) - - /* Make sure we have all the proper CPU support */ - if (validate_cpu()) { -- puts("This processor is unsupported in RHEL7.\n"); -+ puts("This processor is unsupported in CentOS 7.\n"); - die(); - } - diff --git a/SOURCES/debrand-rh_taint.patch b/SOURCES/debrand-rh_taint.patch deleted file mode 100644 index 8ef4557..0000000 --- a/SOURCES/debrand-rh_taint.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 69c0d42cfa26515196896dea086857c2caccb6eb Mon Sep 17 00:00:00 2001 -From: Jim Perrin -Date: Thu, 19 Jun 2014 10:05:12 -0500 -Subject: [PATCH] branding patch for rh_taint - ---- - kernel/rh_taint.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/kernel/rh_taint.c b/kernel/rh_taint.c -index 59a74b0..0708e15 100644 ---- a/kernel/rh_taint.c -+++ b/kernel/rh_taint.c -@@ -8,7 +8,7 @@ - void mark_hardware_unsupported(const char *msg) - { - /* Print one single message */ -- pr_crit("Warning: %s - this hardware has not undergone testing by Red Hat and might not be certified. Please consult https://hardware.redhat.com for certified hardware.\n", msg); -+ pr_crit("Warning: %s - this hardware has not undergone upstream testing. Please consult http://wiki.centos.org/FAQ for more information\n", msg); - } - EXPORT_SYMBOL(mark_hardware_unsupported); - --- -1.8.3.1 - diff --git a/SOURCES/debrand-single-cpu.patch b/SOURCES/debrand-single-cpu.patch deleted file mode 100644 index 9d2e08b..0000000 --- a/SOURCES/debrand-single-cpu.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 66185f5c6f881847776702e3a7956c504400f4f2 Mon Sep 17 00:00:00 2001 -From: Jim Perrin -Date: Thu, 19 Jun 2014 09:53:13 -0500 -Subject: [PATCH] branding patch for single-cpu systems - ---- - arch/x86/kernel/setup.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c -index b289118..9d25982 100644 ---- a/arch/x86/kernel/setup.c -+++ b/arch/x86/kernel/setup.c -@@ -846,7 +846,7 @@ static void rh_check_supported(void) - if (((boot_cpu_data.x86_max_cores * smp_num_siblings) == 1) && - !x86_hyper && !cpu_has_hypervisor && !is_kdump_kernel()) { - pr_crit("Detected single cpu native boot.\n"); -- pr_crit("Important: In Red Hat Enterprise Linux 7, single threaded, single CPU 64-bit physical systems are unsupported by Red Hat. Please contact your Red Hat support representative for a list of certified and supported systems."); -+ pr_crit("Important: In CentOS 7, single threaded, single CPU 64-bit physical systems are unsupported. Please see http://wiki.centos.org/FAQ for more information"); - } - - /* The RHEL7 kernel does not support this hardware. The kernel will --- -1.8.3.1 - diff --git a/SOURCES/x509.genkey b/SOURCES/x509.genkey index d98f8fe..b1bbe38 100644 --- a/SOURCES/x509.genkey +++ b/SOURCES/x509.genkey @@ -5,9 +5,9 @@ prompt = no x509_extensions = myexts [ req_distinguished_name ] -O = CentOS -CN = CentOS Linux kernel signing key -emailAddress = security@centos.org +O = Red Hat +CN = Red Hat Enterprise Linux kernel signing key +emailAddress = secalert@redhat.com [ myexts ] basicConstraints=critical,CA:FALSE diff --git a/SPECS/kernel.spec b/SPECS/kernel.spec index eeef6be..892b890 100644 --- a/SPECS/kernel.spec +++ b/SPECS/kernel.spec @@ -14,10 +14,10 @@ Summary: The Linux kernel %global distro_build 514 %define rpmversion 3.10.0 -%define pkgrelease 514.21.2.el7 +%define pkgrelease 514.26.1.el7 # allow pkg_release to have configurable %{?dist} tag -%define specrelease 514.21.2%{?dist} +%define specrelease 514.26.1%{?dist} %define pkg_release %{specrelease}%{?buildid} @@ -68,6 +68,9 @@ Summary: The Linux kernel # Control whether we perform a compat. check against published ABI. %define with_kabichk %{?_without_kabichk: 0} %{?!_without_kabichk: 1} +# Control whether we perform a compat. check against DUP ABI. +%define with_kabidupchk 1 + # should we do C=1 builds with sparse %define with_sparse %{?_with_sparse: 1} %{?!_with_sparse: 0} @@ -87,6 +90,11 @@ Summary: The Linux kernel %define with_kabichk 0 %endif +# turn off kABI DUP check if kABI check is disabled +%if !%{with_kabichk} +%define with_kabidupchk 0 +%endif + %define make_target bzImage # Kernel Version Release + Arch -> KVRA @@ -345,16 +353,16 @@ Source10: sign-modules Source11: x509.genkey Source12: extra_certificates %if %{?released_kernel} -Source13: centos.cer +Source13: securebootca.cer Source14: secureboot.cer %define pesign_name redhatsecureboot301 %else -Source13: centos.cer -Source14: secureboot.cer +Source13: redhatsecurebootca2.cer +Source14: redhatsecureboot003.cer %define pesign_name redhatsecureboot003 %endif -Source15: centos-ldup.x509 -Source16: centos-kpatch.x509 +Source15: rheldup3.x509 +Source16: rhelkpatch1.x509 Source18: check-kabi @@ -362,8 +370,12 @@ Source20: Module.kabi_x86_64 Source21: Module.kabi_ppc64 Source22: Module.kabi_ppc64le Source23: Module.kabi_s390x +Source24: Module.kabi_dup_x86_64 +Source25: Module.kabi_dup_ppc64 +Source26: Module.kabi_dup_ppc64le +Source27: Module.kabi_dup_s390x -Source25: kernel-abi-whitelists-%{distro_build}.tar.bz2 +Source30: kernel-abi-whitelists-%{distro_build}.tar.bz2 Source50: kernel-%{version}-x86_64.config Source51: kernel-%{version}-x86_64-debug.config @@ -383,9 +395,6 @@ Source2001: cpupower.config # empty final patch to facilitate testing of kernel patches Patch999999: linux-kernel-test.patch -Patch1000: debrand-single-cpu.patch -Patch1001: debrand-rh_taint.patch -Patch1002: debrand-rh-i686-cpu.patch BuildRoot: %{_tmppath}/kernel-%{KVRA}-root @@ -547,11 +556,11 @@ kernel-gcov includes the gcov graph and source files for gcov coverage collectio %endif %package -n kernel-abi-whitelists -Summary: The CentOS Linux kernel ABI symbol whitelists +Summary: The Red Hat Enterprise Linux kernel ABI symbol whitelists Group: System Environment/Kernel AutoReqProv: no %description -n kernel-abi-whitelists -The kABI package contains information pertaining to the CentOS +The kABI package contains information pertaining to the Red Hat Enterprise Linux kernel ABI, including lists of kernel symbols that are needed by external Linux kernel modules, and a yum plugin to aid enforcement. @@ -694,9 +703,6 @@ cd linux-%{KVRA} cp $RPM_SOURCE_DIR/kernel-%{version}-*.config . ApplyOptionalPatch linux-kernel-test.patch -ApplyOptionalPatch debrand-single-cpu.patch -ApplyOptionalPatch debrand-rh_taint.patch -ApplyOptionalPatch debrand-rh-i686-cpu.patch # Any further pre-build tree manipulations happen here. @@ -855,7 +861,7 @@ BuildKernel() { fi # EFI SecureBoot signing, x86_64-only %ifarch x86_64 - %pesign -s -i $KernelImage -o $KernelImage.signed -a %{SOURCE13} -c %{SOURCE13} + %pesign -s -i $KernelImage -o $KernelImage.signed -a %{SOURCE13} -c %{SOURCE14} -n %{pesign_name} mv $KernelImage.signed $KernelImage %endif $CopyKernel $KernelImage $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer @@ -933,6 +939,17 @@ BuildKernel() { fi %endif +%if %{with_kabidupchk} + echo "**** kABI DUP checking is enabled in kernel SPEC file. ****" + if [ -e $RPM_SOURCE_DIR/Module.kabi_dup_%{_target_cpu}$Flavour ]; then + cp $RPM_SOURCE_DIR/Module.kabi_dup_%{_target_cpu}$Flavour $RPM_BUILD_ROOT/Module.kabi + $RPM_SOURCE_DIR/check-kabi -k $RPM_BUILD_ROOT/Module.kabi -s Module.symvers || exit 1 + rm $RPM_BUILD_ROOT/Module.kabi # for now, don't keep it around. + else + echo "**** NOTE: Cannot find DUP reference Module.kabi file. ****" + fi +%endif + # then drop all but the needed Makefiles/Kconfig files rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Documentation rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts @@ -1221,7 +1238,7 @@ INSTALL_KABI_PATH=$RPM_BUILD_ROOT/lib/modules/ mkdir -p $INSTALL_KABI_PATH # install kabi releases directories -tar xjvf %{SOURCE25} -C $INSTALL_KABI_PATH +tar xjvf %{SOURCE30} -C $INSTALL_KABI_PATH %endif # with_kernel_abi_whitelists %if %{with_perf} @@ -1550,11 +1567,58 @@ fi %kernel_variant_files %{with_kdump} kdump %changelog -* Mon Jun 19 2017 CentOS Sources - 3.10.0-514.21.2.el7 -- Apply debranding changes - -* Sun May 28 2017 Frantisek Hrbata [3.10.0-514.21.2.el7] -- [mm] enlarge stack guard gap (Larry Woodman) [1452732 1452733] +* Tue Jun 20 2017 Frantisek Hrbata [3.10.0-514.26.1.el7] +- [mm] enlarge stack guard gap (Larry Woodman) [1452732 1452733] {CVE-2017-1000364} +- Revert: [md] dm mirror: use all available legs on multiple failures (Mike Snitzer) [1449176 1383444] + +* Sat May 27 2017 Frantisek Hrbata [3.10.0-514.25.1.el7] +- [lib] kobject: grab an extra reference on kobject->sd to allow duplicate deletes (Aristeu Rozanski) [1454851 1427252] +- [kernel] module: When modifying a module's text ignore modules which are going away too (Aaron Tomlin) [1454684 1386313] +- [kernel] module: Ensure a module's state is set accordingly during module coming cleanup code (Aaron Tomlin) [1454684 1386313] +- [net] vxlan: do not output confusing error message (Jiri Benc) [1454636 1445054] +- [net] vxlan: correctly handle ipv6.disable module parameter (Jiri Benc) [1454636 1445054] +- [iommu] vt-d: fix range computation when making room for large pages (Alex Williamson) [1450856 1435612] +- [fs] nfsd: stricter decoding of write-like NFSv2/v3 ops ("J. Bruce Fields") [1449282 1443204] {CVE-2017-7895} +- [fs] nfsd4: minor NFSv2/v3 write decoding cleanup ("J. Bruce Fields") [1449282 1443204] {CVE-2017-7895} +- [md] dm mirror: use all available legs on multiple failures (Mike Snitzer) [1449176 1383444] +- [fs] nfsd: check for oversized NFSv2/v3 arguments ("J. Bruce Fields") [1447642 1442407] {CVE-2017-7645} +- [scsi] ses: don't get power status of SES device slot on probe (Gustavo Duarte) [1446650 1434768] +- [scsi] ipr: do not set DID_PASSTHROUGH on CHECK CONDITION (Steve Best) [1446649 1441747] +- [net] macsec: dynamically allocate space for sglist (Sabrina Dubroca) [1445546 1445545] {CVE-2017-7477} +- [net] macsec: avoid heap overflow in skb_to_sgvec (Sabrina Dubroca) [1445546 1445545] {CVE-2017-7477} +- [fs] gfs2: Allow glocks to be unlocked after withdraw (Robert S Peterson) [1433882 1404005] +- [net] tcp: avoid infinite loop in tcp_splice_read() (Davide Caratti) [1430579 1430580] {CVE-2017-6214} +- [mm] vma_merge: correct false positive from __vma_unlink->validate_mm_rb (Andrea Arcangeli) [1428840 1374548] +- [mm] vma_merge: fix race vm_page_prot race condition against rmap_walk (Andrea Arcangeli) [1428840 1374548] +- [mm] fix use-after-free if memory allocation failed in vma_adjust() (Andrea Arcangeli) [1428840 1374548] +- [x86] kvm: x86: fix emulation of "MOV SS, null selector" (Radim Krcmar) [1414742 1414743] {CVE-2017-2583} +- [powerpc] prom: Increase minimum RMA size to 512MB (Gustavo Duarte) [1450041 1411321] +- [pci] pciehp: Prioritize data-link event over presence detect (Myron Stowe) [1450124 1435818] +- [pci] pciehp: Don't re-read Slot Status when queuing hotplug event (Myron Stowe) [1450124 1435818] +- [pci] pciehp: Process all hotplug events before looking for new ones (Myron Stowe) [1450124 1435818] +- [pci] pciehp: Rename pcie_isr() locals for clarity (Myron Stowe) [1450124 1435818] + +* Sat May 20 2017 Frantisek Hrbata [3.10.0-514.24.1.el7] +- [scsi] lpfc: Fix panic on BFS configuration (Maurizio Lombardi) [1452044 1443116] +- [vfio] type1: Reduce repetitive calls in vfio_pin_pages_remote() (Alex Williamson) [1450855 1438403] +- [vfio] type1: Remove locked page accounting workqueue (Alex Williamson) [1450855 1438403] +- [fs] nfs: Allow getattr to also report readdirplus cache hits (Dave Wysochanski) [1450851 1442068] +- [fs] nfs: Be more targeted about readdirplus use when doing lookup/revalidation (Dave Wysochanski) [1450851 1442068] +- [fs] nfs: Fix a performance regression in readdir (Dave Wysochanski) [1450851 1442068] +- [x86] xen: do not re-use pirq number cached in pci device msi msg data (Vitaly Kuznetsov) [1450037 1433831] +- [powerpc] mm: Add missing global TLB invalidate if cxl is active (Steve Best) [1449178 1440776] +- [powerpc] boot: Fix zImage TOC alignment (Gustavo Duarte) [1444343 1395838] + +* Wed May 10 2017 Frantisek Hrbata [3.10.0-514.23.1.el7] +- [scsi] qla2xxx: Defer marking device lost when receiving an RSCN (Himanshu Madhani) [1446246 1436940] +- [scsi] qla2xxx: Fix typo in driver (Himanshu Madhani) [1446246 1436940] +- [scsi] qla2xxx: Fix crash in qla2xxx_eh_abort on bad ptr (Himanshu Madhani) [1446246 1436940] +- [scsi] qla2xxx: Avoid that issuing a LIP triggers a kernel crash (Himanshu Madhani) [1446246 1436940] +- [scsi] qla2xxx: Add fix to read correct register value for ISP82xx (Himanshu Madhani) [1446246 1436940] +- [scsi] qla2xxx: Disable the adapter and skip error recovery in case of register disconnect (Himanshu Madhani) [1446246 1436940] + +* Thu Apr 27 2017 Frantisek Hrbata [3.10.0-514.22.1.el7] +- [mm] hugetlb: don't use reserved during VM_SHARED mapping cow (Larry Woodman) [1445184 1385473] * Sat Apr 22 2017 Frantisek Hrbata [3.10.0-514.21.1.el7] - [kernel] sched/core: Fix an SMP ordering race in try_to_wake_up() vs. schedule() (Gustavo Duarte) [1441547 1423400]