chiark / gitweb /
util: rework system_tasks_max() to make use of procfs_tasks_max()
authorLennart Poettering <lennart@poettering.net>
Wed, 17 Jan 2018 14:35:01 +0000 (15:35 +0100)
committerSven Eden <yamakuzure@gmx.net>
Wed, 30 May 2018 05:50:17 +0000 (07:50 +0200)
Let's use our new code.

src/basic/util.c

index 086ef429ad5f8e6ebb8b9159a5bca9965d55f201..9c7e6c0ad40eb00cf9e63a65c56b7ce892372ae9 100644 (file)
@@ -52,6 +52,7 @@
 #include "parse-util.h"
 //#include "path-util.h"
 #include "process-util.h"
+//#include "procfs-util.h"
 #include "set.h"
 #include "signal-util.h"
 #include "stat-util.h"
@@ -480,8 +481,8 @@ uint64_t physical_memory_scale(uint64_t v, uint64_t max) {
 uint64_t system_tasks_max(void) {
 
 #else
-        _cleanup_free_ char *value = NULL, *root = NULL;
         uint64_t a = TASKS_MAX, b = TASKS_MAX;
+        _cleanup_free_ char *root = NULL;
 
         /* Determine the maximum number of tasks that may run on this system. We check three sources to determine this
          * limit:
@@ -492,11 +493,10 @@ uint64_t system_tasks_max(void) {
          *
          * And then pick the smallest of the three */
 
-        if (read_one_line_file("/proc/sys/kernel/pid_max", &value) >= 0)
-                (void) safe_atou64(value, &a);
+        (void) procfs_tasks_get_limit(&a);
 
         if (cg_get_root_path(&root) >= 0) {
-                value = mfree(value);
+                _cleanup_free_ char *value = NULL;
 
                 if (cg_get_attribute("pids", root, "pids.max", &value) >= 0)
                         (void) safe_atou64(value, &b);