Skip to content

Commit

Permalink
cgroup: relocate cgroup_advance_iter()
Browse files Browse the repository at this point in the history
For some reason, cgroup_advance_iter() is standing lonely all away
from its iter comrades.  Relocate it.

This is cosmetic.

Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Li Zefan <lizefan@huawei.com>
  • Loading branch information
Tejun Heo committed Aug 9, 2013
1 parent 492eb21 commit d515876
Showing 1 changed file with 24 additions and 24 deletions.
48 changes: 24 additions & 24 deletions kernel/cgroup.c
Original file line number Diff line number Diff line change
Expand Up @@ -2981,30 +2981,6 @@ int cgroup_task_count(const struct cgroup *cgrp)
return count;
}

/*
* Advance a list_head iterator. The iterator should be positioned at
* the start of a css_set
*/
static void cgroup_advance_iter(struct cgroup *cgrp, struct cgroup_iter *it)
{
struct list_head *l = it->cset_link;
struct cgrp_cset_link *link;
struct css_set *cset;

/* Advance to the next non-empty css_set */
do {
l = l->next;
if (l == &cgrp->cset_links) {
it->cset_link = NULL;
return;
}
link = list_entry(l, struct cgrp_cset_link, cset_link);
cset = link->cset;
} while (list_empty(&cset->tasks));
it->cset_link = l;
it->task = cset->tasks.next;
}

/*
* To reduce the fork() overhead for systems that are not actually
* using their cgroups capability, we don't maintain the lists running
Expand Down Expand Up @@ -3223,6 +3199,30 @@ css_next_descendant_post(struct cgroup_subsys_state *pos,
}
EXPORT_SYMBOL_GPL(css_next_descendant_post);

/*
* Advance a list_head iterator. The iterator should be positioned at
* the start of a css_set
*/
static void cgroup_advance_iter(struct cgroup *cgrp, struct cgroup_iter *it)
{
struct list_head *l = it->cset_link;
struct cgrp_cset_link *link;
struct css_set *cset;

/* Advance to the next non-empty css_set */
do {
l = l->next;
if (l == &cgrp->cset_links) {
it->cset_link = NULL;
return;
}
link = list_entry(l, struct cgrp_cset_link, cset_link);
cset = link->cset;
} while (list_empty(&cset->tasks));
it->cset_link = l;
it->task = cset->tasks.next;
}

void cgroup_iter_start(struct cgroup *cgrp, struct cgroup_iter *it)
__acquires(css_set_lock)
{
Expand Down

0 comments on commit d515876

Please sign in to comment.