summaryrefslogtreecommitdiffstats
path: root/linux
diff options
context:
space:
mode:
authorBenny Baumann <BenBE@geshi.org>2022-03-06 15:02:49 +0100
committerBenBE <BenBE@geshi.org>2022-03-06 19:56:25 +0100
commitc4239335b9fb2da6dab1f53ff0e8eb32c78530de (patch)
treec7fbf84a48e735573a0f0725ac67193f68af6cce /linux
parent23b56193d7e8fd01b755c2dd269a19a5de2cc68d (diff)
Skip system slice name
This shortens paths like /system.slice/system-postgres.slice/postgres@12-main.service to /[S]/postgres@12-main. Without this some cgroup names for getty processes explode in length.
Diffstat (limited to 'linux')
-rw-r--r--linux/CGroupUtils.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/linux/CGroupUtils.c b/linux/CGroupUtils.c
index d6d2ae8f..22cce91b 100644
--- a/linux/CGroupUtils.c
+++ b/linux/CGroupUtils.c
@@ -66,6 +66,7 @@ static bool CGroup_filterName_internal(const char *cgroup, StrBuf_state* s, StrB
const char* str_user_slice = "user.slice";
const char* str_machine_slice = "machine.slice";
const char* str_user_slice_prefix = "/user-";
+ const char* str_system_slice_prefix = "/system-";
const char* str_lxc_monitor_legacy = "lxc.monitor";
const char* str_lxc_payload_legacy = "lxc.payload";
@@ -102,6 +103,11 @@ static bool CGroup_filterName_internal(const char *cgroup, StrBuf_state* s, StrB
if (!StrBuf_putsz(s, w, "[S]"))
return false;
+ if (String_startsWith(cgroup, str_system_slice_prefix)) {
+ cgroup = strchrnul(cgroup + 1, '/');
+ continue;
+ }
+
continue;
}

© 2014-2024 Faster IT GmbH | imprint | privacy policy