[meta-arm] arm-bsp/optee-test: tc: Limit xtest to a single thread

Message ID 20220203165135.26872-1-ben.horgan@arm.com
State New
Headers show
Series [meta-arm] arm-bsp/optee-test: tc: Limit xtest to a single thread | expand

Commit Message

Ben Horgan Feb. 3, 2022, 4:51 p.m. UTC
When multiple threads are allowed xtest will fail and
leave the system in a bad state after repeated runs.

Signed-off-by: Ben Horgan <ben.horgan@arm.com>
Change-Id: I16f07df1a362540560975deaa5a291a68c332bfb
---
 ...xtest-Limit-tests-to-a-single-thread.patch | 55 +++++++++++++++++++
 .../recipes-security/optee/optee-test-tc.inc  |  7 ++-
 2 files changed, 61 insertions(+), 1 deletion(-)
 create mode 100644 meta-arm-bsp/recipes-security/optee/files/optee-test/tc/0001-xtest-Limit-tests-to-a-single-thread.patch

Comments

Jon Mason Feb. 4, 2022, 3:56 a.m. UTC | #1
On Thu, 3 Feb 2022 16:51:35 +0000, Ben Horgan wrote:
> When multiple threads are allowed xtest will fail and
> leave the system in a bad state after repeated runs.

Applied, thanks!

[1/1] arm-bsp/optee-test: tc: Limit xtest to a single thread
      commit: 4de50f4c870833a2f459b3aa194661fef993eb9d

Best regards,
Sumit Garg Feb. 4, 2022, 5:08 a.m. UTC | #2
On Thu, 3 Feb 2022 at 22:21, Ben Horgan <ben.horgan@arm.com> wrote:
>
> When multiple threads are allowed xtest will fail and
> leave the system in a bad state after repeated runs.

Interesting failure. Is it reproducible for total compute platform
only? BTW, if you observe this as a generic problem then the best
place to seek support is to raise an OP-TEE issue here [1].

[1] https://github.com/OP-TEE/optee_os/issues

-Sumit

>
> Signed-off-by: Ben Horgan <ben.horgan@arm.com>
> Change-Id: I16f07df1a362540560975deaa5a291a68c332bfb
> ---
>  ...xtest-Limit-tests-to-a-single-thread.patch | 55 +++++++++++++++++++
>  .../recipes-security/optee/optee-test-tc.inc  |  7 ++-
>  2 files changed, 61 insertions(+), 1 deletion(-)
>  create mode 100644 meta-arm-bsp/recipes-security/optee/files/optee-test/tc/0001-xtest-Limit-tests-to-a-single-thread.patch
>
> diff --git a/meta-arm-bsp/recipes-security/optee/files/optee-test/tc/0001-xtest-Limit-tests-to-a-single-thread.patch b/meta-arm-bsp/recipes-security/optee/files/optee-test/tc/0001-xtest-Limit-tests-to-a-single-thread.patch
> new file mode 100644
> index 0000000..370a81c
> --- /dev/null
> +++ b/meta-arm-bsp/recipes-security/optee/files/optee-test/tc/0001-xtest-Limit-tests-to-a-single-thread.patch
> @@ -0,0 +1,55 @@
> +From 73bef38c5697cd6bd3ddbe9046681087f4f6454e Mon Sep 17 00:00:00 2001
> +From: Ben Horgan <ben.horgan@arm.com>
> +Date: Thu, 27 Jan 2022 10:33:04 +0000
> +Subject: [PATCH] xtest: Limit tests to a single thread
> +
> +Signed-off-by: Ben Horgan <ben.horgan@arm.com>
> +Upstream-Status: Inappropriate [Workaround for intermittent failures]
> +---
> + host/xtest/regression_1000.c | 2 +-
> + host/xtest/regression_2000.c | 2 +-
> + host/xtest/regression_6000.c | 2 +-
> + 3 files changed, 3 insertions(+), 3 deletions(-)
> +
> +diff --git a/host/xtest/regression_1000.c b/host/xtest/regression_1000.c
> +index 9ee9d02..82d1def 100644
> +--- a/host/xtest/regression_1000.c
> ++++ b/host/xtest/regression_1000.c
> +@@ -1080,7 +1080,7 @@ static void *test_1013_thread(void *arg)
> +       return NULL;
> + }
> +
> +-#define NUM_THREADS 3
> ++#define NUM_THREADS 1
> +
> + static void xtest_tee_test_1013_single(ADBG_Case_t *c, double *mean_concurrency,
> +                                      const TEEC_UUID *uuid)
> +diff --git a/host/xtest/regression_2000.c b/host/xtest/regression_2000.c
> +index 0591a42..a9f4b95 100644
> +--- a/host/xtest/regression_2000.c
> ++++ b/host/xtest/regression_2000.c
> +@@ -499,7 +499,7 @@ out:
> +       return NULL;
> + }
> +
> +-#define NUM_THREADS   3
> ++#define NUM_THREADS   1
> +
> + static void xtest_tee_test_2002(ADBG_Case_t *c)
> + {
> +diff --git a/host/xtest/regression_6000.c b/host/xtest/regression_6000.c
> +index ca1c254..d67ea7f 100644
> +--- a/host/xtest/regression_6000.c
> ++++ b/host/xtest/regression_6000.c
> +@@ -1568,7 +1568,7 @@ exit:
> + }
> +
> +
> +-#define NUM_THREADS 4
> ++#define NUM_THREADS 1
> + static void xtest_tee_test_6016_loop(ADBG_Case_t *c, uint32_t storage_id)
> + {
> +       struct test_6016_thread_arg arg[NUM_THREADS] = { };
> +--
> +2.17.1
> +
> diff --git a/meta-arm-bsp/recipes-security/optee/optee-test-tc.inc b/meta-arm-bsp/recipes-security/optee/optee-test-tc.inc
> index 62fa0a0..af73675 100644
> --- a/meta-arm-bsp/recipes-security/optee/optee-test-tc.inc
> +++ b/meta-arm-bsp/recipes-security/optee/optee-test-tc.inc
> @@ -1,3 +1,8 @@
> -# TC0 specific configuration
> +# TC specific configuration
> +
> +FILESEXTRAPATHS:prepend := "${THISDIR}/files/optee-test/tc:"
> +SRC_URI:append:tc = " \
> +    file://0001-xtest-Limit-tests-to-a-single-thread.patch \
> +    "
>
>  COMPATIBLE_MACHINE = "(tc?)"
> --
> 2.17.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#2946): https://lists.yoctoproject.org/g/meta-arm/message/2946
> Mute This Topic: https://lists.yoctoproject.org/mt/88887066/1777089
> Group Owner: meta-arm+owner@lists.yoctoproject.org
> Unsubscribe: https://lists.yoctoproject.org/g/meta-arm/unsub [sumit.garg@linaro.org]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Ben Horgan Feb. 4, 2022, 9:12 a.m. UTC | #3
Thanks, currently it doesn't look like an issue with the OP-TEE.

Ben

Patch

diff --git a/meta-arm-bsp/recipes-security/optee/files/optee-test/tc/0001-xtest-Limit-tests-to-a-single-thread.patch b/meta-arm-bsp/recipes-security/optee/files/optee-test/tc/0001-xtest-Limit-tests-to-a-single-thread.patch
new file mode 100644
index 0000000..370a81c
--- /dev/null
+++ b/meta-arm-bsp/recipes-security/optee/files/optee-test/tc/0001-xtest-Limit-tests-to-a-single-thread.patch
@@ -0,0 +1,55 @@ 
+From 73bef38c5697cd6bd3ddbe9046681087f4f6454e Mon Sep 17 00:00:00 2001
+From: Ben Horgan <ben.horgan@arm.com>
+Date: Thu, 27 Jan 2022 10:33:04 +0000
+Subject: [PATCH] xtest: Limit tests to a single thread
+
+Signed-off-by: Ben Horgan <ben.horgan@arm.com>
+Upstream-Status: Inappropriate [Workaround for intermittent failures]
+---
+ host/xtest/regression_1000.c | 2 +-
+ host/xtest/regression_2000.c | 2 +-
+ host/xtest/regression_6000.c | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/host/xtest/regression_1000.c b/host/xtest/regression_1000.c
+index 9ee9d02..82d1def 100644
+--- a/host/xtest/regression_1000.c
++++ b/host/xtest/regression_1000.c
+@@ -1080,7 +1080,7 @@ static void *test_1013_thread(void *arg)
+ 	return NULL;
+ }
+ 
+-#define NUM_THREADS 3
++#define NUM_THREADS 1
+ 
+ static void xtest_tee_test_1013_single(ADBG_Case_t *c, double *mean_concurrency,
+ 				       const TEEC_UUID *uuid)
+diff --git a/host/xtest/regression_2000.c b/host/xtest/regression_2000.c
+index 0591a42..a9f4b95 100644
+--- a/host/xtest/regression_2000.c
++++ b/host/xtest/regression_2000.c
+@@ -499,7 +499,7 @@ out:
+ 	return NULL;
+ }
+ 
+-#define NUM_THREADS	3
++#define NUM_THREADS	1
+ 
+ static void xtest_tee_test_2002(ADBG_Case_t *c)
+ {
+diff --git a/host/xtest/regression_6000.c b/host/xtest/regression_6000.c
+index ca1c254..d67ea7f 100644
+--- a/host/xtest/regression_6000.c
++++ b/host/xtest/regression_6000.c
+@@ -1568,7 +1568,7 @@ exit:
+ }
+ 
+ 
+-#define NUM_THREADS 4
++#define NUM_THREADS 1
+ static void xtest_tee_test_6016_loop(ADBG_Case_t *c, uint32_t storage_id)
+ {
+ 	struct test_6016_thread_arg arg[NUM_THREADS] = { };
+-- 
+2.17.1
+
diff --git a/meta-arm-bsp/recipes-security/optee/optee-test-tc.inc b/meta-arm-bsp/recipes-security/optee/optee-test-tc.inc
index 62fa0a0..af73675 100644
--- a/meta-arm-bsp/recipes-security/optee/optee-test-tc.inc
+++ b/meta-arm-bsp/recipes-security/optee/optee-test-tc.inc
@@ -1,3 +1,8 @@ 
-# TC0 specific configuration
+# TC specific configuration
+
+FILESEXTRAPATHS:prepend := "${THISDIR}/files/optee-test/tc:"
+SRC_URI:append:tc = " \
+    file://0001-xtest-Limit-tests-to-a-single-thread.patch \
+    "
 
 COMPATIBLE_MACHINE = "(tc?)"