public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: Uladzimir Bely <ubely@ilbers.de>
To: Jan Kiszka <jan.kiszka@siemens.com>,
	isar-users <isar-users@googlegroups.com>
Cc: Bao Cheng Su <baocheng.su@siemens.com>
Subject: Re: [PATCH v3 11/11] optee-ftpm-stm32mp15x: Add patch to fix parallel build issues
Date: Fri, 28 Jul 2023 11:58:31 +0300	[thread overview]
Message-ID: <87bbd28858624e7f8afec2470ae586140de31734.camel@ilbers.de> (raw)
In-Reply-To: <cbcc5169dd4e3f50fa35364d3574aa00adb9a056.1689872892.git.jan.kiszka@siemens.com>

On Thu, 2023-07-20 at 19:08 +0200, 'Jan Kiszka' via isar-users wrote:
> From: Jan Kiszka <jan.kiszka@siemens.com>
> 
> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> ---
>  .../0001-Fix-parallel-build-of-optee_ta.patch | 45
> +++++++++++++++++++
>  .../optee-ftpm-stm32mp15x_0~230316+git.bb     |  1 +
>  2 files changed, 46 insertions(+)
>  create mode 100644 meta-isar/recipes-bsp/optee-ftpm/files/0001-Fix-
> parallel-build-of-optee_ta.patch
> 
> diff --git a/meta-isar/recipes-bsp/optee-ftpm/files/0001-Fix-
> parallel-build-of-optee_ta.patch b/meta-isar/recipes-bsp/optee-
> ftpm/files/0001-Fix-parallel-build-of-optee_ta.patch
> new file mode 100644
> index 00000000..4ee20f41
> --- /dev/null
> +++ b/meta-isar/recipes-bsp/optee-ftpm/files/0001-Fix-parallel-build-
> of-optee_ta.patch
> @@ -0,0 +1,45 @@
> +From ff34f1a64bd5dbc83df26cfc8e74478f854a0acf Mon Sep 17 00:00:00
> 2001
> +From: Jan Kiszka <jan.kiszka@siemens.com>
> +Date: Thu, 20 Jul 2023 16:32:26 +0200
> +Subject: [PATCH] Fix parallel build of optee_ta
> +
> +The symlink must be established prio to building any of the source
> files
> +of WolfSSL, or things will fail:
> +
> +       TA_CROSS_COMPILE= \
> +       TA_CPU=cortex-a7 \
> +       TA_DEV_KIT_DIR=/usr/lib/optee-os/stm32mp15x/export-ta_arm32 \
> +       CFG_TEE_TA_LOG_LEVEL=2 \
> +       CFG_FTPM_USE_WOLF=y \
> +       /usr/bin/make -j 24
> +make[2]: Entering directory '/<<PKGBUILDDIR>>/Samples/ARM32-
> FirmwareTPM/optee_ta'
> +/usr/bin/make -C fTPM CROSS_COMPILE=
> +make[3]: Entering directory '/<<PKGBUILDDIR>>/Samples/ARM32-
> FirmwareTPM/optee_ta/fTPM'
> +Checking symlink to the TPM folder: /<<PKGBUILDDIR>>
> +Checking symlink to the WolfSSL folder:
> /<<PKGBUILDDIR>>/external/wolfssl
> +Establishing symlink.
> +  CC      ../out/fTPM/platform/Cancel.o
> +Establishing symlink.
> +  CC      ../out/fTPM/platform/AdminPPI.o
> +  CC      ../out/fTPM/platform/Entropy.o
> +make[3]: *** No rule to make target
> 'lib/wolf/wolf_symlink/wolfcrypt/src/aes.c', needed by
> '../out/fTPM/./lib/wolf/wolf_symlink/wolfcrypt/src/aes.o'.  Stop.
> +make[3]: *** Waiting for unfinished jobs....
> +
> +Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
> +---
> + Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/wolf/sub.mk | 2 ++
> + 1 file changed, 2 insertions(+)
> +
> +diff --git a/Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/wolf/sub.mk
> b/Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/wolf/sub.mk
> +index 0a43f46..eb239e3 100644
> +--- a/Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/wolf/sub.mk
> ++++ b/Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/wolf/sub.mk
> +@@ -56,3 +56,5 @@ srcs-y += wolf_symlink/wolfcrypt/src/tfm.c
> + srcs-y += wolf_symlink/wolfcrypt/src/wolfmath.c
> + srcs-y += wolf_symlink/wolfcrypt/src/des3.c
> + srcs-y += wolf_symlink/wolfcrypt/src/random.c
> ++
> ++$(srcs-y): wolf_symlink
> +-- 
> +2.35.3
> +
> diff --git a/meta-isar/recipes-bsp/optee-ftpm/optee-ftpm-
> stm32mp15x_0~230316+git.bb b/meta-isar/recipes-bsp/optee-ftpm/optee-
> ftpm-stm32mp15x_0~230316+git.bb
> index 441bc4ac..c92620e1 100644
> --- a/meta-isar/recipes-bsp/optee-ftpm/optee-ftpm-
> stm32mp15x_0~230316+git.bb
> +++ b/meta-isar/recipes-bsp/optee-ftpm/optee-ftpm-
> stm32mp15x_0~230316+git.bb
> @@ -12,6 +12,7 @@ SRC_URI += " \
>     
> https://github.com/Microsoft/ms-tpm-20-ref/archive/${SRCREV}.tar.gz \
>     
> https://github.com/wolfSSL/wolfssl/archive/${SRCREV-wolfssl}.tar.gz;name=wolfssl
>  \
>      file://0001-add-enum-to-ta-flags.patch \
> +    file://0001-Fix-parallel-build-of-optee_ta.patch \
>      "
>  
>  SRCREV = "f74c0d9686625c02b0fdd5b2bbe792a22aa96cb6"
> -- 
> 2.35.3
> 

Found easy way to reproduce the issue with local build. Need to just
add small delay before symlink creation like:

diff --git a/Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/tpm/sub.mk
b/Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/tpm/sub.mk
index 68bdfe2..a3ddade 100644
--- a/Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/tpm/sub.mk
+++ b/Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/tpm/sub.mk
@@ -45,7 +45,8 @@ endif
 	then \
 	echo Symlink already established ; \
 	else \
-	echo Establishing symlink. ; \
+	echo Establishing symlink $@. ; \
+	sleep 1 ; \
 	ln -s ../../$(TPM_ROOT) ./lib/tpm/tpm_symlink; \
 	fi
 
diff --git a/Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/wolf/sub.mk
b/Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/wolf/sub.mk
index 0a43f46..44deafd 100644
--- a/Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/wolf/sub.mk
+++ b/Samples/ARM32-FirmwareTPM/optee_ta/fTPM/lib/wolf/sub.mk
@@ -30,7 +30,8 @@ cflags-y += $(WOLF_SSL_FLAGS)
$(WOLF_WARNING_SUPPRESS)
 	then \
 	echo Symlink already established ; \
 	else \
-	echo Establishing symlink. ; \
+	echo Establishing symlink $@. ; \
+	sleep 1 ; \
 	ln -s ../../$(WOLF_ROOT) ./lib/wolf/wolf_symlink; \
 	fi
 
If makefile dependencies were OK, it would not lead to the issue. But
it is...

And, things like adding `+$(srcs-y): wolf_symlink` don't work.


      parent reply	other threads:[~2023-07-28  8:58 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-20 17:08 [PATCH v3 00/11] Fixes, cleanups and updates for OP-TEE and TAs Jan Kiszka
2023-07-20 17:08 ` [PATCH v3 01/11] optee-client: Add missing runtime dependency Jan Kiszka
2023-07-20 17:08 ` [PATCH v3 02/11] optee-client: Unbind ftpm, rather than remove its driver Jan Kiszka
2023-07-20 17:08 ` [PATCH v3 03/11] optee-examples-stm32mp15x: Fix parsing error for non-stm32mp15x machines Jan Kiszka
2023-07-20 17:08 ` [PATCH v3 04/11] linux-mainline: Add fTPM support Jan Kiszka
2023-07-25 13:43   ` Uladzimir Bely
2023-07-26  8:31     ` Uladzimir Bely
2023-07-26  9:32       ` Jan Kiszka
2023-07-27  7:07         ` Uladzimir Bely
2023-07-20 17:08 ` [PATCH v3 05/11] initramfs-tee-{ftpm,supplicant}-hook: Move sync loop to ftpm-hook Jan Kiszka
2023-07-20 17:08 ` [PATCH v3 06/11] initramfs-tee-supplicant-hook: Account for modular optee Jan Kiszka
2023-07-20 17:08 ` [PATCH v3 07/11] initramfs-tee-ftpm-hook: Lift timeout to 30 s Jan Kiszka
2023-07-20 17:08 ` [PATCH v3 08/11] Drop stm32mp15x-initramfs in favor of image enabling Jan Kiszka
2023-07-20 17:08 ` [PATCH v3 09/11] optee-ftpm-stm32mp15x: Recipe cleanups Jan Kiszka
2023-07-20 17:08 ` [PATCH v3 10/11] optee-ftpm-stm32mp15x: Update WolfSSL to 5.6.3 Jan Kiszka
2023-07-20 17:08 ` [PATCH v3 11/11] optee-ftpm-stm32mp15x: Add patch to fix parallel build issues Jan Kiszka
2023-07-27  7:13   ` Uladzimir Bely
2023-07-28  8:58   ` Uladzimir Bely [this message]

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=87bbd28858624e7f8afec2470ae586140de31734.camel@ilbers.de \
    --to=ubely@ilbers.de \
    --cc=baocheng.su@siemens.com \
    --cc=isar-users@googlegroups.com \
    --cc=jan.kiszka@siemens.com \
    /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