summaryrefslogtreecommitdiff
path: root/redis.conf
diff options
context:
space:
mode:
authorGeorge Prekas <prekgeo@yahoo.com>2021-01-07 09:06:05 -0600
committerGitHub <noreply@github.com>2021-01-07 17:06:05 +0200
commitb02780c41dbc5b28d265b5cf141c03c1a7383ef9 (patch)
tree2db66838922c30f3b1d62e6418777bb776551b81 /redis.conf
parentea930a352ca748c0fa49a1b2ee894ea92bc83b0e (diff)
downloadredis-b02780c41dbc5b28d265b5cf141c03c1a7383ef9.tar.gz
Add check for the MADV_FREE/fork arm64 Linux kernel bug (#8224)
Older arm64 Linux kernels have a bug that could lead to data corruption during background save under the following scenario: 1) jemalloc uses MADV_FREE on a page, 2) jemalloc reuses and writes the page, 3) Redis forks the background save process, and 4) Linux performs page reclamation. Under these conditions, Linux will reclaim the page wrongfully and the background save process will read zeros when it tries to read the page. The bug has been fixed in Linux with commit: ff1712f953e27f0b0718762ec17d0adb15c9fd0b ("arm64: pgtable: Ensure dirty bit is preserved across pte_wrprotect()") This Commit adds an ignore-warnings config, when not found, redis will print a warning and exit on startup (default behavior). Co-authored-by: Oran Agra <oran@redislabs.com>
Diffstat (limited to 'redis.conf')
-rw-r--r--redis.conf7
1 files changed, 7 insertions, 0 deletions
diff --git a/redis.conf b/redis.conf
index 891bb1663..a5062fda9 100644
--- a/redis.conf
+++ b/redis.conf
@@ -1976,3 +1976,10 @@ jemalloc-bg-thread yes
#
# Set bgsave child process to cpu affinity 1,10,11
# bgsave_cpulist 1,10-11
+
+# In some cases redis will emit warnings and even refuse to start if it detects
+# that the system is in bad state, it is possible to suppress these warnings
+# by setting the following config which takes a space delimited list of warnings
+# to suppress
+#
+# ignore-warnings ARM64-COW-BUG