summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorArto Merilainen <amerilainen@nvidia.com>2013-08-27 16:17:58 +0300
committerDan Willemsen <dwillemsen@nvidia.com>2013-09-27 12:51:50 -0700
commitfd7d79741d1ad2a31ea3bfeea947a9d6af16235e (patch)
treedef920a1a9ce8c73e3e72f42341915becb3d985e /kernel
parent63078e87a62b265111622e58e66d9e67a2e1519b (diff)
kernel: power: Add PM_USERSPACE_FROZEN workqueue
Some device drivers require a callback to be called after the userspace processes are frozen. This patch adds PM_USERSPACE_FROZEN workqueue which is called after userspace processes are frozen but when the kernel threads are still functioning. Bug 1344551 Change-Id: I0e6fd7e2473db168d01c88bc0192326ceea92ebe Signed-off-by: Arto Merilainen <amerilainen@nvidia.com> Reviewed-on: http://git-master/r/266774 (cherry picked from commit d964493291ef87eea1a2ee47b5b66305bb18bcf3) Reviewed-on: http://git-master/r/274939 Tested-by: Sang-Hun Lee <sanlee@nvidia.com> Reviewed-by: Kevin Huang (Eng-SW) <kevinh@nvidia.com> Reviewed-by: Mitch Luban <mluban@nvidia.com>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/power/power.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/kernel/power/power.h b/kernel/power/power.h
index 7d4b7ffb3c1d..49deae3b345f 100644
--- a/kernel/power/power.h
+++ b/kernel/power/power.h
@@ -242,6 +242,13 @@ static inline int suspend_freeze_processes(void)
if (error)
return error;
+ error = pm_notifier_call_chain(PM_USERSPACE_FROZEN);
+ if (error) {
+ printk(KERN_INFO "Userspace frozen workqueue canceled suspend\n");
+ thaw_processes();
+ return error;
+ }
+
error = freeze_kernel_threads();
/*
* freeze_kernel_threads() thaws only kernel threads upon freezing