-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Question Regarding Context Switch Between REE and TEE #3963
Comments
See #3673 for details. |
Thank you! |
Hello, I have another question regarding the context switches. Ecall (i.e., TEE_InvokeTACommand) and Ocall (i.e., TEE_InvokeCACommand) are the function calls that pass the input parameters and return the output results. If I would like to conduct a simple context switch with context pointers only (e.g., SMC() as shown in the figure) to switch between the REE and TEE, how could I do that? I am looking for an SMC() function/command, because it could save time/energy consumption if there is no need to pass parameters and return results for some context-switch cases in the example shown below. Thank you! |
TAs and Linux user space are not allowed to use the SMC instruction directly. Allowing that could lead to user mode corrupting kernel mode. In a full context switch from Linux user space to a TA is as you've noted a complex operation. Only skipping the parameter passing/checks should hardly make much difference. |
I see. Thank you so much for your clarification. |
Hello,
I am wondering if OPTEE supports proactive context switches for both REE and TEE. Based on my current understanding, TA in OPTEE is a passive application that needs to wait for requests from the host to conduct the requested operations. Are there any commands or function calls to support the workflow as the figure shown below? Thank you!
The text was updated successfully, but these errors were encountered: