From: Tyler Hicks <tyhicks@linux.microsoft.com>
To: op-tee@lists.trustedfirmware.org
Subject: Re: [PATCH 6/7] firmware: tee_bnxt: use tee_shm_alloc_kernel_buf()
Date: Wed, 09 Jun 2021 09:58:11 -0500 [thread overview]
Message-ID: <20210609145811.GJ4910@sequoia> (raw)
In-Reply-To: <20210609102324.2222332-7-jens.wiklander@linaro.org>
[-- Attachment #1: Type: text/plain, Size: 1847 bytes --]
On 2021-06-09 12:23:23, Jens Wiklander wrote:
> Uses the new simplified tee_shm_alloc_kernel_buf() function instead of
> the old deprecated tee_shm_alloc() function which required specific
> TEE_SHM-flags.
>
> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Since this series is essentially a rewrite of the shm allocation logic,
it is worth pointing out that the rewrite still uses contiguous
allocations (from alloc_pages()). The tee_bnxt_fw driver is performing
an order-10 allocation which is the max, by default. I've only tested
tee_bnxt_fw when it was built-in to the kernel and tee_bnxt_fw_probe()
was called early in boot but I suspect that it might not succeed when
built as a module and loaded later after memory is segmented. I think
this driver would benefit from being able to request a non-contiguous
allocation.
Is this rewrite a good time to offer drivers a way to perform a
non-contiguous allocation?
Tyler
> ---
> drivers/firmware/broadcom/tee_bnxt_fw.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/firmware/broadcom/tee_bnxt_fw.c b/drivers/firmware/broadcom/tee_bnxt_fw.c
> index ed10da5313e8..56d00ddd4357 100644
> --- a/drivers/firmware/broadcom/tee_bnxt_fw.c
> +++ b/drivers/firmware/broadcom/tee_bnxt_fw.c
> @@ -212,10 +212,9 @@ static int tee_bnxt_fw_probe(struct device *dev)
>
> pvt_data.dev = dev;
>
> - fw_shm_pool = tee_shm_alloc(pvt_data.ctx, MAX_SHM_MEM_SZ,
> - TEE_SHM_MAPPED | TEE_SHM_DMA_BUF);
> + fw_shm_pool = tee_shm_alloc_kernel_buf(pvt_data.ctx, MAX_SHM_MEM_SZ);
> if (IS_ERR(fw_shm_pool)) {
> - dev_err(pvt_data.dev, "tee_shm_alloc failed\n");
> + dev_err(pvt_data.dev, "tee_shm_alloc_kernel_buf failed\n");
> err = PTR_ERR(fw_shm_pool);
> goto out_sess;
> }
> --
> 2.31.1
>
WARNING: multiple messages have this Message-ID (diff)
From: Tyler Hicks <tyhicks@linux.microsoft.com>
To: Jens Wiklander <jens.wiklander@linaro.org>
Cc: linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
op-tee@lists.trustedfirmware.org,
Sumit Garg <sumit.garg@linaro.org>,
Herbert Xu <herbert@gondor.apana.org.au>,
Sakkinen <jarkko.sakkinen@linux.intel.com>,
Sasha Levin <sashal@kernel.org>,
Thirupathaiah Annapureddy <thiruan@microsoft.com>,
Vikas Gupta <vikas.gupta@broadcom.com>,
"David S . Miller" <davem@davemloft.net>
Subject: Re: [PATCH 6/7] firmware: tee_bnxt: use tee_shm_alloc_kernel_buf()
Date: Wed, 9 Jun 2021 09:58:11 -0500 [thread overview]
Message-ID: <20210609145811.GJ4910@sequoia> (raw)
In-Reply-To: <20210609102324.2222332-7-jens.wiklander@linaro.org>
On 2021-06-09 12:23:23, Jens Wiklander wrote:
> Uses the new simplified tee_shm_alloc_kernel_buf() function instead of
> the old deprecated tee_shm_alloc() function which required specific
> TEE_SHM-flags.
>
> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Since this series is essentially a rewrite of the shm allocation logic,
it is worth pointing out that the rewrite still uses contiguous
allocations (from alloc_pages()). The tee_bnxt_fw driver is performing
an order-10 allocation which is the max, by default. I've only tested
tee_bnxt_fw when it was built-in to the kernel and tee_bnxt_fw_probe()
was called early in boot but I suspect that it might not succeed when
built as a module and loaded later after memory is segmented. I think
this driver would benefit from being able to request a non-contiguous
allocation.
Is this rewrite a good time to offer drivers a way to perform a
non-contiguous allocation?
Tyler
> ---
> drivers/firmware/broadcom/tee_bnxt_fw.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/firmware/broadcom/tee_bnxt_fw.c b/drivers/firmware/broadcom/tee_bnxt_fw.c
> index ed10da5313e8..56d00ddd4357 100644
> --- a/drivers/firmware/broadcom/tee_bnxt_fw.c
> +++ b/drivers/firmware/broadcom/tee_bnxt_fw.c
> @@ -212,10 +212,9 @@ static int tee_bnxt_fw_probe(struct device *dev)
>
> pvt_data.dev = dev;
>
> - fw_shm_pool = tee_shm_alloc(pvt_data.ctx, MAX_SHM_MEM_SZ,
> - TEE_SHM_MAPPED | TEE_SHM_DMA_BUF);
> + fw_shm_pool = tee_shm_alloc_kernel_buf(pvt_data.ctx, MAX_SHM_MEM_SZ);
> if (IS_ERR(fw_shm_pool)) {
> - dev_err(pvt_data.dev, "tee_shm_alloc failed\n");
> + dev_err(pvt_data.dev, "tee_shm_alloc_kernel_buf failed\n");
> err = PTR_ERR(fw_shm_pool);
> goto out_sess;
> }
> --
> 2.31.1
>
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: Tyler Hicks <tyhicks@linux.microsoft.com>
To: Jens Wiklander <jens.wiklander@linaro.org>
Cc: linux-kernel@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
op-tee@lists.trustedfirmware.org,
Sumit Garg <sumit.garg@linaro.org>,
Herbert Xu <herbert@gondor.apana.org.au>,
Sakkinen <jarkko.sakkinen@linux.intel.com>,
Sasha Levin <sashal@kernel.org>,
Thirupathaiah Annapureddy <thiruan@microsoft.com>,
Vikas Gupta <vikas.gupta@broadcom.com>,
"David S . Miller" <davem@davemloft.net>
Subject: Re: [PATCH 6/7] firmware: tee_bnxt: use tee_shm_alloc_kernel_buf()
Date: Wed, 9 Jun 2021 09:58:11 -0500 [thread overview]
Message-ID: <20210609145811.GJ4910@sequoia> (raw)
In-Reply-To: <20210609102324.2222332-7-jens.wiklander@linaro.org>
On 2021-06-09 12:23:23, Jens Wiklander wrote:
> Uses the new simplified tee_shm_alloc_kernel_buf() function instead of
> the old deprecated tee_shm_alloc() function which required specific
> TEE_SHM-flags.
>
> Signed-off-by: Jens Wiklander <jens.wiklander@linaro.org>
Since this series is essentially a rewrite of the shm allocation logic,
it is worth pointing out that the rewrite still uses contiguous
allocations (from alloc_pages()). The tee_bnxt_fw driver is performing
an order-10 allocation which is the max, by default. I've only tested
tee_bnxt_fw when it was built-in to the kernel and tee_bnxt_fw_probe()
was called early in boot but I suspect that it might not succeed when
built as a module and loaded later after memory is segmented. I think
this driver would benefit from being able to request a non-contiguous
allocation.
Is this rewrite a good time to offer drivers a way to perform a
non-contiguous allocation?
Tyler
> ---
> drivers/firmware/broadcom/tee_bnxt_fw.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/firmware/broadcom/tee_bnxt_fw.c b/drivers/firmware/broadcom/tee_bnxt_fw.c
> index ed10da5313e8..56d00ddd4357 100644
> --- a/drivers/firmware/broadcom/tee_bnxt_fw.c
> +++ b/drivers/firmware/broadcom/tee_bnxt_fw.c
> @@ -212,10 +212,9 @@ static int tee_bnxt_fw_probe(struct device *dev)
>
> pvt_data.dev = dev;
>
> - fw_shm_pool = tee_shm_alloc(pvt_data.ctx, MAX_SHM_MEM_SZ,
> - TEE_SHM_MAPPED | TEE_SHM_DMA_BUF);
> + fw_shm_pool = tee_shm_alloc_kernel_buf(pvt_data.ctx, MAX_SHM_MEM_SZ);
> if (IS_ERR(fw_shm_pool)) {
> - dev_err(pvt_data.dev, "tee_shm_alloc failed\n");
> + dev_err(pvt_data.dev, "tee_shm_alloc_kernel_buf failed\n");
> err = PTR_ERR(fw_shm_pool);
> goto out_sess;
> }
> --
> 2.31.1
>
next prev parent reply other threads:[~2021-06-09 14:58 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-09 10:23 [PATCH 0/7] tee: shared memory updates Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 10:23 ` [PATCH 1/7] tee: remove unused tee_shm_pool_alloc_res_mem() Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 14:03 ` Tyler Hicks
2021-06-09 14:03 ` Tyler Hicks
2021-06-09 14:03 ` Tyler Hicks
2021-06-09 10:23 ` [PATCH 2/7] tee: simplify shm pool handling Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 14:50 ` Tyler Hicks
2021-06-09 14:50 ` Tyler Hicks
2021-06-09 14:50 ` Tyler Hicks
2021-06-10 9:01 ` Jens Wiklander
2021-06-10 9:01 ` Jens Wiklander
2021-06-10 9:01 ` Jens Wiklander
2021-06-09 10:23 ` [PATCH 3/7] tee: add tee_shm_alloc_kernel_buf() Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 14:51 ` Tyler Hicks
2021-06-09 14:51 ` Tyler Hicks
2021-06-09 14:51 ` Tyler Hicks
2021-06-09 10:23 ` [PATCH 4/7] hwrng: optee-rng: use tee_shm_alloc_kernel_buf() Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 14:51 ` Tyler Hicks
2021-06-09 14:51 ` Tyler Hicks
2021-06-09 14:51 ` Tyler Hicks
2021-06-09 10:23 ` [PATCH 5/7] tpm_ftpm_tee: " Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 14:53 ` Tyler Hicks
2021-06-09 14:53 ` Tyler Hicks
2021-06-09 14:53 ` Tyler Hicks
2021-06-09 10:23 ` [PATCH 6/7] firmware: tee_bnxt: " Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 14:58 ` Tyler Hicks [this message]
2021-06-09 14:58 ` Tyler Hicks
2021-06-09 14:58 ` Tyler Hicks
2021-06-10 9:08 ` Jens Wiklander
2021-06-10 9:08 ` Jens Wiklander
2021-06-10 9:08 ` Jens Wiklander
2021-06-09 10:23 ` [PATCH 7/7] tee: replace tee_shm_alloc() Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 10:23 ` Jens Wiklander
2021-06-09 15:32 ` Tyler Hicks
2021-06-09 15:32 ` Tyler Hicks
2021-06-09 15:32 ` Tyler Hicks
2021-06-09 15:38 ` Tyler Hicks
2021-06-09 15:38 ` Tyler Hicks
2021-06-09 15:38 ` Tyler Hicks
2021-06-11 7:42 ` Jens Wiklander
2021-06-11 7:42 ` Jens Wiklander
2021-06-11 7:42 ` Jens Wiklander
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=20210609145811.GJ4910@sequoia \
--to=tyhicks@linux.microsoft.com \
--cc=op-tee@lists.trustedfirmware.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 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.