chiark / gitweb /
Prep 235: Enabled sd_peer_get_slice() and sd_pid_get_slice() to at least try to work...
authorSven Eden <yamakuzure@gmx.net>
Tue, 9 Jan 2018 17:35:22 +0000 (18:35 +0100)
committerSven Eden <yamakuzure@gmx.net>
Tue, 9 Jan 2018 17:38:18 +0000 (18:38 +0100)
src/basic/cgroup-util.c
src/basic/cgroup-util.h
src/libelogind/sd-login/sd-login.c

index 7e7d4c8f1ed30bd28fc9885717e85072140bea63..d909e29902b513edba16a76b8c4f5e94945e47d7 100644 (file)
@@ -1921,7 +1921,6 @@ int cg_path_get_slice(const char *p, char **slice) {
 #endif // 0
 }
 
-#if 0 /// UNNEEDED by elogind
 int cg_pid_get_slice(pid_t pid, char **slice) {
         _cleanup_free_ char *cgroup = NULL;
         int r;
@@ -1929,12 +1928,15 @@ int cg_pid_get_slice(pid_t pid, char **slice) {
         assert(slice);
 
         r = cg_pid_get_path_shifted(pid, NULL, &cgroup);
+        log_debug_elogind("Found cgroup %s for pid %u (result %d)",
+                          cgroup, pid, r);
         if (r < 0)
                 return r;
 
         return cg_path_get_slice(cgroup, slice);
 }
 
+#if 0 /// UNNEEDED by elogind
 int cg_path_get_user_slice(const char *p, char **slice) {
         const char *t;
         assert(p);
index 7b95370d39d5afab249ea5b390c83ef447ccb4ed..419d5f4bd4109be4affb088ea1011c4ac90d7076 100644 (file)
@@ -226,7 +226,9 @@ int cg_pid_get_owner_uid(pid_t pid, uid_t *uid);
 int cg_pid_get_unit(pid_t pid, char **unit);
 int cg_pid_get_user_unit(pid_t pid, char **unit);
 int cg_pid_get_machine_name(pid_t pid, char **machine);
+#endif // 0
 int cg_pid_get_slice(pid_t pid, char **slice);
+#if 0 /// UNNEEDED by elogind
 int cg_pid_get_user_slice(pid_t pid, char **slice);
 
 int cg_path_decode_unit(const char *cgroup, char **unit);
index 91b3d124336df9ccd4406f6e6502b3d218c5560e..0900f0fe6ddf0a1e3050995e72ed21f3f8c59b9e 100644 (file)
@@ -114,19 +114,13 @@ _public_ int sd_pid_get_machine_name(pid_t pid, char **name) {
 }
 
 _public_ int sd_pid_get_slice(pid_t pid, char **slice) {
-#if 0 /// UNNEEDED by elogind
         int r;
-#endif // 0
 
         assert_return(pid >= 0, -EINVAL);
         assert_return(slice, -EINVAL);
 
-#if 0 /// elogind does not support systemd slices
         r = cg_pid_get_slice(pid, slice);
         return IN_SET(r, -ENXIO, -ENOMEDIUM) ? -ENODATA : r;
-#else
-        return -ESRCH;
-#endif // 0
 }
 
 _public_ int sd_pid_get_user_slice(pid_t pid, char **slice) {
@@ -282,11 +276,7 @@ _public_ int sd_peer_get_slice(int fd, char **slice) {
         if (r < 0)
                 return r;
 
-#if 0 /// elogind does not support systemd slices
         return cg_pid_get_slice(ucred.pid, slice);
-#else
-        return -ESRCH;
-#endif // 0
 }
 
 _public_ int sd_peer_get_user_slice(int fd, char **slice) {