• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/kernel/

Lines Matching refs:freezer

2  * cgroup_freezer.c -  control group freezer subsystem
22 #include <linux/freezer.h>
31 struct freezer {
37 static inline struct freezer *cgroup_freezer(
42 struct freezer, css);
45 static inline struct freezer *task_freezer(struct task_struct *task)
48 struct freezer, css);
53 struct freezer *freezer;
57 freezer = task_freezer(task);
58 if (!freezer->css.cgroup->parent)
61 state = freezer->state;
68 * cgroups_write_string() limits the size of freezer state strings to
79 * Transitions are caused by userspace writes to the freezer.state file.
93 * freezer->lock
110 * freezer->lock
115 * freezer->lock
122 * freezer->lock
130 * freezer->lock
140 struct freezer *freezer;
142 freezer = kzalloc(sizeof(struct freezer), GFP_KERNEL);
143 if (!freezer)
146 spin_lock_init(&freezer->lock);
147 freezer->state = CGROUP_THAWED;
148 return &freezer->css;
165 * The call to cgroup_lock() in the freezer.state write method prevents
173 struct freezer *freezer;
185 freezer = cgroup_freezer(new_cgroup);
186 if (freezer->state == CGROUP_FROZEN)
207 struct freezer *freezer;
212 * freezer won't be removed and will be valid during this
217 freezer = task_freezer(task);
224 if (!freezer->css.cgroup->parent)
227 spin_lock_irq(&freezer->lock);
228 BUG_ON(freezer->state == CGROUP_FROZEN);
231 if (freezer->state == CGROUP_FREEZING)
233 spin_unlock_irq(&freezer->lock);
237 * caller must hold freezer->lock
240 struct freezer *freezer)
259 freezer->state = CGROUP_FROZEN;
261 freezer->state = CGROUP_FREEZING;
263 freezer->state = CGROUP_THAWED;
270 struct freezer *freezer;
276 freezer = cgroup_freezer(cgroup);
277 spin_lock_irq(&freezer->lock);
278 state = freezer->state;
282 update_freezer_state(cgroup, freezer);
283 state = freezer->state;
285 spin_unlock_irq(&freezer->lock);
293 static int try_to_freeze_cgroup(struct cgroup *cgroup, struct freezer *freezer)
299 freezer->state = CGROUP_FREEZING;
314 static void unfreeze_cgroup(struct cgroup *cgroup, struct freezer *freezer)
325 freezer->state = CGROUP_THAWED;
331 struct freezer *freezer;
334 freezer = cgroup_freezer(cgroup);
336 spin_lock_irq(&freezer->lock);
338 update_freezer_state(cgroup, freezer);
339 if (goal_state == freezer->state)
344 unfreeze_cgroup(cgroup, freezer);
347 retval = try_to_freeze_cgroup(cgroup, freezer);
353 spin_unlock_irq(&freezer->lock);
395 .name = "freezer",