rebase std kernel patch to CentOS7.6 3.10.0-957.1.3

fix compile error in drbd_req.c for improper usage of
request queue API; fix warning in kernel/bpf/core.c
for implicit declaration trace call for CFLAG
-Werror-implicit-function-declaration

remove patch change is_swiotlb_buffer in lib/swiotlb.c
As change already in new kernel code base

Story: 2004521
Task: 28260
Depends-On: https://review.openstack.org/625773/

Change-Id: I4a3af98b6efe6d31e66db39302f3af8c4ff19d2c
Signed-off-by: Martin, Chen <haochuan.z.chen@intel.com>
This commit is contained in:
Martin, Chen 2018-12-18 12:37:53 +08:00 committed by Shuicheng Lin
parent 1a92bd11e5
commit 794737dac2
22 changed files with 166 additions and 120 deletions

View File

@ -1,4 +1,4 @@
COPY_LIST="files/*" COPY_LIST="files/*"
TIS_PATCH_VER=36 TIS_PATCH_VER=1
BUILD_IS_BIG=11 BUILD_IS_BIG=11
BUILD_IS_SLOW=12 BUILD_IS_SLOW=12

View File

@ -17,29 +17,29 @@ index 1c3a765..f2499b4 100644
%define dist .el7 %define dist .el7
-# % define buildid .local -# % define buildid .local
+# This is the WRS patch release +# This is the STX patch release
+%define buildid .%{tis_patch_ver}.tis +%define buildid .%{tis_patch_ver}.tis
# For a kernel released for public testing, released_kernel should be 1. # For a kernel released for public testing, released_kernel should be 1.
# For internal testing builds during development, it should be 0. # For internal testing builds during development, it should be 0.
@@ -14,12 +15,14 @@ Summary: The Linux kernel @@ -14,12 +15,14 @@ Summary: The Linux kernel
%global distro_build 862 %global distro_build 957
%define rpmversion 3.10.0 %define rpmversion 3.10.0
-%define pkgrelease 862.11.6.el7 -%define pkgrelease 957.1.3.el7
+%define _pkgrelease 862.11.6 +%define _pkgrelease 957.1.3
+%define pkgrelease %{_pkgrelease}.el7 +%define pkgrelease %{_pkgrelease}.el7
+ +
# allow pkg_release to have configurable %%{?dist} tag # allow pkg_release to have configurable %%{?dist} tag
%define specrelease 862.11.6%{?dist} %define specrelease 957.1.3%{?dist}
-%define pkg_release %{specrelease}%{?buildid} -%define pkg_release %{specrelease}%{?buildid}
+%define pkg_release %{specrelease}%{buildid} +%define pkg_release %{specrelease}%{buildid}
# The kernel tarball/base version # The kernel tarball/base version
%define rheltarball %{rpmversion}-%{pkgrelease} %define rheltarball %{rpmversion}-%{pkgrelease}
@@ -66,7 +69,7 @@ Summary: The Linux kernel @@ -68,7 +71,7 @@ Summary: The Linux kernel
%define with_dbgonly %{?_with_dbgonly: 1} %{?!_with_dbgonly: 0} %define with_dbgonly %{?_with_dbgonly: 1} %{?!_with_dbgonly: 0}
# Control whether we perform a compat. check against published ABI. # Control whether we perform a compat. check against published ABI.
@ -48,7 +48,7 @@ index 1c3a765..f2499b4 100644
# Control whether we perform a compat. check against DUP ABI. # Control whether we perform a compat. check against DUP ABI.
%define with_kabidupchk 1 %define with_kabidupchk 1
@@ -89,7 +92,7 @@ Summary: The Linux kernel @@ -91,7 +94,7 @@ Summary: The Linux kernel
# Set debugbuildsenabled to 1 for production (build separate debug kernels) # Set debugbuildsenabled to 1 for production (build separate debug kernels)
# and 0 for rawhide (all kernels are debug kernels). # and 0 for rawhide (all kernels are debug kernels).
# See also 'make debug' and 'make release'. RHEL only ever does 1. # See also 'make debug' and 'make release'. RHEL only ever does 1.
@ -57,7 +57,7 @@ index 1c3a765..f2499b4 100644
%define with_gcov %{?_with_gcov: 1} %{?!_with_gcov: 0} %define with_gcov %{?_with_gcov: 1} %{?!_with_gcov: 0}
@@ -370,6 +373,7 @@ BuildRequires: bison flex @@ -385,6 +388,7 @@ BuildRequires: bison flex
# required for zfcpdump # required for zfcpdump
BuildRequires: glibc-static BuildRequires: glibc-static
%endif %endif
@ -65,11 +65,11 @@ index 1c3a765..f2499b4 100644
Source0: linux-%{rpmversion}-%{pkgrelease}.tar.xz Source0: linux-%{rpmversion}-%{pkgrelease}.tar.xz
@@ -435,6 +439,12 @@ Patch1000: debrand-single-cpu.patch @@ -450,6 +454,12 @@ Patch1000: debrand-single-cpu.patch
Patch1001: debrand-rh_taint.patch Patch1001: debrand-rh_taint.patch
Patch1002: debrand-rh-i686-cpu.patch Patch1002: debrand-rh-i686-cpu.patch
+# Titanium Cloud sources here. +# StarlingX Cloud sources here.
+# Not sure if we need to worry about numerical collisions between +# Not sure if we need to worry about numerical collisions between
+# SourceX and PatchX, so let's not risk it +# SourceX and PatchX, so let's not risk it
+Source30000: kernel-3.10.0-x86_64.config.tis_extra +Source30000: kernel-3.10.0-x86_64.config.tis_extra
@ -78,9 +78,9 @@ index 1c3a765..f2499b4 100644
BuildRoot: %{_tmppath}/kernel-%{KVRA}-root BuildRoot: %{_tmppath}/kernel-%{KVRA}-root
%description %description
@@ -586,6 +596,13 @@ This package provides debug information for package kernel-tools. @@ -612,6 +622,13 @@ manipulation of eBPF programs and maps.
%endif # with_tools %endif # with_bpftool
+%ifarch x86_64 +%ifarch x86_64
+%package unsigned +%package unsigned
@ -92,7 +92,7 @@ index 1c3a765..f2499b4 100644
%if %{with_gcov} %if %{with_gcov}
%package gcov %package gcov
Summary: gcov graph and source files for coverage data collection. Summary: gcov graph and source files for coverage data collection.
@@ -751,6 +768,9 @@ cd linux-%{KVRA} @@ -777,6 +794,9 @@ cd linux-%{KVRA}
# Drop some necessary files from the source dir into the buildroot # Drop some necessary files from the source dir into the buildroot
cp $RPM_SOURCE_DIR/kernel-%{version}-*.config . cp $RPM_SOURCE_DIR/kernel-%{version}-*.config .
@ -102,15 +102,15 @@ index 1c3a765..f2499b4 100644
ApplyOptionalPatch linux-kernel-test.patch ApplyOptionalPatch linux-kernel-test.patch
ApplyOptionalPatch debrand-single-cpu.patch ApplyOptionalPatch debrand-single-cpu.patch
ApplyOptionalPatch debrand-rh_taint.patch ApplyOptionalPatch debrand-rh_taint.patch
@@ -795,6 +815,15 @@ for i in *.config @@ -821,6 +841,15 @@ for i in *.config
do do
mv $i .config mv $i .config
Arch=`head -1 .config | cut -b 3-` Arch=`head -1 .config | cut -b 3-`
+ +
+ # Handle Titanium Cloud customizations. Use -n to match oldnoconfig below. We want this before + # Handle StarlingX Cloud customizations. Use -n to match oldnoconfig below. We want this before
+ # the make line below so that the one below removes any dependencies of ones that we + # the make line below so that the one below removes any dependencies of ones that we
+ # turn off here. We also want it before "make listnewconfig" so that we can set the + # turn off here. We also want it before "make listnewconfig" so that we can set the
+ # config option for new configs introduced in the Titanium Cloud patches. + # config option for new configs introduced in the StarlingX Cloud patches.
+ if [ -f ${i}.tis_extra ]; then + if [ -f ${i}.tis_extra ]; then
+ scripts/kconfig/merge_config.sh -m -n .config ${i}.tis_extra + scripts/kconfig/merge_config.sh -m -n .config ${i}.tis_extra
+ fi + fi
@ -118,7 +118,7 @@ index 1c3a765..f2499b4 100644
make %{?cross_opts} ARCH=$Arch listnewconfig | grep -E '^CONFIG_' >.newoptions || true make %{?cross_opts} ARCH=$Arch listnewconfig | grep -E '^CONFIG_' >.newoptions || true
%if %{listnewconfig_fail} %if %{listnewconfig_fail}
if [ -s .newoptions ]; then if [ -s .newoptions ]; then
@@ -868,12 +897,13 @@ BuildKernel() { @@ -894,12 +923,13 @@ BuildKernel() {
# and now to start the build process # and now to start the build process
@ -133,7 +133,7 @@ index 1c3a765..f2499b4 100644
cp configs/$Config .config cp configs/$Config .config
@@ -888,8 +918,8 @@ BuildKernel() { @@ -914,8 +944,8 @@ BuildKernel() {
fi fi
%endif %endif
@ -144,25 +144,25 @@ index 1c3a765..f2499b4 100644
if [ "$Flavour" != "kdump" ]; then if [ "$Flavour" != "kdump" ]; then
make -s %{?cross_opts} ARCH=$Arch V=1 %{?_smp_mflags} KCFLAGS="%{?kcflags}" WITH_GCOV="%{?with_gcov}" modules %{?sparse_mflags} || exit 1 make -s %{?cross_opts} ARCH=$Arch V=1 %{?_smp_mflags} KCFLAGS="%{?kcflags}" WITH_GCOV="%{?with_gcov}" modules %{?sparse_mflags} || exit 1
@@ -913,6 +943,8 @@ BuildKernel() { @@ -939,6 +969,8 @@ BuildKernel() {
fi fi
# EFI SecureBoot signing, x86_64-only # EFI SecureBoot signing, x86_64-only
%ifarch x86_64 %ifarch x86_64
+ cp $KernelImage vmlinuz.unsigned + cp $KernelImage vmlinuz.unsigned
+ $CopyKernel vmlinuz.unsigned $RPM_BUILD_ROOT/%{image_install_path}/vmlinuz.unsigned + $CopyKernel vmlinuz.unsigned $RPM_BUILD_ROOT/%{image_install_path}/vmlinuz.unsigned
%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 mv $KernelImage.signed $KernelImage
%endif %endif
@@ -929,7 +961,7 @@ BuildKernel() { @@ -955,7 +987,7 @@ BuildKernel() {
if [ "$Flavour" != "kdump" ]; then if [ "$Flavour" != "kdump" ]; then
# Override $(mod-fw) because we don't want it to install any firmware # Override $(mod-fw) because we don't want it to install any firmware
# we'll get it from the linux-firmware package and we don't want conflicts # we'll get it from the linux-firmware package and we don't want conflicts
- make -s %{?cross_opts} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_install KERNELRELEASE=$KernelVer mod-fw= - make -s %{?cross_opts} %{?_smp_mflags} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_install KERNELRELEASE=$KernelVer mod-fw=
+ make -s -j"%(nproc)" %{?cross_opts} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_install KERNELRELEASE=$KernelVer mod-fw= + make -s -j"%(nproc)" %{?cross_opts} %{?_smp_mflags} ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_install KERNELRELEASE=$KernelVer mod-fw=
%if %{with_gcov} %if %{with_gcov}
# install gcov-needed files to $BUILDROOT/$BUILD/...: # install gcov-needed files to $BUILDROOT/$BUILD/...:
# gcov_info->filename is absolute path # gcov_info->filename is absolute path
@@ -939,7 +971,7 @@ BuildKernel() { @@ -965,7 +997,7 @@ BuildKernel() {
%endif %endif
fi fi
%ifarch %{vdso_arches} %ifarch %{vdso_arches}
@ -171,20 +171,20 @@ index 1c3a765..f2499b4 100644
if [ ! -s ldconfig-kernel.conf ]; then if [ ! -s ldconfig-kernel.conf ]; then
echo > ldconfig-kernel.conf "\ echo > ldconfig-kernel.conf "\
# Placeholder file, no vDSO hwcap entries used in this kernel." # Placeholder file, no vDSO hwcap entries used in this kernel."
@@ -1148,6 +1180,12 @@ BuildKernel() { @@ -1174,6 +1206,12 @@ BuildKernel() {
cp signing_key.priv signing_key.priv.sign${Flavour:+.${Flavour}} cp signing_key.priv signing_key.priv.sign${Flavour:+.${Flavour}}
cp signing_key.x509 signing_key.x509.sign${Flavour:+.${Flavour}} cp signing_key.x509 signing_key.x509.sign${Flavour:+.${Flavour}}
+ # WRS: Copy these keys as part of the devel package + # STX: Copy these keys as part of the devel package
+ # The Module signing keys are to ensure that only Out-of-tree + # The Module signing keys are to ensure that only Out-of-tree
+ # built against the Titanium Kernel get signed and loaded sans warnings + # built against the StarlingX Kernel get signed and loaded sans warnings
+ cp signing_key.priv ${RPM_BUILD_ROOT}/lib/modules/${KernelVer}/build/ + cp signing_key.priv ${RPM_BUILD_ROOT}/lib/modules/${KernelVer}/build/
+ cp signing_key.x509 ${RPM_BUILD_ROOT}/lib/modules/${KernelVer}/build/ + cp signing_key.x509 ${RPM_BUILD_ROOT}/lib/modules/${KernelVer}/build/
+ +
# remove files that will be auto generated by depmod at rpm -i time # remove files that will be auto generated by depmod at rpm -i time
for i in alias alias.bin builtin.bin ccwmap dep dep.bin ieee1394map inputmap isapnpmap ofmap pcimap seriomap symbols symbols.bin usbmap softdep devname for i in alias alias.bin builtin.bin ccwmap dep dep.bin ieee1394map inputmap isapnpmap ofmap pcimap seriomap symbols symbols.bin usbmap softdep devname
do do
@@ -1208,15 +1246,15 @@ make %{?cross_opts} %{?_smp_mflags} -C tools/power/cpupower CPUFREQ_BENCH=false @@ -1234,15 +1272,15 @@ make %{?cross_opts} %{?_smp_mflags} -C tools/power/cpupower CPUFREQ_BENCH=false
%endif %endif
%ifarch x86_64 %ifarch x86_64
pushd tools/power/x86/x86_energy_perf_policy/ pushd tools/power/x86/x86_energy_perf_policy/
@ -203,7 +203,7 @@ index 1c3a765..f2499b4 100644
popd popd
%endif %endif
@@ -1487,6 +1525,10 @@ fi}\ @@ -1536,6 +1574,10 @@ fi}\
%{expand:\ %{expand:\
%{_sbindir}/new-kernel-pkg --package kernel%{?-v:-%{-v*}} --install %{KVRA}%{?-v:.%{-v*}} || exit $?\ %{_sbindir}/new-kernel-pkg --package kernel%{?-v:-%{-v*}} --install %{KVRA}%{?-v:.%{-v*}} || exit $?\
}\ }\
@ -214,7 +214,7 @@ index 1c3a765..f2499b4 100644
%{nil} %{nil}
# #
@@ -1697,6 +1739,11 @@ fi @@ -1756,6 +1798,11 @@ fi
%kernel_variant_files %{with_debug} debug %kernel_variant_files %{with_debug} debug
%kernel_variant_files %{with_kdump} kdump %kernel_variant_files %{with_kdump} kdump
@ -224,7 +224,7 @@ index 1c3a765..f2499b4 100644
+%endif +%endif
+ +
%changelog %changelog
* Tue Aug 14 2018 CentOS Sources <bugs@centos.org> - 3.10.0-862.11.6.el7 * Mon Nov 26 2018 CentOS Sources <bugs@centos.org> - 3.10.0-957.1.3.el7
- Apply debranding changes - Apply debranding changes
-- --
2.7.4 2.7.4

View File

@ -5,27 +5,30 @@ Subject: [PATCH 4/5] Compile issues
Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com> Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com>
--- ---
SPECS/kernel.spec | 3 +++ SPECS/kernel.spec | 6 ++++++
1 file changed, 3 insertions(+) 1 file changed, 6 insertions(+)
diff --git a/SPECS/kernel.spec b/SPECS/kernel.spec diff --git a/SPECS/kernel.spec b/SPECS/kernel.spec
index 01dd989..d45c419 100644 index 01dd989..d45c419 100644
--- a/SPECS/kernel.spec --- a/SPECS/kernel.spec
+++ b/SPECS/kernel.spec +++ b/SPECS/kernel.spec
@@ -474,6 +474,8 @@ Patch40024: aic94xx-Skip-reading-user-settings-if-flash-is-not-f.patch @@ -489,6 +489,10 @@ Patch40024: aic94xx-Skip-reading-user-settings-if-flash-is-not-f.patch
Patch40025: dpt_i2o-fix-build-warning.patch Patch40025: dpt_i2o-fix-build-warning.patch
# DRBD was choking on write same # DRBD was choking on write same
Patch40026: turn-off-write-same-in-smartqpi-driver.patch Patch40026: turn-off-write-same-in-smartqpi-driver.patch
+# Fix assorted compilation issues +# Fix assorted compilation issues
+Patch40027: fix-compilation-issues.patch +Patch40027: fix-compilation-issues.patch
+# Fix CentOS 7.6 upgrade compile error
+Patch40028: fix-CentOS-7.6-upgrade-compile-error.patch
BuildRoot: %{_tmppath}/kernel-%{KVRA}-root BuildRoot: %{_tmppath}/kernel-%{KVRA}-root
@@ -833,6 +835,7 @@ ApplyOptionalPatch US103091-IMA-System-Configuration.patch @@ -859,6 +863,8 @@ ApplyOptionalPatch US103091-IMA-System-Configuration.patch
ApplyOptionalPatch aic94xx-Skip-reading-user-settings-if-flash-is-not-f.patch ApplyOptionalPatch aic94xx-Skip-reading-user-settings-if-flash-is-not-f.patch
ApplyOptionalPatch dpt_i2o-fix-build-warning.patch ApplyOptionalPatch dpt_i2o-fix-build-warning.patch
ApplyOptionalPatch turn-off-write-same-in-smartqpi-driver.patch ApplyOptionalPatch turn-off-write-same-in-smartqpi-driver.patch
+ApplyOptionalPatch fix-compilation-issues.patch +ApplyOptionalPatch fix-compilation-issues.patch
+ApplyOptionalPatch fix-CentOS-7.6-upgrade-compile-error.patch
# Any further pre-build tree manipulations happen here. # Any further pre-build tree manipulations happen here.

View File

@ -12,11 +12,11 @@ diff --git a/SPECS/kernel.spec b/SPECS/kernel.spec
index eef356a..f1a0092 100644 index eef356a..f1a0092 100644
--- a/SPECS/kernel.spec --- a/SPECS/kernel.spec
+++ b/SPECS/kernel.spec +++ b/SPECS/kernel.spec
@@ -445,6 +445,36 @@ Patch1002: debrand-rh-i686-cpu.patch @@ -460,6 +460,36 @@ Patch1002: debrand-rh-i686-cpu.patch
Source30000: kernel-3.10.0-x86_64.config.tis_extra Source30000: kernel-3.10.0-x86_64.config.tis_extra
Source30001: ima_signing_key.pub Source30001: ima_signing_key.pub
+# Titanium Cloud patches here. +# StarlingX Cloud patches here.
+Patch40001: Fix-compile-issue-when-transparent-hugepages-are-off.patch +Patch40001: Fix-compile-issue-when-transparent-hugepages-are-off.patch
+Patch40002: Notification-of-death-of-arbitrary-processes.patch +Patch40002: Notification-of-death-of-arbitrary-processes.patch
+Patch40003: CGTS-3744-route-do-not-cache-fib-route-info-on-local.patch +Patch40003: CGTS-3744-route-do-not-cache-fib-route-info-on-local.patch
@ -49,11 +49,11 @@ index eef356a..f1a0092 100644
BuildRoot: %{_tmppath}/kernel-%{KVRA}-root BuildRoot: %{_tmppath}/kernel-%{KVRA}-root
%description %description
@@ -776,6 +806,34 @@ ApplyOptionalPatch debrand-single-cpu.patch @@ -802,6 +832,34 @@ ApplyOptionalPatch debrand-single-cpu.patch
ApplyOptionalPatch debrand-rh_taint.patch ApplyOptionalPatch debrand-rh_taint.patch
ApplyOptionalPatch debrand-rh-i686-cpu.patch ApplyOptionalPatch debrand-rh-i686-cpu.patch
+# Titanium Cloud patches here. +# StarlingX Cloud patches here.
+ApplyOptionalPatch Fix-compile-issue-when-transparent-hugepages-are-off.patch +ApplyOptionalPatch Fix-compile-issue-when-transparent-hugepages-are-off.patch
+ApplyOptionalPatch Notification-of-death-of-arbitrary-processes.patch +ApplyOptionalPatch Notification-of-death-of-arbitrary-processes.patch
+ApplyOptionalPatch CGTS-3744-route-do-not-cache-fib-route-info-on-local.patch +ApplyOptionalPatch CGTS-3744-route-do-not-cache-fib-route-info-on-local.patch

View File

@ -32,7 +32,7 @@ diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index e639145..be46349 100644 index e639145..be46349 100644
--- a/kernel/irq/manage.c --- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c +++ b/kernel/irq/manage.c
@@ -366,6 +366,13 @@ setup_affinity(unsigned int irq, struct irq_desc *desc, struct cpumask *mask) @@ -372,6 +372,13 @@ setup_affinity(unsigned int irq, struct irq_desc *desc, struct cpumask *mask)
if (cpumask_intersects(mask, nodemask)) if (cpumask_intersects(mask, nodemask))
cpumask_and(mask, mask, nodemask); cpumask_and(mask, mask, nodemask);
} }
@ -50,7 +50,7 @@ diff --git a/kernel/workqueue.c b/kernel/workqueue.c
index 179cbb2..9524a6f 100644 index 179cbb2..9524a6f 100644
--- a/kernel/workqueue.c --- a/kernel/workqueue.c
+++ b/kernel/workqueue.c +++ b/kernel/workqueue.c
@@ -5424,6 +5424,8 @@ static int __init init_workqueues(void) @@ -5441,6 +5441,8 @@ static int __init init_workqueues(void)
BUG_ON(!(attrs = alloc_workqueue_attrs(GFP_KERNEL))); BUG_ON(!(attrs = alloc_workqueue_attrs(GFP_KERNEL)));
attrs->nice = std_nice[i]; attrs->nice = std_nice[i];
@ -59,7 +59,7 @@ index 179cbb2..9524a6f 100644
unbound_std_wq_attrs[i] = attrs; unbound_std_wq_attrs[i] = attrs;
/* /*
@@ -5434,6 +5436,8 @@ static int __init init_workqueues(void) @@ -5451,6 +5453,8 @@ static int __init init_workqueues(void)
BUG_ON(!(attrs = alloc_workqueue_attrs(GFP_KERNEL))); BUG_ON(!(attrs = alloc_workqueue_attrs(GFP_KERNEL)));
attrs->nice = std_nice[i]; attrs->nice = std_nice[i];
attrs->no_numa = true; attrs->no_numa = true;

View File

@ -35,7 +35,7 @@ diff --git a/net/ipv4/route.c b/net/ipv4/route.c
index f19aca2..5246096 100644 index f19aca2..5246096 100644
--- a/net/ipv4/route.c --- a/net/ipv4/route.c
+++ b/net/ipv4/route.c +++ b/net/ipv4/route.c
@@ -2057,6 +2057,17 @@ static struct rtable *__mkroute_output(const struct fib_result *res, @@ -2121,6 +2121,17 @@ static struct rtable *__mkroute_output(const struct fib_result *res,
*/ */
if (fi && res->prefixlen < 4) if (fi && res->prefixlen < 4)
fi = NULL; fi = NULL;

View File

@ -39,15 +39,15 @@ diff --git a/drivers/base/cpu.c b/drivers/base/cpu.c
index 65e786d..91d620f 100644 index 65e786d..91d620f 100644
--- a/drivers/base/cpu.c --- a/drivers/base/cpu.c
+++ b/drivers/base/cpu.c +++ b/drivers/base/cpu.c
@@ -16,6 +16,7 @@ @@ -15,6 +15,7 @@
#include <linux/percpu.h>
#include <linux/acpi.h> #include <linux/acpi.h>
#include <linux/tick.h> #include <linux/tick.h>
#include <linux/nospec.h>
+#include <linux/pm_qos.h> +#include <linux/pm_qos.h>
#include "base.h" #include "base.h"
@@ -319,6 +320,7 @@ int register_cpu(struct cpu *cpu, int num) @@ -318,6 +319,7 @@ int register_cpu(struct cpu *cpu, int num)
per_cpu(cpu_sys_devices, num) = &cpu->dev; per_cpu(cpu_sys_devices, num) = &cpu->dev;
if (!error) if (!error)
register_cpu_under_node(num, cpu_to_node(num)); register_cpu_under_node(num, cpu_to_node(num));

View File

@ -13,7 +13,7 @@ diff --git a/mm/swap.c b/mm/swap.c
index 0982a35..6dcf38c 100644 index 0982a35..6dcf38c 100644
--- a/mm/swap.c --- a/mm/swap.c
+++ b/mm/swap.c +++ b/mm/swap.c
@@ -998,8 +998,10 @@ void release_pages(struct page **pages, int nr, bool cold) @@ -1040,8 +1040,10 @@ void release_pages(struct page **pages, int nr, bool cold)
if (!put_page_testzero(page)) if (!put_page_testzero(page))
continue; continue;

View File

@ -23,7 +23,7 @@ index 92d6c59..238c90d 100644
set_bit(i, inuse); set_bit(i, inuse);
} }
+ /* WRS extension, want kernel to start at eth1000 */ + /* STX extension, want kernel to start at eth1000 */
+ if (strcmp(name, "eth%d") == 0) { + if (strcmp(name, "eth%d") == 0) {
+ for (i=0; i < 1000; i++) + for (i=0; i < 1000; i++)
+ set_bit(i, inuse); + set_bit(i, inuse);

View File

@ -65,7 +65,7 @@ diff --git a/include/linux/sched.h b/include/linux/sched.h
index d184652..ba6ae5c 100644 index d184652..ba6ae5c 100644
--- a/include/linux/sched.h --- a/include/linux/sched.h
+++ b/include/linux/sched.h +++ b/include/linux/sched.h
@@ -1631,6 +1631,12 @@ struct task_struct { @@ -1649,6 +1649,12 @@ struct task_struct {
short il_next; short il_next;
short pref_node_fork; short pref_node_fork;
#endif #endif
@ -111,7 +111,7 @@ diff --git a/init/Kconfig b/init/Kconfig
index 6ec689c..550cea4 100644 index 6ec689c..550cea4 100644
--- a/init/Kconfig --- a/init/Kconfig
+++ b/init/Kconfig +++ b/init/Kconfig
@@ -1538,6 +1538,21 @@ config VM_EVENT_COUNTERS @@ -1580,6 +1580,21 @@ config VM_EVENT_COUNTERS
on EXPERT systems. /proc/vmstat will only show page counts on EXPERT systems. /proc/vmstat will only show page counts
if VM event counters are disabled. if VM event counters are disabled.
@ -137,10 +137,10 @@ diff --git a/kernel/Makefile b/kernel/Makefile
index 2fb90fa..44a82c1 100644 index 2fb90fa..44a82c1 100644
--- a/kernel/Makefile --- a/kernel/Makefile
+++ b/kernel/Makefile +++ b/kernel/Makefile
@@ -112,6 +112,7 @@ obj-$(CONFIG_RING_BUFFER) += trace/ @@ -113,6 +113,7 @@ obj-$(CONFIG_TRACEPOINTS) += trace/
obj-$(CONFIG_TRACEPOINTS) += trace/
obj-$(CONFIG_IRQ_WORK) += irq_work.o obj-$(CONFIG_IRQ_WORK) += irq_work.o
obj-$(CONFIG_CPU_PM) += cpu_pm.o obj-$(CONFIG_CPU_PM) += cpu_pm.o
obj-$(CONFIG_BPF) += bpf/
+obj-$(CONFIG_SIGEXIT) += death_notify.o +obj-$(CONFIG_SIGEXIT) += death_notify.o
obj-$(CONFIG_PERF_EVENTS) += events/ obj-$(CONFIG_PERF_EVENTS) += events/
@ -457,7 +457,7 @@ diff --git a/kernel/fork.c b/kernel/fork.c
index c75422b..30dee92 100644 index c75422b..30dee92 100644
--- a/kernel/fork.c --- a/kernel/fork.c
+++ b/kernel/fork.c +++ b/kernel/fork.c
@@ -1471,6 +1471,10 @@ static struct task_struct *copy_process(unsigned long clone_flags, @@ -1477,6 +1477,10 @@ static struct task_struct *copy_process(unsigned long clone_flags,
p->sequential_io = 0; p->sequential_io = 0;
p->sequential_io_avg = 0; p->sequential_io_avg = 0;
#endif #endif
@ -472,7 +472,7 @@ diff --git a/kernel/signal.c b/kernel/signal.c
index 35133a7..3f72ac0 100644 index 35133a7..3f72ac0 100644
--- a/kernel/signal.c --- a/kernel/signal.c
+++ b/kernel/signal.c +++ b/kernel/signal.c
@@ -47,6 +47,9 @@ @@ -46,6 +46,9 @@
#include <asm/siginfo.h> #include <asm/siginfo.h>
#include <asm/cacheflush.h> #include <asm/cacheflush.h>
#include "audit.h" /* audit_signal_info() */ #include "audit.h" /* audit_signal_info() */
@ -482,7 +482,7 @@ index 35133a7..3f72ac0 100644
/* /*
* SLAB caches for signal bits. * SLAB caches for signal bits.
@@ -1744,6 +1747,10 @@ bool do_notify_parent(struct task_struct *tsk, int sig) @@ -1740,6 +1743,10 @@ bool do_notify_parent(struct task_struct *tsk, int sig)
__wake_up_parent(tsk, tsk->parent); __wake_up_parent(tsk, tsk->parent);
spin_unlock_irqrestore(&psig->siglock, flags); spin_unlock_irqrestore(&psig->siglock, flags);
@ -493,7 +493,7 @@ index 35133a7..3f72ac0 100644
return autoreap; return autoreap;
} }
@@ -1815,6 +1822,10 @@ static void do_notify_parent_cldstop(struct task_struct *tsk, @@ -1811,6 +1818,10 @@ static void do_notify_parent_cldstop(struct task_struct *tsk,
*/ */
__wake_up_parent(tsk, parent); __wake_up_parent(tsk, parent);
spin_unlock_irqrestore(&sighand->siglock, flags); spin_unlock_irqrestore(&sighand->siglock, flags);

View File

@ -18,7 +18,7 @@ diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c
index 5614e3f..4a0bfed 100644 index 5614e3f..4a0bfed 100644
--- a/drivers/pci/quirks.c --- a/drivers/pci/quirks.c
+++ b/drivers/pci/quirks.c +++ b/drivers/pci/quirks.c
@@ -4289,6 +4289,10 @@ static const struct pci_dev_acs_enabled { @@ -4401,6 +4401,10 @@ static const struct pci_dev_acs_enabled {
/* I219 */ /* I219 */
{ PCI_VENDOR_ID_INTEL, 0x15b7, pci_quirk_mf_endpoint_acs }, { PCI_VENDOR_ID_INTEL, 0x15b7, pci_quirk_mf_endpoint_acs },
{ PCI_VENDOR_ID_INTEL, 0x15b8, pci_quirk_mf_endpoint_acs }, { PCI_VENDOR_ID_INTEL, 0x15b8, pci_quirk_mf_endpoint_acs },

View File

@ -47,7 +47,7 @@ This helps in:
Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com> Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com>
--- ---
Documentation/ABI/testing/sysfs-devices-system-cpu | 65 ++ Documentation/ABI/testing/sysfs-devices-system-cpu | 65 ++
arch/x86/kernel/cpu/intel_cacheinfo.c | 830 +++++++-------------- arch/x86/kernel/cpu/cacheinfo.c | 830 +++++++--------------
drivers/base/Makefile | 2 +- drivers/base/Makefile | 2 +-
drivers/base/cacheinfo.c | 662 ++++++++++++++++ drivers/base/cacheinfo.c | 662 ++++++++++++++++
drivers/base/cpu.c | 54 ++ drivers/base/cpu.c | 54 ++
@ -133,10 +133,10 @@ index ff65f15..7521be8 100644
What: /sys/devices/system/cpu/cpuX/cpufreq/throttle_stats What: /sys/devices/system/cpu/cpuX/cpufreq/throttle_stats
/sys/devices/system/cpu/cpuX/cpufreq/throttle_stats/turbo_stat /sys/devices/system/cpu/cpuX/cpufreq/throttle_stats/turbo_stat
/sys/devices/system/cpu/cpuX/cpufreq/throttle_stats/sub_turbo_stat /sys/devices/system/cpu/cpuX/cpufreq/throttle_stats/sub_turbo_stat
diff --git a/arch/x86/kernel/cpu/intel_cacheinfo.c b/arch/x86/kernel/cpu/intel_cacheinfo.c diff --git a/arch/x86/kernel/cpu/cacheinfo.c b/arch/x86/kernel/cpu/cacheinfo.c
index d529019..bf23bd2 100644 index d529019..bf23bd2 100644
--- a/arch/x86/kernel/cpu/intel_cacheinfo.c --- a/arch/x86/kernel/cpu/cacheinfo.c
+++ b/arch/x86/kernel/cpu/intel_cacheinfo.c +++ b/arch/x86/kernel/cpu/cacheinfo.c
@@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
/* /*
- * Routines to indentify caches on Intel CPU. - * Routines to indentify caches on Intel CPU.
@ -499,7 +499,7 @@ index d529019..bf23bd2 100644
return -EIO; /* better error ? */ return -EIO; /* better error ? */
this_leaf->eax = eax; this_leaf->eax = eax;
@@ -576,14 +631,14 @@ static int find_num_cache_leaves(struct cpuinfo_x86 *c) @@ -576,7 +631,7 @@ static int find_num_cache_leaves(struct cpuinfo_x86 *c)
/* Do cpuid(op) loop to find out num_cache_leaves */ /* Do cpuid(op) loop to find out num_cache_leaves */
cpuid_count(op, i, &eax, &ebx, &ecx, &edx); cpuid_count(op, i, &eax, &ebx, &ecx, &edx);
cache_eax.full = eax; cache_eax.full = eax;
@ -508,6 +508,7 @@ index d529019..bf23bd2 100644
return i; return i;
} }
@@ -622,7 +677,7 @@ void cacheinfo_amd_init_llc_id(struct cpuinfo_x86 *c, int cpu, u8 node_id)
void init_amd_cacheinfo(struct cpuinfo_x86 *c) void init_amd_cacheinfo(struct cpuinfo_x86 *c)
{ {
@ -516,7 +517,7 @@ index d529019..bf23bd2 100644
num_cache_leaves = find_num_cache_leaves(c); num_cache_leaves = find_num_cache_leaves(c);
} else if (c->extended_cpuid_level >= 0x80000006) { } else if (c->extended_cpuid_level >= 0x80000006) {
if (cpuid_edx(0x80000006) & 0xf000) if (cpuid_edx(0x80000006) & 0xf000)
@@ -600,7 +655,7 @@ unsigned int init_intel_cacheinfo(struct cpuinfo_x86 *c) @@ -639,7 +694,7 @@ unsigned int init_intel_cacheinfo(struct cpuinfo_x86 *c)
unsigned int new_l1d = 0, new_l1i = 0; /* Cache sizes from cpuid(4) */ unsigned int new_l1d = 0, new_l1i = 0; /* Cache sizes from cpuid(4) */
unsigned int new_l2 = 0, new_l3 = 0, i; /* Cache sizes from cpuid(4) */ unsigned int new_l2 = 0, new_l3 = 0, i; /* Cache sizes from cpuid(4) */
unsigned int l2_id = 0, l3_id = 0, num_threads_sharing, index_msb; unsigned int l2_id = 0, l3_id = 0, num_threads_sharing, index_msb;
@ -525,7 +526,7 @@ index d529019..bf23bd2 100644
unsigned int cpu = c->cpu_index; unsigned int cpu = c->cpu_index;
#endif #endif
@@ -618,36 +673,34 @@ unsigned int init_intel_cacheinfo(struct cpuinfo_x86 *c) @@ -657,36 +712,34 @@ unsigned int init_intel_cacheinfo(struct cpuinfo_x86 *c)
* parameters cpuid leaf to find the cache details * parameters cpuid leaf to find the cache details
*/ */
for (i = 0; i < num_cache_leaves; i++) { for (i = 0; i < num_cache_leaves; i++) {
@ -587,7 +588,7 @@ index d529019..bf23bd2 100644
} }
} }
} }
@@ -721,34 +774,40 @@ unsigned int init_intel_cacheinfo(struct cpuinfo_x86 *c) @@ -760,34 +813,40 @@ unsigned int init_intel_cacheinfo(struct cpuinfo_x86 *c)
if (new_l2) { if (new_l2) {
l2 = new_l2; l2 = new_l2;
@ -640,7 +641,7 @@ index d529019..bf23bd2 100644
int i, sibling; int i, sibling;
/* /*
@@ -757,40 +816,43 @@ static int cache_shared_amd_cpu_map_setup(unsigned int cpu, int index) @@ -796,40 +855,43 @@ static int cache_shared_amd_cpu_map_setup(unsigned int cpu, int index)
*/ */
if (index == 3) { if (index == 3) {
for_each_cpu(i, cpu_llc_shared_mask(cpu)) { for_each_cpu(i, cpu_llc_shared_mask(cpu)) {
@ -697,7 +698,7 @@ index d529019..bf23bd2 100644
} }
} }
} else } else
@@ -799,72 +861,70 @@ static int cache_shared_amd_cpu_map_setup(unsigned int cpu, int index) @@ -838,72 +900,70 @@ static int cache_shared_amd_cpu_map_setup(unsigned int cpu, int index)
return 1; return 1;
} }
@ -814,7 +815,7 @@ index d529019..bf23bd2 100644
} }
/* /*
@@ -886,411 +946,37 @@ static void get_cache_id(int cpu, struct _cpuid4_info_regs *id4_regs) @@ -925,411 +985,37 @@ static void get_cache_id(int cpu, struct _cpuid4_info_regs *id4_regs)
int get_cpu_cache_id(int cpu, int level) int get_cpu_cache_id(int cpu, int level)
{ {
int i; int i;
@ -1931,7 +1932,7 @@ diff --git a/drivers/base/cpu.c b/drivers/base/cpu.c
index 290609b..65e786d 100644 index 290609b..65e786d 100644
--- a/drivers/base/cpu.c --- a/drivers/base/cpu.c
+++ b/drivers/base/cpu.c +++ b/drivers/base/cpu.c
@@ -340,6 +340,60 @@ struct device *get_cpu_device(unsigned cpu) @@ -338,6 +338,60 @@ struct device *get_cpu_device(unsigned cpu)
} }
EXPORT_SYMBOL_GPL(get_cpu_device); EXPORT_SYMBOL_GPL(get_cpu_device);

View File

@ -31,7 +31,7 @@ diff --git a/fs/namei.c b/fs/namei.c
index 9f90b63..bf91ea0 100644 index 9f90b63..bf91ea0 100644
--- a/fs/namei.c --- a/fs/namei.c
+++ b/fs/namei.c +++ b/fs/namei.c
@@ -3236,7 +3236,7 @@ opened: @@ -3225,7 +3225,7 @@ opened:
error = open_check_o_direct(file); error = open_check_o_direct(file);
if (error) if (error)
goto exit_fput; goto exit_fput;
@ -44,7 +44,7 @@ diff --git a/fs/nfsd/vfs.c b/fs/nfsd/vfs.c
index 00e98c3..cb9250e 100644 index 00e98c3..cb9250e 100644
--- a/fs/nfsd/vfs.c --- a/fs/nfsd/vfs.c
+++ b/fs/nfsd/vfs.c +++ b/fs/nfsd/vfs.c
@@ -883,7 +883,7 @@ nfsd_open(struct svc_rqst *rqstp, struct svc_fh *fhp, umode_t type, @@ -898,7 +898,7 @@ nfsd_open(struct svc_rqst *rqstp, struct svc_fh *fhp, umode_t type,
goto out_nfserr; goto out_nfserr;
} }
@ -80,7 +80,7 @@ index eb6f994..2dbaf80 100644
void *i_private; /* fs or device private pointer */ void *i_private; /* fs or device private pointer */
}; };
@@ -2827,7 +2826,6 @@ static inline bool inode_is_open_for_write(const struct inode *inode) @@ -2830,7 +2829,6 @@ static inline bool inode_is_open_for_write(const struct inode *inode)
return atomic_read(&inode->i_writecount) > 0; return atomic_read(&inode->i_writecount) > 0;
} }
@ -88,7 +88,7 @@ index eb6f994..2dbaf80 100644
static inline void i_readcount_dec(struct inode *inode) static inline void i_readcount_dec(struct inode *inode)
{ {
BUG_ON(!atomic_read(&inode->i_readcount)); BUG_ON(!atomic_read(&inode->i_readcount));
@@ -2837,16 +2835,7 @@ static inline void i_readcount_inc(struct inode *inode) @@ -2840,16 +2838,7 @@ static inline void i_readcount_inc(struct inode *inode)
{ {
atomic_inc(&inode->i_readcount); atomic_inc(&inode->i_readcount);
} }
@ -229,7 +229,7 @@ diff --git a/security/security.c b/security/security.c
index f069482..646a0e3 100644 index f069482..646a0e3 100644
--- a/security/security.c --- a/security/security.c
+++ b/security/security.c +++ b/security/security.c
@@ -156,6 +156,110 @@ EXPORT_SYMBOL(unregister_lsm_notifier); @@ -157,6 +157,110 @@ EXPORT_SYMBOL(unregister_lsm_notifier);
/* Security operations */ /* Security operations */
@ -340,7 +340,7 @@ index f069482..646a0e3 100644
int security_ptrace_access_check(struct task_struct *child, unsigned int mode) int security_ptrace_access_check(struct task_struct *child, unsigned int mode)
{ {
#ifdef CONFIG_SECURITY_YAMA_STACKED #ifdef CONFIG_SECURITY_YAMA_STACKED
@@ -715,8 +819,11 @@ EXPORT_SYMBOL(security_inode_listsecurity); @@ -716,8 +820,11 @@ EXPORT_SYMBOL(security_inode_listsecurity);
void security_inode_getsecid(struct inode *inode, u32 *secid) void security_inode_getsecid(struct inode *inode, u32 *secid)
{ {
@ -353,7 +353,7 @@ index f069482..646a0e3 100644
int security_inode_copy_up(struct dentry *src, struct cred **new) int security_inode_copy_up(struct dentry *src, struct cred **new)
{ {
@@ -1525,6 +1632,7 @@ int security_audit_rule_init(u32 field, u32 op, char *rulestr, void **lsmrule) @@ -1526,6 +1633,7 @@ int security_audit_rule_init(u32 field, u32 op, char *rulestr, void **lsmrule)
{ {
return security_ops->audit_rule_init(field, op, rulestr, lsmrule); return security_ops->audit_rule_init(field, op, rulestr, lsmrule);
} }
@ -361,13 +361,14 @@ index f069482..646a0e3 100644
int security_audit_rule_known(struct audit_krule *krule) int security_audit_rule_known(struct audit_krule *krule)
{ {
@@ -1541,5 +1649,6 @@ int security_audit_rule_match(u32 secid, u32 field, u32 op, void *lsmrule, @@ -1542,6 +1650,7 @@ int security_audit_rule_match(u32 secid, u32 field, u32 op, void *lsmrule,
{ {
return security_ops->audit_rule_match(secid, field, op, lsmrule, actx); return security_ops->audit_rule_match(secid, field, op, lsmrule, actx);
} }
+EXPORT_SYMBOL_GPL(security_audit_rule_match); +EXPORT_SYMBOL_GPL(security_audit_rule_match);
#endif /* CONFIG_AUDIT */ #endif /* CONFIG_AUDIT */
-- --
1.8.3.1 1.8.3.1

View File

@ -60,7 +60,7 @@ index 44a82c1..000b9a8 100644
obj-$(CONFIG_MODULES) += module.o obj-$(CONFIG_MODULES) += module.o
obj-$(CONFIG_MODULE_SIG) += module_signing.o obj-$(CONFIG_MODULE_SIG) += module_signing.o
obj-$(CONFIG_MODULE_SIG_UEFI) += modsign_uefi.o obj-$(CONFIG_MODULE_SIG_UEFI) += modsign_uefi.o
@@ -197,7 +197,45 @@ targets += $(obj)/.x509.list @@ -199,7 +199,45 @@ targets += $(obj)/.x509.list
$(obj)/.x509.list: $(obj)/.x509.list:
@echo $(X509_CERTIFICATES) >$@ @echo $(X509_CERTIFICATES) >$@

View File

@ -42,7 +42,7 @@ diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-paramete
index 1806170..2f7feb0 100644 index 1806170..2f7feb0 100644
--- a/Documentation/kernel-parameters.txt --- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt
@@ -1539,6 +1539,16 @@ bytes respectively. Such letter suffixes can also be entirely omitted. @@ -1551,6 +1551,16 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
kpti [X86-64] Enable kernel page table isolation. kpti [X86-64] Enable kernel page table isolation.
@ -83,7 +83,7 @@ diff --git a/init/main.c b/init/main.c
index 085c9c5..089f83d 100644 index 085c9c5..089f83d 100644
--- a/init/main.c --- a/init/main.c
+++ b/init/main.c +++ b/init/main.c
@@ -956,10 +956,6 @@ static noinline void __init kernel_init_freeable(void) @@ -959,10 +959,6 @@ static noinline void __init kernel_init_freeable(void)
* init can allocate pages on any node * init can allocate pages on any node
*/ */
set_mems_allowed(node_states[N_MEMORY]); set_mems_allowed(node_states[N_MEMORY]);
@ -94,7 +94,7 @@ index 085c9c5..089f83d 100644
cad_pid = task_pid(current); cad_pid = task_pid(current);
@@ -975,6 +971,8 @@ static noinline void __init kernel_init_freeable(void) @@ -978,6 +974,8 @@ static noinline void __init kernel_init_freeable(void)
do_basic_setup(); do_basic_setup();
@ -107,7 +107,7 @@ diff --git a/kernel/cpu.c b/kernel/cpu.c
index 0d9e250..6c156bd 100644 index 0d9e250..6c156bd 100644
--- a/kernel/cpu.c --- a/kernel/cpu.c
+++ b/kernel/cpu.c +++ b/kernel/cpu.c
@@ -756,6 +756,19 @@ static DECLARE_BITMAP(cpu_active_bits, CONFIG_NR_CPUS) __read_mostly; @@ -991,6 +991,19 @@ static DECLARE_BITMAP(cpu_active_bits, CONFIG_NR_CPUS) __read_mostly;
const struct cpumask *const cpu_active_mask = to_cpumask(cpu_active_bits); const struct cpumask *const cpu_active_mask = to_cpumask(cpu_active_bits);
EXPORT_SYMBOL(cpu_active_mask); EXPORT_SYMBOL(cpu_active_mask);

View File

@ -52,7 +52,7 @@ diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-paramete
index 590c8c2..c8f8f82 100644 index 590c8c2..c8f8f82 100644
--- a/Documentation/kernel-parameters.txt --- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt
@@ -579,8 +579,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted. @@ -580,8 +580,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
Also note the kernel might malfunction if you disable Also note the kernel might malfunction if you disable
some critical bits. some critical bits.
@ -70,7 +70,7 @@ diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index 9eca4ac..4e39287 100644 index 9eca4ac..4e39287 100644
--- a/arch/x86/kernel/setup.c --- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c
@@ -1283,7 +1283,7 @@ void __init setup_arch(char **cmdline_p) @@ -1298,7 +1298,7 @@ void __init setup_arch(char **cmdline_p)
setup_real_mode(); setup_real_mode();
memblock_set_current_limit(get_max_mapped()); memblock_set_current_limit(get_max_mapped());

View File

@ -0,0 +1,67 @@
From 84a6fef49cb58415d9790947e65c34b09d99d356 Mon Sep 17 00:00:00 2001
From: "Martin, Chen" <haochuan.z.chen@intel.com>
Date: Mon, 14 Jan 2019 19:58:07 +0000
Subject: [PATCH] fix CentOS 7.6 upgrade compile error
1, fix improper call of part_round_stats and part_inc_in_flight
in drbd_req.c, as CONFIG_BLK_DEV_DRBD=m defined in
kernel-3.10.0-x86_64.config.tis_extra
2, add explicit declaration for trace_bpf_int_jit_compile,
trace_bpf_jit_compile, trace_bpf_jit_free, if pmd_read_atomic not
defined
Signed-off-by: Martin, Chen <haochuan.z.chen@intel.com>
---
drivers/block/drbd/drbd_req.c | 8 ++++----
include/linux/filter.h | 4 ++++
2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/drivers/block/drbd/drbd_req.c b/drivers/block/drbd/drbd_req.c
index a6f13f7..cbd0a49 100644
--- a/drivers/block/drbd/drbd_req.c
+++ b/drivers/block/drbd/drbd_req.c
@@ -39,12 +39,12 @@ static void _drbd_start_io_acct(struct drbd_conf *mdev, struct drbd_request *req
const int rw = bio_data_dir(req->master_bio);
int cpu;
cpu = part_stat_lock();
- part_round_stats(cpu, &mdev->vdisk->part0);
+ part_round_stats(mdev->rq_queue, cpu, &mdev->vdisk->part0);
part_stat_inc(cpu, &mdev->vdisk->part0, ios[rw]);
part_stat_add(cpu, &mdev->vdisk->part0, sectors[rw], req->i.size >> 9);
(void) cpu; /* The macro invocations above want the cpu argument, I do not like
the compiler warning about cpu only assigned but never used... */
- part_inc_in_flight(&mdev->vdisk->part0, rw);
+ part_inc_in_flight(mdev->rq_queue, &mdev->vdisk->part0, rw);
part_stat_unlock();
}
@@ -56,8 +56,8 @@ static void _drbd_end_io_acct(struct drbd_conf *mdev, struct drbd_request *req)
int cpu;
cpu = part_stat_lock();
part_stat_add(cpu, &mdev->vdisk->part0, ticks[rw], duration);
- part_round_stats(cpu, &mdev->vdisk->part0);
- part_dec_in_flight(&mdev->vdisk->part0, rw);
+ part_round_stats(mdev->rq_queue, cpu, &mdev->vdisk->part0);
+ part_dec_in_flight(mdev->rq_queue, &mdev->vdisk->part0, rw);
part_stat_unlock();
}
diff --git a/include/linux/filter.h b/include/linux/filter.h
index cddbb31..15ce55f 100644
--- a/include/linux/filter.h
+++ b/include/linux/filter.h
@@ -665,6 +665,10 @@ static inline bool bpf_jit_blinding_enabled(struct bpf_prog *prog)
return true;
}
#else
+struct bpf_prog * __weak trace_bpf_int_jit_compile(struct bpf_prog *prog);
+void __weak trace_bpf_jit_compile(struct bpf_prog *prog);
+void __weak trace_bpf_jit_free(struct bpf_prog *fp);
+
static inline bool ebpf_jit_enabled(void)
{
return false;
--
1.8.3.1

View File

@ -59,7 +59,7 @@ diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-paramete
index 2f7feb0..590c8c2 100644 index 2f7feb0..590c8c2 100644
--- a/Documentation/kernel-parameters.txt --- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt +++ b/Documentation/kernel-parameters.txt
@@ -1303,6 +1303,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted. @@ -1315,6 +1315,11 @@ bytes respectively. Such letter suffixes can also be entirely omitted.
than 32-bit addressing. The default is to look than 32-bit addressing. The default is to look
for translation below 32-bit and if not available for translation below 32-bit and if not available
then look in the higher range. then look in the higher range.
@ -75,7 +75,7 @@ diff --git a/drivers/iommu/intel-iommu.c b/drivers/iommu/intel-iommu.c
index 260597e..6c16b68 100644 index 260597e..6c16b68 100644
--- a/drivers/iommu/intel-iommu.c --- a/drivers/iommu/intel-iommu.c
+++ b/drivers/iommu/intel-iommu.c +++ b/drivers/iommu/intel-iommu.c
@@ -504,6 +504,7 @@ static int dmar_forcedac; @@ -480,6 +480,7 @@ static int dmar_forcedac;
static int intel_iommu_strict; static int intel_iommu_strict;
static int intel_iommu_superpage = 1; static int intel_iommu_superpage = 1;
static int intel_iommu_ecs = 1; static int intel_iommu_ecs = 1;
@ -83,7 +83,7 @@ index 260597e..6c16b68 100644
/* We only actually use ECS when PASID support (on the new bit 40) /* We only actually use ECS when PASID support (on the new bit 40)
* is also advertised. Some early implementations — the ones with * is also advertised. Some early implementations — the ones with
@@ -563,6 +564,15 @@ static int __init intel_iommu_setup(char *str) @@ -539,6 +540,15 @@ static int __init intel_iommu_setup(char *str)
} else if (!strncmp(str, "forcedac", 8)) { } else if (!strncmp(str, "forcedac", 8)) {
pr_info("Forcing DAC for PCI devices\n"); pr_info("Forcing DAC for PCI devices\n");
dmar_forcedac = 1; dmar_forcedac = 1;
@ -99,7 +99,7 @@ index 260597e..6c16b68 100644
} else if (!strncmp(str, "strict", 6)) { } else if (!strncmp(str, "strict", 6)) {
pr_info("Disable batched IOTLB flush\n"); pr_info("Disable batched IOTLB flush\n");
intel_iommu_strict = 1; intel_iommu_strict = 1;
@@ -2733,6 +2743,15 @@ static bool device_is_rmrr_locked(struct device *dev) @@ -2779,6 +2789,15 @@ static bool device_is_rmrr_locked(struct device *dev)
if (IS_USB_DEVICE(pdev) || IS_GFX_DEVICE(pdev)) if (IS_USB_DEVICE(pdev) || IS_GFX_DEVICE(pdev))
return false; return false;

View File

@ -35,7 +35,7 @@ diff --git a/include/linux/memblock.h b/include/linux/memblock.h
index 5a439c9..d6bcbef 100644 index 5a439c9..d6bcbef 100644
--- a/include/linux/memblock.h --- a/include/linux/memblock.h
+++ b/include/linux/memblock.h +++ b/include/linux/memblock.h
@@ -304,6 +304,8 @@ static inline bool memblock_bottom_up(void) { return false; } @@ -306,6 +306,8 @@ static inline bool memblock_bottom_up(void) { return false; }
#define MEMBLOCK_ALLOC_ANYWHERE (~(phys_addr_t)0) #define MEMBLOCK_ALLOC_ANYWHERE (~(phys_addr_t)0)
#define MEMBLOCK_ALLOC_ACCESSIBLE 0 #define MEMBLOCK_ALLOC_ACCESSIBLE 0

View File

@ -15,7 +15,7 @@ diff --git a/drivers/scsi/smartpqi/smartpqi_init.c b/drivers/scsi/smartpqi/smart
index 2c6b546..6968c48 100644 index 2c6b546..6968c48 100644
--- a/drivers/scsi/smartpqi/smartpqi_init.c --- a/drivers/scsi/smartpqi/smartpqi_init.c
+++ b/drivers/scsi/smartpqi/smartpqi_init.c +++ b/drivers/scsi/smartpqi/smartpqi_init.c
@@ -5843,6 +5843,7 @@ static struct scsi_host_template pqi_driver_template = { @@ -5814,6 +5814,7 @@ static struct scsi_host_template pqi_driver_template = {
.slave_alloc = pqi_slave_alloc, .slave_alloc = pqi_slave_alloc,
.sdev_attrs = pqi_sdev_attrs, .sdev_attrs = pqi_sdev_attrs,
.shost_attrs = pqi_shost_attrs, .shost_attrs = pqi_shost_attrs,

View File

@ -53,15 +53,13 @@ Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com>
arch/x86/kernel/amd_gart_64.c | 2 +- arch/x86/kernel/amd_gart_64.c | 2 +-
arch/x86/kernel/pci-swiotlb.c | 9 ++++++--- arch/x86/kernel/pci-swiotlb.c | 9 ++++++---
arch/x86/pci/sta2x11-fixup.c | 6 ++---- arch/x86/pci/sta2x11-fixup.c | 6 ++----
include/linux/swiotlb.h | 2 ++ 5 files changed, 17 insertions(+), 9 deletions(-)
lib/swiotlb.c | 2 +-
7 files changed, 20 insertions(+), 10 deletions(-)
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index 48ae099..9e841a5 100644 index 48ae099..9e841a5 100644
--- a/arch/x86/Kconfig --- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig +++ b/arch/x86/Kconfig
@@ -44,7 +44,7 @@ config X86 @@ -47,7 +47,7 @@ config X86
select ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH if SMP select ARCH_WANT_BATCHED_UNMAP_TLB_FLUSH if SMP
select ARCH_WANT_OPTIONAL_GPIOLIB select ARCH_WANT_OPTIONAL_GPIOLIB
select ARCH_WANT_FRAME_POINTERS select ARCH_WANT_FRAME_POINTERS
@ -153,30 +151,6 @@ index 9d8a509..5ceda85 100644
.map_page = swiotlb_map_page, .map_page = swiotlb_map_page,
.unmap_page = swiotlb_unmap_page, .unmap_page = swiotlb_unmap_page,
.map_sg = swiotlb_map_sg_attrs, .map_sg = swiotlb_map_sg_attrs,
diff --git a/include/linux/swiotlb.h b/include/linux/swiotlb.h
index 16c296a..65c4a7a 100644
--- a/include/linux/swiotlb.h
+++ b/include/linux/swiotlb.h
@@ -117,4 +117,6 @@ static inline void swiotlb_free(void) { }
#endif
extern void swiotlb_print_info(void);
+extern int is_swiotlb_buffer(phys_addr_t paddr);
+
#endif /* __LINUX_SWIOTLB_H */
diff --git a/lib/swiotlb.c b/lib/swiotlb.c
index ffcaff5..d89c82a 100644
--- a/lib/swiotlb.c
+++ b/lib/swiotlb.c
@@ -404,7 +404,7 @@ void __init swiotlb_free(void)
io_tlb_nslabs = 0;
}
-static int is_swiotlb_buffer(phys_addr_t paddr)
+int is_swiotlb_buffer(phys_addr_t paddr)
{
return paddr >= io_tlb_start && paddr < io_tlb_end;
}
-- --
1.8.3.1 1.8.3.1

View File

@ -1,2 +1,2 @@
mirror:Source/kernel-3.10.0-862.11.6.el7.src.rpm mirror:Source/kernel-3.10.0-957.1.3.el7.src.rpm