[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210809071452.28508-2-cgellner@de.adit-jv.com>
Date: Mon, 9 Aug 2021 09:14:50 +0200
From: Christoph Gellner <cgellner@...adit-jv.com>
To: <op-tee@...ts.trustedfirmware.org>, <linux-kernel@...r.kernel.org>
CC: <jens.wiklander@...aro.org>,
Christoph Gellner <cgellner@...adit-jv.com>
Subject: [PATCH 1/3 RESEND] tee: optee: Allow to freeze the task waiting for tee-supplicant
When the system is going to hibernate or suspend it might happen
that the tee-supplicant task is frozen first.
wait_for_completion_interruptible might get stuck in this case.
Add try_to_freeze to allow the waiting task to be frozen while
waiting for the response of tee-supplicant.
Signed-off-by: Christoph Gellner <cgellner@...adit-jv.com>
---
drivers/tee/optee/supp.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/tee/optee/supp.c b/drivers/tee/optee/supp.c
index 322a543b8c27..03c37bae6ac4 100644
--- a/drivers/tee/optee/supp.c
+++ b/drivers/tee/optee/supp.c
@@ -5,6 +5,7 @@
#include <linux/device.h>
#include <linux/slab.h>
#include <linux/uaccess.h>
+#include <linux/freezer.h>
#include "optee_private.h"
struct optee_supp_req {
@@ -141,6 +142,8 @@ u32 optee_supp_thrd_req(struct tee_context *ctx, u32 func, size_t num_params,
req->ret = TEEC_ERROR_COMMUNICATION;
break;
}
+
+ try_to_freeze();
}
ret = req->ret;
--
2.32.0.rc0
Powered by blists - more mailing lists