All of lore.kernel.org
 help / color / mirror / Atom feed
[parent not found: < <CAFA6WYPe2C6Zu0P9NX3X6dGqBs_HSNLYe_1qrW_QiikuKFRoOA@mail.gmail.com>]
[parent not found: < <CAHUa44G8brKgzV9DdriHD+aN_=k5K9gECvurk+hmK0y-NqF+rA@mail.gmail.com>]
[parent not found: < <CAHUa44EqPprBC_M8vuhxpJE8gVuzbYYitgsvHpRLHWp4-vJnfQ@mail.gmail.com>]
[parent not found: < <CAFA6WYPDxHz45Ev4yqi0rE4W08YnNbrwUg8FMt9y1FnL3f84yw@mail.gmail.com>]
[parent not found: < <CAFA6WYPYE1Ggs+6GB5Z9aMVcFjrS8mOm4LbggBocti+Yvz8idA@mail.gmail.com>]
[parent not found: < <CAFA6WYNj_onTOtETKTLTGG6=GYHMDvty90KftLkfEz_v7nZx9w@mail.gmail.com>]
* [PATCH 0/3] OP-TEE RPC argument cache
@ 2022-03-01 19:48 ` Jens Wiklander
  0 siblings, 0 replies; 30+ messages in thread
From: Jens Wiklander @ 2022-03-01 19:48 UTC (permalink / raw)
  To: op-tee

[-- Attachment #1: Type: text/plain, Size: 1370 bytes --]

Hi all,

This patchset optimizes handling of the argument struction passed to
call_with_arg when doing a yielding call to OP-TEE.

Prior to this was this structure allocated before the yielding call and
then freed after it had returned. In case many calls are made in succession
this results in quite a bit of unncesary allocte/free and possibly also
switching back and forth to secure work in order to register if needed.

Another optimization handles the way the argument struct needed to do RPC
is passed. Please see the patch "optee: add OPTEE_SMC_CALL_WITH_RPC_ARG"
for details.

This patchset is based the next branch [1] in my kernel to avoid conflict
with other recent patches.

Thanks,
Jens

[1] https://git.linaro.org/people/jens.wiklander/linux-tee.git/log/?h=next

Jens Wiklander (3):
  optee: add OPTEE_SMC_CALL_WITH_RPC_ARG
  optee: add FF-A capability OPTEE_FFA_SEC_CAP_ARG_OFFSET
  optee: cache argument shared memory structs

 drivers/tee/optee/call.c          | 238 ++++++++++++++++++++++++------
 drivers/tee/optee/core.c          |   1 +
 drivers/tee/optee/ffa_abi.c       |  36 +++--
 drivers/tee/optee/optee_ffa.h     |  12 +-
 drivers/tee/optee/optee_private.h |  31 +++-
 drivers/tee/optee/optee_smc.h     |  47 +++++-
 drivers/tee/optee/smc_abi.c       | 151 +++++++++++++++----
 7 files changed, 419 insertions(+), 97 deletions(-)

-- 
2.31.1


^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2022-04-06  0:51 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] < <CAFA6WYMzwbX5OUgpxptAxy-uphTU4rMVJOxkzFHb+oYD0SN-sQ@mail.gmail.com>
2022-03-16  8:17 ` [PATCH 1/3] optee: add OPTEE_SMC_CALL_WITH_RPC_ARG Jens Wiklander
2022-03-16  8:17   ` Jens Wiklander
2022-03-17 11:40   ` Sumit Garg
2022-03-17 11:40     ` Sumit Garg
     [not found] < <CAFA6WYPe2C6Zu0P9NX3X6dGqBs_HSNLYe_1qrW_QiikuKFRoOA@mail.gmail.com>
2022-04-05 14:51 ` [PATCH 2/3] optee: add FF-A capability OPTEE_FFA_SEC_CAP_ARG_OFFSET Jens Wiklander
2022-04-05 14:51   ` Jens Wiklander
     [not found] < <CAHUa44G8brKgzV9DdriHD+aN_=k5K9gECvurk+hmK0y-NqF+rA@mail.gmail.com>
2022-04-05 12:40 ` [PATCH 1/3] optee: add OPTEE_SMC_CALL_WITH_RPC_ARG Sumit Garg
2022-04-05 12:40   ` Sumit Garg
     [not found] < <CAHUa44EqPprBC_M8vuhxpJE8gVuzbYYitgsvHpRLHWp4-vJnfQ@mail.gmail.com>
2022-04-05 12:26 ` [PATCH 2/3] optee: add FF-A capability OPTEE_FFA_SEC_CAP_ARG_OFFSET Sumit Garg
2022-04-05 12:26   ` Sumit Garg
     [not found] < <CAFA6WYPDxHz45Ev4yqi0rE4W08YnNbrwUg8FMt9y1FnL3f84yw@mail.gmail.com>
2022-03-18  7:49 ` Jens Wiklander
2022-03-18  7:49   ` Jens Wiklander
     [not found] < <CAFA6WYPYE1Ggs+6GB5Z9aMVcFjrS8mOm4LbggBocti+Yvz8idA@mail.gmail.com>
2022-03-18  7:29 ` [PATCH 1/3] optee: add OPTEE_SMC_CALL_WITH_RPC_ARG Jens Wiklander
2022-03-18  7:29   ` Jens Wiklander
     [not found] < <CAFA6WYNj_onTOtETKTLTGG6=GYHMDvty90KftLkfEz_v7nZx9w@mail.gmail.com>
2022-03-16  9:27 ` [PATCH 2/3] optee: add FF-A capability OPTEE_FFA_SEC_CAP_ARG_OFFSET Jens Wiklander
2022-03-16  9:27   ` Jens Wiklander
2022-03-17 12:17   ` Sumit Garg
2022-03-17 12:17     ` Sumit Garg
2022-03-01 19:48 [PATCH 0/3] OP-TEE RPC argument cache Jens Wiklander
2022-03-01 19:48 ` Jens Wiklander
2022-03-01 19:48 ` [PATCH 1/3] optee: add OPTEE_SMC_CALL_WITH_RPC_ARG Jens Wiklander
2022-03-01 19:48   ` Jens Wiklander
2022-03-14  6:30   ` Sumit Garg
2022-03-14  6:30     ` Sumit Garg
2022-03-01 19:48 ` [PATCH 2/3] optee: add FF-A capability OPTEE_FFA_SEC_CAP_ARG_OFFSET Jens Wiklander
2022-03-01 19:48   ` Jens Wiklander
2022-03-14  9:03   ` Sumit Garg
2022-03-14  9:03     ` Sumit Garg
2022-03-01 19:48 ` [PATCH 3/3] optee: cache argument shared memory structs Jens Wiklander
2022-03-01 19:48   ` Jens Wiklander

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.