summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHyung Taek Ryoo <hryoo@nvidia.com>2013-07-25 10:09:01 -0700
committerRiham Haidar <rhaidar@nvidia.com>2013-07-25 20:26:36 -0700
commit55d5b8542b102976b2b81bb67374827fa73fa48a (patch)
treed96a0e204c982face54fdf287c4b9cfb5db3c158
parent8728ae497732cb1db36c576db68e9f208e53982c (diff)
security: tf_driver: update with latest TL drop
This change fixes abnormal signal handling in tf driver. Tf_daemon(user thread) is waiting for the signal when coming out of LP0, but tf_daemon never gets the signal because tf driver can't handle the signal properly. If there's a pending signal when coming out of LP0, this fix clears the pending signal. Bug 1244750 Bug 1309812 Change-Id: I7849866c7993af8716c17f6b7a06692271334664 Signed-off-by: Hyung Taek Ryoo <hryoo@nvidia.com> Reviewed-on: http://git-master/r/253586 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Jun Yan <juyan@nvidia.com> Tested-by: Jun Yan <juyan@nvidia.com> Reviewed-by: Anshul Jain (SW) <anshulj@nvidia.com>
-rw-r--r--security/tf_driver/tf_comm.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/security/tf_driver/tf_comm.c b/security/tf_driver/tf_comm.c
index c1f4f654632c..d2e7e1360443 100644
--- a/security/tf_driver/tf_comm.c
+++ b/security/tf_driver/tf_comm.c
@@ -1244,8 +1244,10 @@ copy_answers:
wake_up(&(comm->wait_queue));
#ifdef CONFIG_FREEZER
- if (try_to_freeze())
+ if (try_to_freeze()) {
+ recalc_sigpending();
goto copy_answers;
+ }
#endif
#ifndef CONFIG_PREEMPT