summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2016-10-18 13:38:41 -0400
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2016-10-19 22:17:16 -0400
commit3ce40911bdfee404ff816471c77a6afd7d8b2271 (patch)
treee6add491e6d6bd0ddf984cc8fe169a05a8cd461d /src/core
parentcaf15ff01e7ebd83b09e7ad6e0446b24d0041beb (diff)
pid1: downgrade some rlimit warnings
Since we ignore the result anyway, downgrade errors to warning. log_oom() will still emit an error, but that's mostly theoretical, so it is not worth complicating the code to avoid the small inconsistency
Diffstat (limited to 'src/core')
-rw-r--r--src/core/main.c6
-rw-r--r--src/core/manager.c2
2 files changed, 4 insertions, 4 deletions
diff --git a/src/core/main.c b/src/core/main.c
index 61f3828a36..cf3c640a73 100644
--- a/src/core/main.c
+++ b/src/core/main.c
@@ -1124,7 +1124,7 @@ static int bump_rlimit_nofile(struct rlimit *saved_rlimit) {
* later when transitioning from the initrd to the main
* systemd or suchlike. */
if (getrlimit(RLIMIT_NOFILE, saved_rlimit) < 0)
- return log_error_errno(errno, "Reading RLIMIT_NOFILE failed: %m");
+ return log_warning_errno(errno, "Reading RLIMIT_NOFILE failed, ignoring: %m");
/* Make sure forked processes get the default kernel setting */
if (!arg_default_rlimit[RLIMIT_NOFILE]) {
@@ -1141,7 +1141,7 @@ static int bump_rlimit_nofile(struct rlimit *saved_rlimit) {
nl.rlim_cur = nl.rlim_max = 64*1024;
r = setrlimit_closest(RLIMIT_NOFILE, &nl);
if (r < 0)
- return log_error_errno(r, "Setting RLIMIT_NOFILE failed: %m");
+ return log_warning_errno(r, "Setting RLIMIT_NOFILE failed, ignoring: %m");
return 0;
}
@@ -1775,7 +1775,7 @@ int main(int argc, char *argv[]) {
log_warning_errno(errno, "Failed to make us a subreaper: %m");
if (arg_system) {
- bump_rlimit_nofile(&saved_rlimit_nofile);
+ (void) bump_rlimit_nofile(&saved_rlimit_nofile);
if (empty_etc) {
r = unit_file_preset_all(UNIT_FILE_SYSTEM, false, NULL, UNIT_FILE_PRESET_ENABLE_ONLY, false, NULL, 0);
diff --git a/src/core/manager.c b/src/core/manager.c
index 50aae0d1ba..65f163de31 100644
--- a/src/core/manager.c
+++ b/src/core/manager.c
@@ -3098,7 +3098,7 @@ int manager_set_default_rlimits(Manager *m, struct rlimit **default_rlimit) {
m->rlimit[i] = newdup(struct rlimit, default_rlimit[i], 1);
if (!m->rlimit[i])
- return -ENOMEM;
+ return log_oom();
}
return 0;