richardphibel / rpms / systemd

Forked from rpms/systemd 2 years ago
Clone
803fb7
From f98f6ed9a27871cd2ce505b977ba8c2390e104b6 Mon Sep 17 00:00:00 2001
803fb7
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
803fb7
Date: Tue, 14 Apr 2015 20:47:20 -0500
803fb7
Subject: [PATCH] systemctl: avoid bumping NOFILE rlimit unless needed
803fb7
803fb7
We actually only use the journal when showing status. Move setrlimit call
803fb7
so it is only called for status.
803fb7
803fb7
https://bugzilla.redhat.com/show_bug.cgi?id=1184712
803fb7
(cherry picked from commit 40acc203c043fd419f3c045dc6f116c3a28411d8)
803fb7
803fb7
Cherry-picked from: e87fa61
803fb7
Resolves: #1222517
803fb7
---
803fb7
 src/systemctl/systemctl.c | 11 ++++++-----
803fb7
 1 file changed, 6 insertions(+), 5 deletions(-)
803fb7
803fb7
diff --git a/src/systemctl/systemctl.c b/src/systemctl/systemctl.c
803fb7
index 4ec0cff21..089c25f83 100644
803fb7
--- a/src/systemctl/systemctl.c
803fb7
+++ b/src/systemctl/systemctl.c
803fb7
@@ -4449,6 +4449,12 @@ static int show(sd_bus *bus, char **args) {
803fb7
         if (show_properties)
803fb7
                 pager_open_if_enabled();
803fb7
 
803fb7
+        if (show_status)
803fb7
+                /* Increase max number of open files to 16K if we can, we
803fb7
+                 * might needs this when browsing journal files, which might
803fb7
+                 * be split up into many files. */
803fb7
+                setrlimit_closest(RLIMIT_NOFILE, &RLIMIT_MAKE_CONST(16384));
803fb7
+
803fb7
         /* If no argument is specified inspect the manager itself */
803fb7
 
803fb7
         if (show_properties && strv_length(args) <= 1)
803fb7
@@ -7207,11 +7213,6 @@ found:
803fb7
                 }
803fb7
         }
803fb7
 
803fb7
-        /* Increase max number of open files to 16K if we can, we
803fb7
-         * might needs this when browsing journal files, which might
803fb7
-         * be split up into many files. */
803fb7
-        setrlimit_closest(RLIMIT_NOFILE, &RLIMIT_MAKE_CONST(16384));
803fb7
-
803fb7
         return verb->dispatch(bus, argv + optind);
803fb7
 }
803fb7