From: Julien Grall <julien.grall@arm.com>
To: Volodymyr Babchuk <volodymyr_babchuk@epam.com>,
xen-devel@lists.xenproject.org, xen-devel@lists.xen.org
Cc: tee-dev@lists.linaro.org, Stefano Stabellini <sstabellini@kernel.org>
Subject: Re: [PATCH v2 06/13] optee: add domain contexts
Date: Wed, 5 Sep 2018 15:10:44 +0100 [thread overview]
Message-ID: <75f20a4a-60db-8a83-62da-2515b88b0ed9@arm.com> (raw)
In-Reply-To: <1535993677-20816-7-git-send-email-volodymyr_babchuk@epam.com>
Hi,
On 09/03/2018 05:54 PM, Volodymyr Babchuk wrote:
> OP-TEE meditor needs to store per-domain context, as will be seen
s/meditor/mediator/
> in the next patches. At this moment it stores only reference to domain.
>
> This allows us to filter out calls from domains that are not allowed
> to work with OP-TEE.
>
> Signed-off-by: Volodymyr Babchuk <volodymyr_babchuk@epam.com>
> ---
> xen/arch/arm/tee/optee.c | 66 ++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 66 insertions(+)
>
> diff --git a/xen/arch/arm/tee/optee.c b/xen/arch/arm/tee/optee.c
> index 48bff5d..c895a99 100644
> --- a/xen/arch/arm/tee/optee.c
> +++ b/xen/arch/arm/tee/optee.c
> @@ -19,6 +19,14 @@
> #include <asm/tee/optee_msg.h>
> #include <asm/tee/optee_smc.h>
>
> +struct domain_ctx {
I would prefer if the structure has optee in its name such as optee_domain.
We also tend to abbreviate context in Xen using the ctxt.
> + struct list_head list;
> + struct domain *domain;
> +};
> +
> +static LIST_HEAD(domain_ctx_list);
> +static DEFINE_SPINLOCK(domain_ctx_list_lock);
> +
> static bool optee_probe(void)
> {
> struct dt_device_node *node;
> @@ -41,18 +49,49 @@ static bool optee_probe(void)
> return true;
> }
>
> +static struct domain_ctx *find_domain_ctx(struct domain* d)
> +{
> + struct domain_ctx *ctx;
> +
> + spin_lock(&domain_ctx_list_lock);
> +
> + list_for_each_entry( ctx, &domain_ctx_list, list )
> + {
> + if ( ctx->domain == d )
> + {
> + spin_unlock(&domain_ctx_list_lock);
> + return ctx;
> + }
> + }
> +
> + spin_unlock(&domain_ctx_list_lock);
> + return NULL;
> +}
Why do you need to store the context in a list? As you have a context
per domain it would be better to store that directly in struct domain by
introduce a field "void * tee".
With that, most of the code in this patch will become unnecessary. So
you potentially can fold it into something else.
Cheers,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
next prev parent reply other threads:[~2018-09-05 14:10 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-09-03 16:54 [PATCH v2 00/13] TEE mediator (and OP-TEE) support in XEN Volodymyr Babchuk
2018-09-03 16:54 ` [PATCH v2 01/13] arm: add generic TEE mediator framework Volodymyr Babchuk
2018-09-03 17:22 ` Julien Grall
2018-09-03 16:54 ` [PATCH v2 02/13] domctl: add tee_op domctl Volodymyr Babchuk
2018-09-03 17:16 ` Julien Grall
2018-09-03 16:54 ` [PATCH v2 03/13] arm: tee: add OP-TEE header files Volodymyr Babchuk
2018-09-03 16:54 ` [PATCH v2 04/13] optee: add OP-TEE mediator skeleton Volodymyr Babchuk
2018-09-03 17:38 ` Julien Grall
2018-09-03 17:55 ` Volodymyr Babchuk
2018-09-04 19:48 ` Julien Grall
2018-09-05 12:17 ` Volodymyr Babchuk
2018-09-05 13:16 ` Julien Grall
2018-09-05 13:38 ` Volodymyr Babchuk
2018-09-05 13:47 ` Julien Grall
2018-09-03 16:54 ` [PATCH v2 05/13] optee: add fast calls handling Volodymyr Babchuk
2018-09-05 13:36 ` Julien Grall
2018-09-03 16:54 ` [PATCH v2 06/13] optee: add domain contexts Volodymyr Babchuk
2018-09-05 14:10 ` Julien Grall [this message]
2018-09-05 14:18 ` Andrew Cooper
2018-09-05 14:23 ` Volodymyr Babchuk
2018-09-05 14:27 ` Julien Grall
2018-09-03 16:54 ` [PATCH v2 07/13] optee: add std call handling Volodymyr Babchuk
2018-09-05 15:17 ` Julien Grall
2018-09-10 17:37 ` Volodymyr Babchuk
2018-09-11 11:19 ` Julien Grall
2018-09-11 11:31 ` Volodymyr Babchuk
2018-09-11 13:30 ` Julien Grall
2018-09-03 16:54 ` [PATCH v2 08/13] optee: add support for RPC SHM buffers Volodymyr Babchuk
2018-09-10 13:01 ` Julien Grall
2018-09-10 17:44 ` Volodymyr Babchuk
2018-09-11 11:53 ` Julien Grall
2018-09-11 19:30 ` Volodymyr Babchuk
2018-09-12 10:59 ` Julien Grall
2018-09-12 13:51 ` Volodymyr Babchuk
2018-09-18 16:11 ` Julien Grall
2018-09-03 16:54 ` [PATCH v2 09/13] optee: add support for arbitrary shared memory Volodymyr Babchuk
2018-09-10 14:02 ` Julien Grall
2018-09-10 18:04 ` Volodymyr Babchuk
2018-09-11 13:37 ` Julien Grall
2018-09-11 19:33 ` Volodymyr Babchuk
2018-09-12 11:02 ` Julien Grall
2018-09-12 12:45 ` Volodymyr Babchuk
2018-09-18 16:19 ` Julien Grall
2018-09-03 16:54 ` [PATCH v2 10/13] optee: add support for RPC commands Volodymyr Babchuk
2018-09-10 15:34 ` Julien Grall
2018-09-10 18:14 ` Volodymyr Babchuk
2018-09-11 13:56 ` Julien Grall
2018-09-11 18:58 ` Volodymyr Babchuk
2018-09-18 16:50 ` Julien Grall
2018-09-19 15:21 ` Volodymyr Babchuk
2018-09-03 16:54 ` [PATCH v2 11/13] libxc: add xc_dom_tee_enable(...) function Volodymyr Babchuk
2018-09-06 10:59 ` Wei Liu
2018-09-03 16:54 ` [PATCH v2 12/13] xl: add "tee" option for xl.cfg Volodymyr Babchuk
2018-09-11 14:23 ` Julien Grall
2018-09-03 16:54 ` [PATCH v2 13/13] lixl: arm: create optee firmware node in DT if tee=1 Volodymyr Babchuk
2018-09-11 14:48 ` Julien Grall
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=75f20a4a-60db-8a83-62da-2515b88b0ed9@arm.com \
--to=julien.grall@arm.com \
--cc=sstabellini@kernel.org \
--cc=tee-dev@lists.linaro.org \
--cc=volodymyr_babchuk@epam.com \
--cc=xen-devel@lists.xen.org \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).