aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/goldfish/patches-2.6.30/0070-PM-wakelock-Abort-task-freezing-if-a-wake-lock-is.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/goldfish/patches-2.6.30/0070-PM-wakelock-Abort-task-freezing-if-a-wake-lock-is.patch')
-rw-r--r--target/linux/goldfish/patches-2.6.30/0070-PM-wakelock-Abort-task-freezing-if-a-wake-lock-is.patch64
1 files changed, 0 insertions, 64 deletions
diff --git a/target/linux/goldfish/patches-2.6.30/0070-PM-wakelock-Abort-task-freezing-if-a-wake-lock-is.patch b/target/linux/goldfish/patches-2.6.30/0070-PM-wakelock-Abort-task-freezing-if-a-wake-lock-is.patch
deleted file mode 100644
index a93df9ad41..0000000000
--- a/target/linux/goldfish/patches-2.6.30/0070-PM-wakelock-Abort-task-freezing-if-a-wake-lock-is.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 3f8e407c418205252f00615da4d0182e8c960344 Mon Sep 17 00:00:00 2001
-From: =?utf-8?q?Arve=20Hj=C3=B8nnev=C3=A5g?= <arve@android.com>
-Date: Tue, 14 Oct 2008 16:02:39 -0700
-Subject: [PATCH 070/134] PM: wakelock: Abort task freezing if a wake lock is held.
-
-Avoids a problem where the device sometimes hangs for 20 seconds
-before the screen is turned on.
----
- kernel/power/process.c | 23 ++++++++++++++++++-----
- 1 files changed, 18 insertions(+), 5 deletions(-)
-
---- a/kernel/power/process.c
-+++ b/kernel/power/process.c
-@@ -13,6 +13,7 @@
- #include <linux/module.h>
- #include <linux/syscalls.h>
- #include <linux/freezer.h>
-+#include <linux/wakelock.h>
-
- /*
- * Timeout for stopping processes
-@@ -36,6 +37,7 @@ static int try_to_freeze_tasks(bool sig_
- struct timeval start, end;
- u64 elapsed_csecs64;
- unsigned int elapsed_csecs;
-+ unsigned int wakeup = 0;
-
- do_gettimeofday(&start);
-
-@@ -62,6 +64,10 @@ static int try_to_freeze_tasks(bool sig_
- } while_each_thread(g, p);
- read_unlock(&tasklist_lock);
- yield(); /* Yield is okay here */
-+ if (todo && has_wake_lock(WAKE_LOCK_SUSPEND)) {
-+ wakeup = 1;
-+ break;
-+ }
- if (time_after(jiffies, end_time))
- break;
- } while (todo);
-@@ -77,11 +83,18 @@ static int try_to_freeze_tasks(bool sig_
- * and caller must call thaw_processes() if something fails),
- * but it cleans up leftover PF_FREEZE requests.
- */
-- printk("\n");
-- printk(KERN_ERR "Freezing of tasks failed after %d.%02d seconds "
-- "(%d tasks refusing to freeze):\n",
-- elapsed_csecs / 100, elapsed_csecs % 100, todo);
-- show_state();
-+ if(wakeup) {
-+ printk("\n");
-+ printk(KERN_ERR "Freezing of %s aborted\n",
-+ sig_only ? "user space " : "tasks ");
-+ }
-+ else {
-+ printk("\n");
-+ printk(KERN_ERR "Freezing of tasks failed after %d.%02d seconds "
-+ "(%d tasks refusing to freeze):\n",
-+ elapsed_csecs / 100, elapsed_csecs % 100, todo);
-+ show_state();
-+ }
- read_lock(&tasklist_lock);
- do_each_thread(g, p) {
- task_lock(p);