imx8MPLUS-BB 開発ボードで optee をインストールし、xtest を実行すると、以下のエラーが発生します。
その後、r = ADBG_EXPECT_TEEC_RESULT(c, TEEC_ERROR_SECURITY, res) を r = ADBG_EXPECT_TEEC_RESULT(c, TEEC_ERROR_GENERIC, res) に変更したところ、次の問題が再び発生しました。
とても混乱していて、解決方法がわかりません
よろしくお願いします!
古いスレッドなので、おそらくもう答えは気にしないかもしれませんが、他の人も同じ問題を抱えてこの投稿に出会うかもしれません。
私の場合、別のソフトウェア リビジョンに切り替えると問題が解決するようです。optee-os と x-test 6.6.52-2.2.0 ("4.4.0")を使用していたとき、テストはあなたが示したのと同じ方法で失敗しました。optee-os および x-test 6.12.49-2.2.0 ("4.8.0")では、この問題は再現されなくなりました。
最初から構築する場合は、optee と x-test の NXP github リポジトリを使用することを忘れないでください。
どのバージョンの BSP を使用していますか?
実際、これは私の問題を修正したコミットです (6.12 には存在しますが、6.6 には存在しません)。
commit c6c7967f74d4c6267750b3ff42067c004f8cad33
Author: Jens Wiklander
Date: Fri Dec 13 10:01:33 2024 +0100
core: pta: secstore: decrease TA buffer
install_ta() uses a buffer allocated from the heap while hashing a TA
while installing it. The buffer size is 8kB which is a bit large to
reliably allocate from the heap, so decrease it to 1kB.
Signed-off-by: Jens Wiklander
Acked-by: Jerome Forissier
Reviewed-by: Etienne Carriere
diff --git a/core/pta/secstor_ta_mgmt.c b/core/pta/secstor_ta_mgmt.c
index 162de43be..b8dc9283c 100644
--- a/core/pta/secstor_ta_mgmt.c
+++ b/core/pta/secstor_ta_mgmt.c
@@ -44,7 +44,7 @@ static TEE_Result install_ta(struct shdr *shdr, const uint8_t *nw,
struct tee_tadb_ta_write *ta;
void *hash_ctx = NULL;
size_t offs;
- const size_t buf_size = 2 * 4096;
+ const size_t buf_size = 1024;
void *buf;
struct tee_tadb_property property;
struct shdr_bootstrap_ta bs_ta;