From: Michael Tremer Date: Sat, 14 Dec 2024 14:32:01 +0000 (+0000) Subject: cgroups: Always log the entire path X-Git-Tag: 0.9.30~712 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c0bf2ec9d3d7bd2f280c6a8c1f7848746e7b3d3a;p=pakfire.git cgroups: Always log the entire path Signed-off-by: Michael Tremer --- diff --git a/src/libpakfire/cgroup.c b/src/libpakfire/cgroup.c index e0280a9dc..477325cce 100644 --- a/src/libpakfire/cgroup.c +++ b/src/libpakfire/cgroup.c @@ -81,13 +81,6 @@ struct pakfire_cgroup { int devicesfd; }; -static const char* pakfire_cgroup_name(struct pakfire_cgroup* cgroup) { - if (!cgroup->parent) - return "(root)"; - - return cgroup->name; -} - static const char* pakfire_cgroup_path(struct pakfire_cgroup* cgroup) { if (!*cgroup->path) return "(root)"; @@ -197,16 +190,14 @@ static ssize_t pakfire_cgroup_read(struct pakfire_cgroup* cgroup, const char* pa // Open the file int fd = openat(cgroup->fd, path, O_CLOEXEC); if (fd < 0) { - DEBUG(cgroup->ctx, "Could not open %s/%s: %m\n", - pakfire_cgroup_name(cgroup), path); + DEBUG(cgroup->ctx, "Could not open %s/%s: %m\n", pakfire_cgroup_path(cgroup), path); goto ERROR; } // Read file content into buffer bytes_read = read(fd, buffer, length); if (bytes_read < 0) { - DEBUG(cgroup->ctx, "Could not read from %s/%s: %m\n", - pakfire_cgroup_name(cgroup), path); + DEBUG(cgroup->ctx, "Could not read from %s/%s: %m\n", pakfire_cgroup_path(cgroup), path); goto ERROR; } @@ -491,7 +482,8 @@ struct pakfire_cgroup* pakfire_cgroup_unref(struct pakfire_cgroup* cgroup) { Immediately kills all processes in this cgroup */ static int pakfire_cgroup_killall(struct pakfire_cgroup* cgroup) { - DEBUG(cgroup->ctx, "%s: Killing all processes\n", pakfire_cgroup_name(cgroup)); + DEBUG(cgroup->ctx, "Killing all processes in %s\n", + pakfire_cgroup_path(cgroup)); return pakfire_cgroup_write(cgroup, "cgroup.kill", "1"); } @@ -511,7 +503,7 @@ int pakfire_cgroup_destroy(struct pakfire_cgroup* cgroup) { if (!cgroup->parent) return -EPERM; - DEBUG(cgroup->ctx, "Destroying cgroup %s\n", pakfire_cgroup_name(cgroup)); + DEBUG(cgroup->ctx, "Destroying cgroup %s\n", pakfire_cgroup_path(cgroup)); // Kill everything in this group r = pakfire_cgroup_killall(cgroup); @@ -572,13 +564,13 @@ int pakfire_cgroup_set_guaranteed_memory(struct pakfire_cgroup* cgroup, size_t m return r; DEBUG(cgroup->ctx, "%s: Setting guaranteed memory to %zu byte(s)\n", - pakfire_cgroup_name(cgroup), mem); + pakfire_cgroup_path(cgroup), mem); // Set value r = pakfire_cgroup_write(cgroup, "memory.min", "%zu\n", mem); if (r < 0) ERROR(cgroup->ctx, "%s: Could not set guaranteed memory: %m\n", - pakfire_cgroup_name(cgroup)); + pakfire_cgroup_path(cgroup)); return r; } @@ -592,13 +584,13 @@ int pakfire_cgroup_set_memory_limit(struct pakfire_cgroup* cgroup, size_t mem) { return r; DEBUG(cgroup->ctx, "%s: Setting memory limit to %zu byte(s)\n", - pakfire_cgroup_name(cgroup), mem); + pakfire_cgroup_path(cgroup), mem); // Set value r = pakfire_cgroup_write(cgroup, "memory.max", "%zu\n", mem); if (r < 0) ERROR(cgroup->ctx, "%s: Could not set memory limit: %m\n", - pakfire_cgroup_name(cgroup)); + pakfire_cgroup_path(cgroup)); return r; } @@ -614,13 +606,13 @@ int pakfire_cgroup_set_pid_limit(struct pakfire_cgroup* cgroup, size_t limit) { return r; DEBUG(cgroup->ctx, "%s: Setting PID limit to %zu\n", - pakfire_cgroup_name(cgroup), limit); + pakfire_cgroup_path(cgroup), limit); // Set value r = pakfire_cgroup_write(cgroup, "pids.max", "%zu\n", limit); if (r < 0) ERROR(cgroup->ctx, "%s: Could not set PID limit: %m\n", - pakfire_cgroup_name(cgroup)); + pakfire_cgroup_path(cgroup)); return r; } @@ -658,7 +650,7 @@ static int __pakfire_cgroup_read_stats_line(struct pakfire_cgroup* cgroup, // Ignore the rest default: DEBUG(cgroup->ctx, "%s: Unknown value in cgroup stats (%d): %s\n", - pakfire_cgroup_name(cgroup), i, elem); + pakfire_cgroup_path(cgroup), i, elem); break; } @@ -682,7 +674,7 @@ static int __pakfire_cgroup_read_stats(struct pakfire_cgroup* cgroup, const char char* p = NULL; int r; - DEBUG(cgroup->ctx, "%s: Reading stats from %s\n", pakfire_cgroup_name(cgroup), path); + DEBUG(cgroup->ctx, "%s: Reading stats from %s\n", pakfire_cgroup_path(cgroup), path); // Open the file r = pakfire_cgroup_read(cgroup, path, buffer, sizeof(buffer)); @@ -833,7 +825,7 @@ int pakfire_cgroup_stat(struct pakfire_cgroup* cgroup, ERROR: if (r) ERROR(cgroup->ctx, "%s: Could not read cgroup stats: %m\n", - pakfire_cgroup_name(cgroup)); + pakfire_cgroup_path(cgroup)); return r; } @@ -845,7 +837,7 @@ int pakfire_cgroup_stat_dump(struct pakfire_cgroup* cgroup, return -EINVAL; DEBUG(cgroup->ctx, "%s: Total CPU time usage: %lu\n", - pakfire_cgroup_name(cgroup), stats->cpu.usage_usec); + pakfire_cgroup_path(cgroup), stats->cpu.usage_usec); return 0; }