Blob Blame History Raw
From 10a3ff45b150fe426624080abf903242af3ac201 Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Tue, 23 Feb 2016 15:40:17 +0100
Subject: [PATCH] CCpp: turn off compat cores

Disable compat cores because with systemd>=229, RLIMIT_CORE is
'unlimited' by default and RLIMIT_CORE!=0 was the signal to create a
core file in the old way. So, abrt-ccpp-hook creates the old way cores
everywhere on file systems by default and users don't know about it
because they did not enable it manually via 'ulimit -c unlimited'.

We could restore the old RLIMIT_CORE value by creating a systemd
configuration file with 'DefaultLimitCORE=0' but that would not be a
good solution for our users:
* you have to reboot, otherwise the configuration has no effect
* and therefore it is impossible to set the new value when
  abrt-ccpp.service is stopped and the users who expect
  RTLIMIT_CORE='unlimited' would be confused

We should probably adopt the behaviour of systemd-coredump. However,
that means that abrtd must not drop any problem it receives and should
mark those problems that would be dropped as NOT-REPORTABLE to prevent
users from filing bug reports for unfixable problems.

Find more details at:
https://github.com/systemd/systemd/issues/2643

Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
 src/hooks/CCpp.conf | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/hooks/CCpp.conf b/src/hooks/CCpp.conf
index 025189a..edf66b7 100644
--- a/src/hooks/CCpp.conf
+++ b/src/hooks/CCpp.conf
@@ -7,7 +7,10 @@
 # If the original template string starts with "|", the string "core" is used
 # instead of the template.
 # For more information about naming core dump files see 'man 5 core'.
-MakeCompatCore = yes
+#
+# 'no' because of RLIMIT_CORE='unlimited' since systemd-229:
+#   https://github.com/systemd/systemd/issues/2643
+MakeCompatCore = no
 
 # Do you want a copy of crashed binary be saved?
 # (useful, for example, when _deleted binary_ segfaults)
-- 
2.5.0