mbox series

[v3,0/3] arch/arm: optee: fix TODOs and change status to "Tech Preview"

Message ID 20190924154633.852828-1-volodymyr_babchuk@epam.com (mailing list archive)
Headers show
Series arch/arm: optee: fix TODOs and change status to "Tech Preview" | expand

Message

Volodymyr Babchuk Sept. 24, 2019, 3:46 p.m. UTC
This is the third version of maturing the OP-TEE mediator patches.

Changes also can be pulled from [3].

Changes from v2:
 - The following 3 patches were commited:
 xen/arm: optee: impose limit on shared buffer size
 xen/arm: optee: check for preemption while freeing shared buffers
 xen/arm: optee: limit number of shared buffers
 - Other changes are described in the corresponding patches

Changes from v1:
 - Added patch that updates SUPPORT.md
 - Instead of removing "experimental" status I changed it to "Tech Preview"
 - Other changes are described in the corresponding patches

Cover letter for v1:

This patch series fixes various unfinished items in the OP-TEE mediator.
Mostly this is about limiting resources that guest can consume. This
includes both memory and time - how many buffers guest can share with
OP-TEE (this uses Xen memory) and when mediator should preempt itself,
to make sure that guest does not stress scheduling.

Apart from this, there were one case, when mediator's actions might lead
to memory leak in a good-behaving guest. To fix this issue I had to
extend mediator logic, so now it can issue RPC requests to guest in the
same way, as OP-TEE does this. This is useful feature, because it
allows to preempt mediator during long operations. So, in the future
it will be possible to remove shared buffer size limitation, because
mediator can preempt self during buffer translation.

This patch series can be pulled from [1].

[1] https://github.com/lorc/xen/tree/optee3_v1
[2] https://github.com/lorc/xen/tree/optee3_v2
[3] https://github.com/lorc/xen/tree/optee3_v3


Volodymyr Babchuk (3):
  xen/arm: optee: handle shared buffer translation error
  SUPPORT.md: Describe OP-TEE mediator
  xen/arm: optee: update description in Kconfig

 SUPPORT.md               |   4 +
 xen/arch/arm/tee/Kconfig |   9 +-
 xen/arch/arm/tee/optee.c | 173 ++++++++++++++++++++++++++++++++-------
 3 files changed, 151 insertions(+), 35 deletions(-)

Comments

Julien Grall Sept. 25, 2019, 3:09 p.m. UTC | #1
Hi Volodymyr,

On 24/09/2019 16:46, Volodymyr Babchuk wrote:
> This is the third version of maturing the OP-TEE mediator patches.
> 
> Changes also can be pulled from [3].
> 
> Changes from v2:
>   - The following 3 patches were commited:
>   xen/arm: optee: impose limit on shared buffer size
>   xen/arm: optee: check for preemption while freeing shared buffers
>   xen/arm: optee: limit number of shared buffers
>   - Other changes are described in the corresponding patches
> 
> Changes from v1:
>   - Added patch that updates SUPPORT.md
>   - Instead of removing "experimental" status I changed it to "Tech Preview"
>   - Other changes are described in the corresponding patches
> 
> Cover letter for v1:
> 
> This patch series fixes various unfinished items in the OP-TEE mediator.
> Mostly this is about limiting resources that guest can consume. This
> includes both memory and time - how many buffers guest can share with
> OP-TEE (this uses Xen memory) and when mediator should preempt itself,
> to make sure that guest does not stress scheduling.
> 
> Apart from this, there were one case, when mediator's actions might lead
> to memory leak in a good-behaving guest. To fix this issue I had to
> extend mediator logic, so now it can issue RPC requests to guest in the
> same way, as OP-TEE does this. This is useful feature, because it
> allows to preempt mediator during long operations. So, in the future
> it will be possible to remove shared buffer size limitation, because
> mediator can preempt self during buffer translation.
> 
> This patch series can be pulled from [1].
> 
> [1] https://github.com/lorc/xen/tree/optee3_v1
> [2] https://github.com/lorc/xen/tree/optee3_v2
> [3] https://github.com/lorc/xen/tree/optee3_v3
> 
> 
> Volodymyr Babchuk (3):
>    xen/arm: optee: handle shared buffer translation error
>    SUPPORT.md: Describe OP-TEE mediator
>    xen/arm: optee: update description in Kconfig

The series is now merged. Thank you for the contribution!

Cheers,