diff options
| author | Jiri Kosina <jkosina@suse.cz> | 2011-11-13 14:55:35 -0500 |
|---|---|---|
| committer | Jiri Kosina <jkosina@suse.cz> | 2011-11-13 14:55:53 -0500 |
| commit | 2290c0d06d82faee87b1ab2d9d4f7bf81ef64379 (patch) | |
| tree | e075e4d5534193f28e6059904f61e5ca03958d3c /kernel/power/process.c | |
| parent | 4da669a2e3e5bc70b30a0465f3641528681b5f77 (diff) | |
| parent | 52e4c2a05256cb83cda12f3c2137ab1533344edb (diff) | |
Merge branch 'master' into for-next
Sync with Linus tree to have 157550ff ("mtd: add GPMI-NAND driver
in the config and Makefile") as I have patch depending on that one.
Diffstat (limited to 'kernel/power/process.c')
| -rw-r--r-- | kernel/power/process.c | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/kernel/power/process.c b/kernel/power/process.c index 0cf3a27a6c9d..addbbe5531bc 100644 --- a/kernel/power/process.c +++ b/kernel/power/process.c | |||
| @@ -135,7 +135,7 @@ static int try_to_freeze_tasks(bool sig_only) | |||
| 135 | } | 135 | } |
| 136 | 136 | ||
| 137 | /** | 137 | /** |
| 138 | * freeze_processes - tell processes to enter the refrigerator | 138 | * freeze_processes - Signal user space processes to enter the refrigerator. |
| 139 | */ | 139 | */ |
| 140 | int freeze_processes(void) | 140 | int freeze_processes(void) |
| 141 | { | 141 | { |
| @@ -143,20 +143,30 @@ int freeze_processes(void) | |||
| 143 | 143 | ||
| 144 | printk("Freezing user space processes ... "); | 144 | printk("Freezing user space processes ... "); |
| 145 | error = try_to_freeze_tasks(true); | 145 | error = try_to_freeze_tasks(true); |
| 146 | if (error) | 146 | if (!error) { |
| 147 | goto Exit; | 147 | printk("done."); |
| 148 | printk("done.\n"); | 148 | oom_killer_disable(); |
| 149 | } | ||
| 150 | printk("\n"); | ||
| 151 | BUG_ON(in_atomic()); | ||
| 152 | |||
| 153 | return error; | ||
| 154 | } | ||
| 155 | |||
| 156 | /** | ||
| 157 | * freeze_kernel_threads - Make freezable kernel threads go to the refrigerator. | ||
| 158 | */ | ||
| 159 | int freeze_kernel_threads(void) | ||
| 160 | { | ||
| 161 | int error; | ||
| 149 | 162 | ||
| 150 | printk("Freezing remaining freezable tasks ... "); | 163 | printk("Freezing remaining freezable tasks ... "); |
| 151 | error = try_to_freeze_tasks(false); | 164 | error = try_to_freeze_tasks(false); |
| 152 | if (error) | 165 | if (!error) |
| 153 | goto Exit; | 166 | printk("done."); |
| 154 | printk("done."); | ||
| 155 | 167 | ||
| 156 | oom_killer_disable(); | ||
| 157 | Exit: | ||
| 158 | BUG_ON(in_atomic()); | ||
| 159 | printk("\n"); | 168 | printk("\n"); |
| 169 | BUG_ON(in_atomic()); | ||
| 160 | 170 | ||
| 161 | return error; | 171 | return error; |
| 162 | } | 172 | } |
