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:
parent
1a92bd11e5
commit
794737dac2
@ -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
|
||||||
|
@ -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
|
||||||
|
@ -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.
|
||||||
|
|
||||||
|
@ -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
|
||||||
|
@ -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;
|
||||||
|
@ -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;
|
||||||
|
@ -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));
|
||||||
|
@ -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;
|
||||||
|
|
||||||
|
@ -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);
|
||||||
|
@ -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);
|
||||||
|
@ -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 },
|
||||||
|
@ -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);
|
||||||
|
|
||||||
|
@ -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
|
||||||
|
|
||||||
|
@ -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) >$@
|
||||||
|
|
||||||
|
@ -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);
|
||||||
|
|
||||||
|
@ -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());
|
||||||
|
@ -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
|
||||||
|
|
@ -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;
|
||||||
|
@ -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
|
||||||
|
|
||||||
|
@ -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,
|
||||||
|
@ -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
|
||||||
|
|
||||||
|
@ -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
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user