dryang / rpms / systemd

Forked from rpms/systemd a year ago
Clone
4fbe94
From b90f935f8d2268522480a7c12f7e2213a7a5e19d Mon Sep 17 00:00:00 2001
4fbe94
From: Michal Sekletar <msekleta@redhat.com>
4fbe94
Date: Fri, 31 May 2019 18:02:20 +0200
4fbe94
Subject: [PATCH] execute: dump CPUAffinity as a range string instead of a list
4fbe94
 of CPUs
4fbe94
4fbe94
We do this already when printing the property in systemctl so be
4fbe94
consistent and do the same for systemd-analyze dump.
4fbe94
4fbe94
(cherry picked from commit e7fca352ba43988682a927de6b1f629b3f10a415)
4fbe94
4fbe94
Related: #1734787
4fbe94
---
4fbe94
 src/core/execute.c | 9 ++++-----
4fbe94
 1 file changed, 4 insertions(+), 5 deletions(-)
4fbe94
4fbe94
diff --git a/src/core/execute.c b/src/core/execute.c
4fbe94
index 22e5825905..bc26aa66e7 100644
4fbe94
--- a/src/core/execute.c
4fbe94
+++ b/src/core/execute.c
4fbe94
@@ -4098,11 +4098,10 @@ void exec_context_dump(const ExecContext *c, FILE* f, const char *prefix) {
4fbe94
         }
4fbe94
 
4fbe94
         if (c->cpu_set.set) {
4fbe94
-                fprintf(f, "%sCPUAffinity:", prefix);
4fbe94
-                for (i = 0; i < c->cpu_set.allocated * 8; i++)
4fbe94
-                        if (CPU_ISSET_S(i, c->cpu_set.allocated, c->cpu_set.set))
4fbe94
-                                fprintf(f, " %u", i);
4fbe94
-                fputs("\n", f);
4fbe94
+                _cleanup_free_ char *affinity = NULL;
4fbe94
+
4fbe94
+                affinity = cpu_set_to_range_string(&c->cpu_set);
4fbe94
+                fprintf(f, "%sCPUAffinity: %s\n", prefix, affinity);
4fbe94
         }
4fbe94
 
4fbe94
         if (c->timer_slack_nsec != NSEC_INFINITY)