Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 115885
b: refs/heads/master
c: 1aece34
h: refs/heads/master
i:
  115883: 4afbb58
v: v3
  • Loading branch information
Matt Helsley authored and Linus Torvalds committed Oct 20, 2008
1 parent 31d2a0b commit 14cfab3
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 5 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 81dcf33c2ae314899f754aa7aaa1cb1fe2f84da6
refs/heads/master: 1aece34833721d64eb33fc15cd923c727296d3d3
12 changes: 8 additions & 4 deletions trunk/kernel/cgroup_freezer.c
Original file line number Diff line number Diff line change
Expand Up @@ -201,8 +201,8 @@ static void freezer_fork(struct cgroup_subsys *ss, struct task_struct *task)
/*
* caller must hold freezer->lock
*/
static void check_if_frozen(struct cgroup *cgroup,
struct freezer *freezer)
static void update_freezer_state(struct cgroup *cgroup,
struct freezer *freezer)
{
struct cgroup_iter it;
struct task_struct *task;
Expand All @@ -222,6 +222,10 @@ static void check_if_frozen(struct cgroup *cgroup,
*/
if (nfrozen == ntotal)
freezer->state = CGROUP_FROZEN;
else if (nfrozen > 0)
freezer->state = CGROUP_FREEZING;
else
freezer->state = CGROUP_THAWED;
cgroup_iter_end(cgroup, &it);
}

Expand All @@ -240,7 +244,7 @@ static int freezer_read(struct cgroup *cgroup, struct cftype *cft,
if (state == CGROUP_FREEZING) {
/* We change from FREEZING to FROZEN lazily if the cgroup was
* only partially frozen when we exitted write. */
check_if_frozen(cgroup, freezer);
update_freezer_state(cgroup, freezer);
state = freezer->state;
}
spin_unlock_irq(&freezer->lock);
Expand Down Expand Up @@ -301,7 +305,7 @@ static int freezer_change_state(struct cgroup *cgroup,

freezer = cgroup_freezer(cgroup);
spin_lock_irq(&freezer->lock);
check_if_frozen(cgroup, freezer); /* may update freezer->state */
update_freezer_state(cgroup, freezer);
if (goal_state == freezer->state)
goto out;
switch (freezer->state) {
Expand Down

0 comments on commit 14cfab3

Please sign in to comment.