From 8ecf62f0f1f3d1679e727700438584634815be1f Mon Sep 17 00:00:00 2001 From: Hannes Reinecke Date: Tue, 26 Nov 2013 12:41:29 +0100 Subject: [PATCH] multipathd: Read environment variables from systemd When systemd adjusts 'OOMScoreAdjust' and 'LimitNOFILE' we should take those settings and not try to adjust them again on our side. Signed-off-by: Hannes Reinecke --- multipathd/main.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/multipathd/main.c b/multipathd/main.c index d8d12048..9b4e7c03 100644 --- a/multipathd/main.c +++ b/multipathd/main.c @@ -1552,7 +1552,13 @@ set_oom_adj (void) #endif FILE *fp; struct stat st; + char *envp; + envp = getenv("OOMScoreAdjust"); + if (envp) { + condlog(3, "Using systemd provided OOMScoreAdjust"); + return; + } do { if (stat(file, &st) == 0){ fp = fopen(file, "w"); @@ -1628,7 +1634,11 @@ child (void * param) setlogmask(LOG_UPTO(conf->verbosity + 3)); - if (conf->max_fds) { + envp = getenv("LimitNOFILE"); + + if (envp) { + condlog(2,"Using systemd provided open fds limit of %s", envp); + } else if (conf->max_fds) { struct rlimit fd_limit; if (getrlimit(RLIMIT_NOFILE, &fd_limit) < 0) { -- 2.20.1