]> git.ipfire.org Git - thirdparty/libcgroup.git/commitdiff
Reduce "Cgroup change for PID:X, UID:X, GID:X FAILED!" messages.
authorKen'ichi Ohmichi <oomichi@mxs.nes.nec.co.jp>
Mon, 6 Jul 2009 04:23:44 +0000 (13:23 +0900)
committerDhaval Giani <dhaval@linux.vnet.ibm.com>
Tue, 7 Jul 2009 14:35:21 +0000 (20:05 +0530)
Hi,

Changelog since v1:
===================
 * Rebase the latest code.
 * Cleanup.

The log message "Cgroup change for PID:X, UID:X, GID:X FAILED!" is output
by cgrulesengd daemon, even if a process finished already and that is not
a problem.
This patch prevents the daemon from outputting this spam log message.

* Reference
  [PATCH 2/2] Reduce "Cgroup change for PID:X, UID:X, GID:X FAILED!" messages.
  http://sourceforge.net/mailarchive/message.php?msg_name=4A10EE7E.60403%40mxs.nes.nec.co.jp

Thanks
Ken'ichi Ohmichi

Signed-off-by: Ken'ichi Ohmichi <oomichi@mxs.nes.nec.co.jp>
Signed-off-by: Dhaval Giani <dhaval@linux.vnet.ibm.com>
src/daemon/cgrulesengd.c

index 00016e3960ead6a9e65068be048c4a25e9ce0453..38e4f60f10b68dcdccfbff391822b3b65817a7ae 100644 (file)
@@ -432,11 +432,10 @@ int cgre_process_event(const struct proc_event *ev, const int type)
                break;
        }
        ret = cgre_change_cgroup(euid, egid, procname, pid);
-       if (ret) {
-               /*
-                * TODO: add some supression, do not spam log when every group
-                * change fails
-                */
+       if ((ret == ECGOTHER) && (errno == ESRCH)) {
+               /* A process finished already and that is not a problem. */
+               ret = 0;
+       } else if (ret) {
                flog(LOG_WARNING, "Cgroup change for PID: %d, UID: %d, GID: %d"
                        " FAILED! (Error Code: %d)", log_pid, log_uid, log_gid,
                        ret);