]> arthur.barton.de Git - netdata.git/commitdiff
cgroups: properly remove not available cgroups from memory again
authorCosta Tsaousis <costa@tsaousis.gr>
Fri, 29 Apr 2016 23:08:44 +0000 (02:08 +0300)
committerCosta Tsaousis (ktsaou) <costa@tsaousis.gr>
Fri, 29 Apr 2016 23:52:37 +0000 (02:52 +0300)
src/sys_fs_cgroup.c

index 1d7ac7898bdd682af5f433a405388b6dedffbeab..a3afa60765b2968d90b1f24921ed3e390f749fb4 100644 (file)
@@ -822,9 +822,9 @@ void mark_all_cgroups_as_not_available() {
 }
 
 void cleanup_all_cgroups() {
-       struct cgroup *cg, *last;
+       struct cgroup *cg = cgroup_root, *last = NULL;
 
-       for(cg = cgroup_root, last = NULL; cg ; last = cg) {
+       for(; cg ;) {
                if(!cg->available) {
 
                        if(!last)
@@ -838,10 +838,12 @@ void cleanup_all_cgroups() {
                                cg = cgroup_root;
                        else
                                cg = last->next;
-
-                       continue;
+                       
+               }
+               else {
+                       last = cg;
+                       cg = cg->next;
                }
-               cg = cg->next;
        }
 }