Disable CONFIG_MEMCG_KMEM to avoid slab leak
The kernel memory accounting in the RHEL kernel is broken and results in a slab memory leak when it is enabled. See the following bug for details: https://bugzilla.redhat.com/show_bug.cgi?id=1507149 Unfortunately, this option is enabled by default, so it must be disabled. Even worse, the kernel won't compile with the option disabled, so a fix for the compile error is also included. Change-Id: I627106ae25f86204c1954c1c21171bbef348afaf Closes-Bug: 1835534 Signed-off-by: Bart Wensley <barton.wensley@windriver.com>
This commit is contained in:
parent
202ad050a8
commit
088fa28ead
@ -1,4 +1,4 @@
|
|||||||
COPY_LIST="files/*"
|
COPY_LIST="files/*"
|
||||||
TIS_PATCH_VER=1
|
TIS_PATCH_VER=2
|
||||||
BUILD_IS_BIG=11
|
BUILD_IS_BIG=11
|
||||||
BUILD_IS_SLOW=12
|
BUILD_IS_SLOW=12
|
||||||
|
@ -1,34 +1,36 @@
|
|||||||
From 72f81cd0693c1abfdb5d86bf207cfcd3201646d7 Mon Sep 17 00:00:00 2001
|
From 8fbd0edbcf6ed51b9e58d267d0ce7b40f00118a1 Mon Sep 17 00:00:00 2001
|
||||||
Message-Id: <72f81cd0693c1abfdb5d86bf207cfcd3201646d7.1528231893.git.Jim.Somerville@windriver.com>
|
From: Bart Wensley <barton.wensley@windriver.com>
|
||||||
From: Jim Somerville <Jim.Somerville@windriver.com>
|
Date: Tue, 9 Jul 2019 07:18:00 -0500
|
||||||
Date: Tue, 5 Jun 2018 16:51:28 -0400
|
|
||||||
Subject: [PATCH 1/1] Compile issues
|
Subject: [PATCH 1/1] Compile issues
|
||||||
|
|
||||||
Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com>
|
Signed-off-by: Bart Wensley <barton.wensley@windriver.com>
|
||||||
---
|
---
|
||||||
SPECS/kernel-rt.spec | 5 +++++
|
SPECS/kernel-rt.spec | 8 ++++++++
|
||||||
1 file changed, 5 insertions(+)
|
1 file changed, 8 insertions(+)
|
||||||
|
|
||||||
diff --git a/SPECS/kernel-rt.spec b/SPECS/kernel-rt.spec
|
diff --git a/SPECS/kernel-rt.spec b/SPECS/kernel-rt.spec
|
||||||
index ab6daf3..3c0e4b4 100644
|
index 3b7985c..5025db7 100644
|
||||||
--- a/SPECS/kernel-rt.spec
|
--- a/SPECS/kernel-rt.spec
|
||||||
+++ b/SPECS/kernel-rt.spec
|
+++ b/SPECS/kernel-rt.spec
|
||||||
@@ -418,6 +418,9 @@ Patch1027: dpt_i2o-fix-build-warning.patch
|
@@ -418,6 +418,11 @@ Patch1027: dpt_i2o-fix-build-warning.patch
|
||||||
# DRBD was choking on write same
|
# DRBD was choking on write same
|
||||||
Patch1028: turn-off-write-same-in-smartqpi-driver.patch
|
Patch1028: turn-off-write-same-in-smartqpi-driver.patch
|
||||||
Patch1029: restrict-iSCSI-kthreads-to-CPUs-in-cpu_kthread_mask.patch
|
Patch1029: restrict-iSCSI-kthreads-to-CPUs-in-cpu_kthread_mask.patch
|
||||||
+Patch1030: fix-compilation-issues.patch
|
+Patch1030: fix-compilation-issues.patch
|
||||||
+# Fix CentOS 7.6 upgrade compile error
|
+# Fix CentOS 7.6 upgrade compile error
|
||||||
+Patch1031: fix-CentOS-7.6-upgrade-compile-error.patch
|
+Patch1031: fix-CentOS-7.6-upgrade-compile-error.patch
|
||||||
|
+# Compile fix for disabling CONFIG_MEMCG_KMEM
|
||||||
|
+Patch1032: compile-fix-for-disabling-CONFIG_MEMCG_KMEM.patch
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/kernel-%{KVERREL}-root
|
BuildRoot: %{_tmppath}/kernel-%{KVERREL}-root
|
||||||
|
|
||||||
@@ -780,6 +783,8 @@ ApplyPatch aic94xx-Skip-reading-user-settings-if-flash-is-not-f.patch
|
@@ -780,6 +785,9 @@ ApplyPatch aic94xx-Skip-reading-user-settings-if-flash-is-not-f.patch
|
||||||
ApplyPatch dpt_i2o-fix-build-warning.patch
|
ApplyPatch dpt_i2o-fix-build-warning.patch
|
||||||
ApplyPatch turn-off-write-same-in-smartqpi-driver.patch
|
ApplyPatch turn-off-write-same-in-smartqpi-driver.patch
|
||||||
ApplyPatch restrict-iSCSI-kthreads-to-CPUs-in-cpu_kthread_mask.patch
|
ApplyPatch restrict-iSCSI-kthreads-to-CPUs-in-cpu_kthread_mask.patch
|
||||||
+ApplyPatch fix-compilation-issues.patch
|
+ApplyPatch fix-compilation-issues.patch
|
||||||
+ApplyPatch fix-CentOS-7.6-upgrade-compile-error.patch
|
+ApplyPatch fix-CentOS-7.6-upgrade-compile-error.patch
|
||||||
|
+ApplyPatch compile-fix-for-disabling-CONFIG_MEMCG_KMEM.patch
|
||||||
|
|
||||||
# move off upstream version mechanism
|
# move off upstream version mechanism
|
||||||
if [ -e localversion-rt ]; then
|
if [ -e localversion-rt ]; then
|
||||||
|
@ -0,0 +1,35 @@
|
|||||||
|
From a209e9637eacb353adb97f29dd059e63084d30df Mon Sep 17 00:00:00 2001
|
||||||
|
From: Bart Wensley <barton.wensley@windriver.com>
|
||||||
|
Date: Tue, 9 Jul 2019 07:25:32 -0500
|
||||||
|
Subject: [PATCH 1/1] compile fix for disabling CONFIG_MEMCG_KMEM
|
||||||
|
|
||||||
|
Signed-off-by: Bart Wensley <barton.wensley@windriver.com>
|
||||||
|
---
|
||||||
|
mm/memcontrol.c | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/mm/memcontrol.c b/mm/memcontrol.c
|
||||||
|
index da97e2c..68fd46b 100644
|
||||||
|
--- a/mm/memcontrol.c
|
||||||
|
+++ b/mm/memcontrol.c
|
||||||
|
@@ -3010,6 +3010,8 @@ static void __mem_cgroup_commit_charge(struct mem_cgroup *memcg,
|
||||||
|
memcg_check_events(memcg, page);
|
||||||
|
}
|
||||||
|
|
||||||
|
+static DEFINE_MUTEX(memcg_limit_mutex);
|
||||||
|
+
|
||||||
|
#ifdef CONFIG_MEMCG_KMEM
|
||||||
|
static inline bool memcg_can_account_kmem(struct mem_cgroup *memcg)
|
||||||
|
{
|
||||||
|
@@ -3510,8 +3512,6 @@ out:
|
||||||
|
return new_cachep;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static DEFINE_MUTEX(memcg_limit_mutex);
|
||||||
|
-
|
||||||
|
int __kmem_cache_destroy_memcg_children(struct kmem_cache *s)
|
||||||
|
{
|
||||||
|
struct kmem_cache *c;
|
||||||
|
--
|
||||||
|
1.8.3.1
|
||||||
|
|
@ -956,3 +956,6 @@ CONFIG_TORTURE_TEST=n
|
|||||||
CONFIG_RCU_TORTURE_TEST=n
|
CONFIG_RCU_TORTURE_TEST=n
|
||||||
CONFIG_LOCK_TORTURE_TEST=n
|
CONFIG_LOCK_TORTURE_TEST=n
|
||||||
|
|
||||||
|
# Disable kernel memory accounting, which is broken
|
||||||
|
CONFIG_MEMCG_KMEM=n
|
||||||
|
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
COPY_LIST="files/*"
|
COPY_LIST="files/*"
|
||||||
TIS_PATCH_VER=1
|
TIS_PATCH_VER=2
|
||||||
BUILD_IS_BIG=11
|
BUILD_IS_BIG=11
|
||||||
BUILD_IS_SLOW=12
|
BUILD_IS_SLOW=12
|
||||||
|
@ -1,18 +1,18 @@
|
|||||||
From 0bdbfc48c66177522eae9bb7c0449f39f418e609 Mon Sep 17 00:00:00 2001
|
From 6b9579fcfb774f20f114ebc621a925d35d3aa034 Mon Sep 17 00:00:00 2001
|
||||||
From: Jim Somerville <Jim.Somerville@windriver.com>
|
From: Bart Wensley <barton.wensley@windriver.com>
|
||||||
Date: Wed, 30 May 2018 13:12:03 -0400
|
Date: Tue, 9 Jul 2019 06:36:33 -0500
|
||||||
Subject: [PATCH 4/5] Compile issues
|
Subject: [PATCH 1/1] Compile issues
|
||||||
|
|
||||||
Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com>
|
Signed-off-by: Bart Wensley <barton.wensley@windriver.com>
|
||||||
---
|
---
|
||||||
SPECS/kernel.spec | 6 ++++++
|
SPECS/kernel.spec | 9 +++++++++
|
||||||
1 file changed, 6 insertions(+)
|
1 file changed, 9 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 3f774c2..b69967d 100644
|
||||||
--- a/SPECS/kernel.spec
|
--- a/SPECS/kernel.spec
|
||||||
+++ b/SPECS/kernel.spec
|
+++ b/SPECS/kernel.spec
|
||||||
@@ -489,6 +489,10 @@ Patch40024: aic94xx-Skip-reading-user-settings-if-flash-is-not-f.patch
|
@@ -489,6 +489,12 @@ 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
|
||||||
@ -20,18 +20,21 @@ index 01dd989..d45c419 100644
|
|||||||
+Patch40027: fix-compilation-issues.patch
|
+Patch40027: fix-compilation-issues.patch
|
||||||
+# Fix CentOS 7.6 upgrade compile error
|
+# Fix CentOS 7.6 upgrade compile error
|
||||||
+Patch40028: fix-CentOS-7.6-upgrade-compile-error.patch
|
+Patch40028: fix-CentOS-7.6-upgrade-compile-error.patch
|
||||||
|
+# Compile fix for disabling CONFIG_MEMCG_KMEM
|
||||||
|
+Patch40029: compile-fix-for-disabling-CONFIG_MEMCG_KMEM.patch
|
||||||
|
|
||||||
BuildRoot: %{_tmppath}/kernel-%{KVRA}-root
|
BuildRoot: %{_tmppath}/kernel-%{KVRA}-root
|
||||||
|
|
||||||
@@ -859,6 +863,8 @@ ApplyOptionalPatch US103091-IMA-System-Configuration.patch
|
@@ -859,6 +865,9 @@ 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
|
+ApplyOptionalPatch fix-CentOS-7.6-upgrade-compile-error.patch
|
||||||
|
+ApplyOptionalPatch compile-fix-for-disabling-CONFIG_MEMCG_KMEM.patch
|
||||||
|
|
||||||
# Any further pre-build tree manipulations happen here.
|
# Any further pre-build tree manipulations happen here.
|
||||||
|
|
||||||
--
|
--
|
||||||
2.7.4
|
1.8.3.1
|
||||||
|
|
||||||
|
@ -0,0 +1,35 @@
|
|||||||
|
From 66936b9bfda2fa11019bf45298047c7365fdacb4 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Bart Wensley <barton.wensley@windriver.com>
|
||||||
|
Date: Mon, 8 Jul 2019 13:32:44 -0500
|
||||||
|
Subject: [PATCH 1/1] compile fix for disabling CONFIG_MEMCG_KMEM
|
||||||
|
|
||||||
|
Signed-off-by: Bart Wensley <barton.wensley@windriver.com>
|
||||||
|
---
|
||||||
|
mm/memcontrol.c | 4 ++--
|
||||||
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/mm/memcontrol.c b/mm/memcontrol.c
|
||||||
|
index 175fef9..e475427 100644
|
||||||
|
--- a/mm/memcontrol.c
|
||||||
|
+++ b/mm/memcontrol.c
|
||||||
|
@@ -3007,6 +3007,8 @@ static void __mem_cgroup_commit_charge(struct mem_cgroup *memcg,
|
||||||
|
memcg_check_events(memcg, page);
|
||||||
|
}
|
||||||
|
|
||||||
|
+static DEFINE_MUTEX(memcg_limit_mutex);
|
||||||
|
+
|
||||||
|
#ifdef CONFIG_MEMCG_KMEM
|
||||||
|
static inline bool memcg_can_account_kmem(struct mem_cgroup *memcg)
|
||||||
|
{
|
||||||
|
@@ -3507,8 +3509,6 @@ out:
|
||||||
|
return new_cachep;
|
||||||
|
}
|
||||||
|
|
||||||
|
-static DEFINE_MUTEX(memcg_limit_mutex);
|
||||||
|
-
|
||||||
|
int __kmem_cache_destroy_memcg_children(struct kmem_cache *s)
|
||||||
|
{
|
||||||
|
struct kmem_cache *c;
|
||||||
|
--
|
||||||
|
1.8.3.1
|
||||||
|
|
@ -811,3 +811,6 @@ CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=n
|
|||||||
# Make performance default governor
|
# Make performance default governor
|
||||||
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=n
|
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=n
|
||||||
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
|
CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y
|
||||||
|
|
||||||
|
# Disable kernel memory accounting, which is broken
|
||||||
|
CONFIG_MEMCG_KMEM=n
|
||||||
|
Loading…
Reference in New Issue
Block a user