coredump: make sure we vacuum by default

Only if both keep_free and max_use are actually 0 we can shortcut things
and avoid vacuuming. If either are positive or -1 we need to execute the
vacuuming.

http://lists.freedesktop.org/archives/systemd-devel/2015-April/031382.html
This commit is contained in:
Lennart Poettering
2015-05-15 20:56:55 +02:00
parent 7693146dee
commit 5470c03b37
2 changed files with 5 additions and 4 deletions
+3 -1
View File
@@ -134,7 +134,9 @@
by coredumps might temporarily exceed these limits while
coredumps are processed. Note that old coredumps are also
removed based on time via
<citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para></listitem>
<citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Set
either value to 0 to turn off size based
clean-up.</para></listitem>
</varlistentry>
</variablelist>
+2 -3
View File
@@ -103,8 +103,7 @@ static bool vacuum_necessary(int fd, off_t sum, off_t keep_free, off_t max_use)
if (max_use < DEFAULT_MAX_USE_LOWER)
max_use = DEFAULT_MAX_USE_LOWER;
}
else
} else
max_use = DEFAULT_MAX_USE_LOWER;
} else
max_use = PAGE_ALIGN(max_use);
@@ -135,7 +134,7 @@ int coredump_vacuum(int exclude_fd, off_t keep_free, off_t max_use) {
struct stat exclude_st;
int r;
if (keep_free <= 0 && max_use <= 0)
if (keep_free == 0 && max_use == 0)
return 0;
if (exclude_fd >= 0) {