From: Tejun Heo Date: Sat, 20 Aug 2011 09:31:39 +0000 (+0200) Subject: freezer: don't distinguish nosig tasks on thaw X-Git-Tag: next-20110822~18^2^2~9 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=db984b394ab5bd2606e117211a58f04dd635df9b;p=karo-tx-linux.git freezer: don't distinguish nosig tasks on thaw There's no point in thawing nosig tasks before others. There's no ordering requirement between the two groups on thaw, which the staged thawing can't guarantee anyway. Simplify thaw_processes() by removing the distinction and collapsing thaw_tasks() into thaw_processes(). This will help further updates to freezer. Signed-off-by: Tejun Heo --- diff --git a/kernel/power/process.c b/kernel/power/process.c index ddfaba4da2b1..3eee548a5fdd 100644 --- a/kernel/power/process.c +++ b/kernel/power/process.c @@ -160,34 +160,28 @@ int freeze_processes(void) return error; } -static void thaw_tasks(bool nosig_only) +void thaw_processes(void) { struct task_struct *g, *p; + oom_killer_enable(); + + printk("Restarting tasks ... "); + + thaw_workqueues(); + read_lock(&tasklist_lock); do_each_thread(g, p) { if (!freezable(p)) continue; - if (nosig_only && should_send_signal(p)) - continue; - if (cgroup_freezing_or_frozen(p)) continue; __thaw_task(p); } while_each_thread(g, p); read_unlock(&tasklist_lock); -} - -void thaw_processes(void) -{ - oom_killer_enable(); - printk("Restarting tasks ... "); - thaw_workqueues(); - thaw_tasks(true); - thaw_tasks(false); schedule(); printk("done.\n"); }