Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mbedmicro-rtos-mbed tests : reduce memory consumption #4890

Closed
wants to merge 3 commits into from

Conversation

jeromecoutant
Copy link
Collaborator

Description

Hi
This proposition doesn't affect test goal.
It only reduces memory consumption
Thx

Status

READY

@Nodraak
Copy link
Contributor

Nodraak commented Aug 11, 2017

Just a random suggestion: IMO Thread t(osPriorityNormal, THREAD_STACK_SIZE); is a little verbose, wouldn't it be possible to use C++'s polymorphisme to allow Thread t(THREAD_STACK_SIZE);?

Copy link
Contributor

@0xc0170 0xc0170 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To help reviewing this change, would be beneficial to provide more information for each changeset.

malloc test - how does number 2 affect the tests? same as 5?

How was this tested?

@jeromecoutant
Copy link
Collaborator Author

Hi

malloc test - how does number 2 affect the tests? same as 5?

This is the number of parallel thread in the test.
Reducing this number still verify the thread capability and it allows "small" targets to be checked.

How was this tested?

malloc test is currently FAILED for NUCLEO_F070RB and NUCLEO_F072RB only with GCC.
Test is OK with patches.

@0xc0170
Copy link
Contributor

0xc0170 commented Aug 16, 2017

@bulislaw @c1728p9 Please review

Copy link
Member

@bulislaw bulislaw left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, I don't think we were making a difference tasting more threads anyway.

@@ -21,7 +21,7 @@
#error [NOT_SUPPORTED] test not supported
#endif

#define NUM_THREADS 5
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The large number of threads was specifically chosen to help this test catch race conditions faster and more reliably. When I was testing this with only 2 threads, race conditions wouldn't reliably get caught in the 15 seconds the test ran for. If you want to reduce the number of threads then you'll probably need to increase the test time.

You can verify this test is working by temporarily removing the malloc locks (__malloc_lock and __malloc_unlock) in platform/mbed_retarget.cpp and running this test and waiting for a failure. You should be able to run this test a couple of times with two threads to get the mean time to failure. From that you could then adjust the test time accordingly.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi
I'm back...
Temp test done (removing malloc locks): either test is failing before first LED blink, either test is OK whatever the duration...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Keep us updated (as we understand the test is failing?)

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New commit done.
Test report added.

Copy link
Contributor

@maciejbocianski maciejbocianski Oct 18, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It can be fix in other way than thread number reduction, by removing extraneous heap allocations (by statically allocation of threads stack). PR #5338

...
uint8_t stack[THREAD_STACK_SIZE * NUM_THREADS];
...
// Allocate threads for the test
for (int i = 0; i < NUM_THREADS; i++) {
    thread_list[i] = new Thread(osPriorityNormal, THREAD_STACK_SIZE, stack + i * THREAD_STACK_SIZE);

@0xc0170
Copy link
Contributor

0xc0170 commented Sep 4, 2017

@jeromecoutant Any update for this patch?

@jeromecoutant
Copy link
Collaborator Author

Test results with small OS5 STM32 targets:

  | target | platform_name | test suite | result | elapsed_time (sec) | copy_method
  | DISCO_L072CZ_LRWAN1-ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-basic | OK | 228.48 | default
  | DISCO_L072CZ_LRWAN1-ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-event_flags | OK | 220.41 | default
  | DISCO_L072CZ_LRWAN1-ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-isr | OK | 224.17 | default
  | DISCO_L072CZ_LRWAN1-ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-mail | OK | 217.79 | default
  | DISCO_L072CZ_LRWAN1-ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-malloc | OK | 249.6 | default
  | DISCO_L072CZ_LRWAN1-ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-mutex | OK | 223.97 | default
  | DISCO_L072CZ_LRWAN1-ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-queue | OK | 220.75 | default
  | DISCO_L072CZ_LRWAN1-ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-semaphore | OK | 226.14 | default
  | DISCO_L072CZ_LRWAN1-ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-signals | OK | 222.25 | default
  | DISCO_L072CZ_LRWAN1-ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-threads | OK | 232.89 | default
  | DISCO_L072CZ_LRWAN1-GCC_ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-basic | OK | 231.11 | default
  | DISCO_L072CZ_LRWAN1-GCC_ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-event_flags | OK | 224.23 | default
  | DISCO_L072CZ_LRWAN1-GCC_ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-isr | OK | 224.64 | default
  | DISCO_L072CZ_LRWAN1-GCC_ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-mail | OK | 221.33 | default
  | DISCO_L072CZ_LRWAN1-GCC_ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-malloc | OK | 249.61 | default
  | DISCO_L072CZ_LRWAN1-GCC_ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-mutex | OK | 223.48 | default
  | DISCO_L072CZ_LRWAN1-GCC_ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-queue | OK | 224.31 | default
  | DISCO_L072CZ_LRWAN1-GCC_ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-semaphore | OK | 225.22 | default
  | DISCO_L072CZ_LRWAN1-GCC_ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-signals | OK | 226.24 | default
  | DISCO_L072CZ_LRWAN1-GCC_ARM | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-threads | OK | 232.13 | default
  | DISCO_L072CZ_LRWAN1-IAR | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-basic | OK | 230.75 | default
  | DISCO_L072CZ_LRWAN1-IAR | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-event_flags | OK | 223.5 | default
  | DISCO_L072CZ_LRWAN1-IAR | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-isr | OK | 224.72 | default
  | DISCO_L072CZ_LRWAN1-IAR | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-mail | OK | 219.69 | default
  | DISCO_L072CZ_LRWAN1-IAR | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-malloc | OK | 248.44 | default
  | DISCO_L072CZ_LRWAN1-IAR | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-mutex | OK | 224.05 | default
  | DISCO_L072CZ_LRWAN1-IAR | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-queue | OK | 223.14 | default
  | DISCO_L072CZ_LRWAN1-IAR | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-semaphore | OK | 224.61 | default
  | DISCO_L072CZ_LRWAN1-IAR | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-signals | OK | 223.83 | default
  | DISCO_L072CZ_LRWAN1-IAR | DISCO_L072CZ_LRWAN1 | tests-mbedmicro-rtos-mbed-threads | OK | 231.19 | default
  | NUCLEO_L073RZ-ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-basic | OK | 255.14 | default
  | NUCLEO_L073RZ-ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-event_flags | OK | 248.66 | default
  | NUCLEO_L073RZ-ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-isr | OK | 249.0 | default
  | NUCLEO_L073RZ-ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-mail | OK | 246.48 | default
  | NUCLEO_L073RZ-ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-malloc | OK | 272.37 | default
  | NUCLEO_L073RZ-ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-mutex | OK | 249.3 | default
  | NUCLEO_L073RZ-ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-queue | OK | 248.16 | default
  | NUCLEO_L073RZ-ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-semaphore | OK | 250.19 | default
  | NUCLEO_L073RZ-ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-signals | OK | 249.27 | default
  | NUCLEO_L073RZ-ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-threads | OK | 258.63 | default
  | NUCLEO_L073RZ-GCC_ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-basic | OK | 256.29 | default
  | NUCLEO_L073RZ-GCC_ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-event_flags | OK | 250.69 | default
  | NUCLEO_L073RZ-GCC_ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-isr | OK | 250.71 | default
  | NUCLEO_L073RZ-GCC_ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-mail | OK | 247.71 | default
  | NUCLEO_L073RZ-GCC_ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-malloc | OK | 275.03 | default
  | NUCLEO_L073RZ-GCC_ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-mutex | OK | 249.33 | default
  | NUCLEO_L073RZ-GCC_ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-queue | OK | 249.33 | default
  | NUCLEO_L073RZ-GCC_ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-semaphore | OK | 250.75 | default
  | NUCLEO_L073RZ-GCC_ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-signals | OK | 251.42 | default
  | NUCLEO_L073RZ-GCC_ARM | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-threads | OK | 258.85 | default
  | NUCLEO_L073RZ-IAR | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-basic | OK | 254.82 | default
  | NUCLEO_L073RZ-IAR | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-event_flags | OK | 248.71 | default
  | NUCLEO_L073RZ-IAR | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-isr | OK | 247.85 | default
  | NUCLEO_L073RZ-IAR | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-mail | OK | 244.9 | default
  | NUCLEO_L073RZ-IAR | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-malloc | OK | 273.54 | default
  | NUCLEO_L073RZ-IAR | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-mutex | OK | 250.1 | default
  | NUCLEO_L073RZ-IAR | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-queue | OK | 245.68 | default
  | NUCLEO_L073RZ-IAR | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-semaphore | OK | 249.4 | default
  | NUCLEO_L073RZ-IAR | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-signals | OK | 248.54 | default
  | NUCLEO_L073RZ-IAR | NUCLEO_L073RZ | tests-mbedmicro-rtos-mbed-threads | OK | 257.59 | default
  | NUCLEO_F070RB-ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-basic | OK | 303.03 | default
  | NUCLEO_F070RB-ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-event_flags | OK | 295.57 | default
  | NUCLEO_F070RB-ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-isr | OK | 298.43 | default
  | NUCLEO_F070RB-ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-mail | OK | 293.59 | default
  | NUCLEO_F070RB-ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-malloc | OK | 323.66 | default
  | NUCLEO_F070RB-ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-mutex | OK | 297.95 | default
  | NUCLEO_F070RB-ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-queue | OK | 298.0 | default
  | NUCLEO_F070RB-ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-semaphore | OK | 297.07 | default
  | NUCLEO_F070RB-ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-signals | OK | 298.32 | default
  | NUCLEO_F070RB-ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-threads | OK | 304.81 | default
  | NUCLEO_F070RB-GCC_ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-basic | OK | 305.76 | default
  | NUCLEO_F070RB-GCC_ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-event_flags | OK | 304.14 | default
  | NUCLEO_F070RB-GCC_ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-isr | OK | 297.52 | default
  | NUCLEO_F070RB-GCC_ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-mail | OK | 296.32 | default
  | NUCLEO_F070RB-GCC_ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-malloc | OK | 324.33 | default
  | NUCLEO_F070RB-GCC_ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-mutex | OK | 296.69 | default
  | NUCLEO_F070RB-GCC_ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-queue | OK | 298.13 | default
  | NUCLEO_F070RB-GCC_ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-semaphore | OK | 301.17 | default
  | NUCLEO_F070RB-GCC_ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-signals | OK | 299.81 | default
  | NUCLEO_F070RB-GCC_ARM | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-threads | OK | 308.88 | default
  | NUCLEO_F070RB-IAR | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-basic | OK | 305.31 | default
  | NUCLEO_F070RB-IAR | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-event_flags | OK | 297.26 | default
  | NUCLEO_F070RB-IAR | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-isr | OK | 299.1 | default
  | NUCLEO_F070RB-IAR | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-mail | OK | 295.1 | default
  | NUCLEO_F070RB-IAR | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-malloc | OK | 323.89 | default
  | NUCLEO_F070RB-IAR | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-mutex | OK | 298.96 | default
  | NUCLEO_F070RB-IAR | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-queue | OK | 295.13 | default
  | NUCLEO_F070RB-IAR | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-semaphore | OK | 299.13 | default
  | NUCLEO_F070RB-IAR | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-signals | OK | 298.82 | default
  | NUCLEO_F070RB-IAR | NUCLEO_F070RB | tests-mbedmicro-rtos-mbed-threads | OK | 307.51 | default
  | NUCLEO_F072RB-ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-basic | OK | 303.53 | default
  | NUCLEO_F072RB-ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-event_flags | OK | 297.6 | default
  | NUCLEO_F072RB-ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-isr | OK | 297.89 | default
  | NUCLEO_F072RB-ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-mail | OK | 306.77 | default
  | NUCLEO_F072RB-ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-malloc | OK | 323.68 | default
  | NUCLEO_F072RB-ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-mutex | OK | 298.82 | default
  | NUCLEO_F072RB-ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-queue | OK | 297.13 | default
  | NUCLEO_F072RB-ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-semaphore | OK | 299.42 | default
  | NUCLEO_F072RB-ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-signals | OK | 298.24 | default
  | NUCLEO_F072RB-ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-threads | OK | 305.43 | default
  | NUCLEO_F072RB-GCC_ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-basic | OK | 305.16 | default
  | NUCLEO_F072RB-GCC_ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-event_flags | OK | 298.25 | default
  | NUCLEO_F072RB-GCC_ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-isr | OK | 298.29 | default
  | NUCLEO_F072RB-GCC_ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-mail | OK | 295.99 | default
  | NUCLEO_F072RB-GCC_ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-malloc | OK | 323.39 | default
  | NUCLEO_F072RB-GCC_ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-mutex | OK | 298.64 | default
  | NUCLEO_F072RB-GCC_ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-queue | OK | 296.04 | default
  | NUCLEO_F072RB-GCC_ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-semaphore | OK | 299.0 | default
  | NUCLEO_F072RB-GCC_ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-signals | OK | 299.0 | default
  | NUCLEO_F072RB-GCC_ARM | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-threads | OK | 307.15 | default
  | NUCLEO_F072RB-IAR | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-basic | OK | 304.28 | default
  | NUCLEO_F072RB-IAR | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-event_flags | OK | 298.04 | default
  | NUCLEO_F072RB-IAR | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-isr | OK | 298.22 | default
  | NUCLEO_F072RB-IAR | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-mail | OK | 293.9 | default
  | NUCLEO_F072RB-IAR | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-malloc | OK | 320.35 | default
  | NUCLEO_F072RB-IAR | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-mutex | OK | 296.93 | default
  | NUCLEO_F072RB-IAR | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-queue | OK | 296.9 | default
  | NUCLEO_F072RB-IAR | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-semaphore | OK | 298.19 | default
  | NUCLEO_F072RB-IAR | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-signals | OK | 298.89 | default
  | NUCLEO_F072RB-IAR | NUCLEO_F072RB | tests-mbedmicro-rtos-mbed-threads | OK | 302.58 | default
  | NUCLEO_F091RC-ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-basic | OK | 304.42 | default
  | NUCLEO_F091RC-ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-event_flags | OK | 297.01 | default
  | NUCLEO_F091RC-ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-isr | OK | 295.9 | default
  | NUCLEO_F091RC-ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-mail | OK | 292.58 | default
  | NUCLEO_F091RC-ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-malloc | OK | 321.02 | default
  | NUCLEO_F091RC-ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-mutex | OK | 297.13 | default
  | NUCLEO_F091RC-ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-queue | OK | 296.55 | default
  | NUCLEO_F091RC-ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-semaphore | OK | 299.03 | default
  | NUCLEO_F091RC-ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-signals | OK | 297.16 | default
  | NUCLEO_F091RC-ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-threads | OK | 304.17 | default
  | NUCLEO_F091RC-GCC_ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-basic | OK | 304.66 | default
  | NUCLEO_F091RC-GCC_ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-event_flags | OK | 298.27 | default
  | NUCLEO_F091RC-GCC_ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-isr | OK | 299.18 | default
  | NUCLEO_F091RC-GCC_ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-mail | OK | 296.72 | default
  | NUCLEO_F091RC-GCC_ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-malloc | OK | 324.06 | default
  | NUCLEO_F091RC-GCC_ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-mutex | OK | 298.5 | default
  | NUCLEO_F091RC-GCC_ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-queue | OK | 298.75 | default
  | NUCLEO_F091RC-GCC_ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-semaphore | OK | 300.3 | default
  | NUCLEO_F091RC-GCC_ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-signals | OK | 305.39 | default
  | NUCLEO_F091RC-GCC_ARM | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-threads | OK | 307.61 | default
  | NUCLEO_F091RC-IAR | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-basic | OK | 302.78 | default
  | NUCLEO_F091RC-IAR | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-event_flags | OK | 296.63 | default
  | NUCLEO_F091RC-IAR | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-isr | OK | 297.35 | default
  | NUCLEO_F091RC-IAR | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-mail | OK | 291.67 | default
  | NUCLEO_F091RC-IAR | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-malloc | OK | 322.22 | default
  | NUCLEO_F091RC-IAR | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-mutex | OK | 294.49 | default
  | NUCLEO_F091RC-IAR | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-queue | OK | 295.62 | default
  | NUCLEO_F091RC-IAR | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-semaphore | OK | 297.66 | default
  | NUCLEO_F091RC-IAR | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-signals | OK | 295.57 | default
  | NUCLEO_F091RC-IAR | NUCLEO_F091RC | tests-mbedmicro-rtos-mbed-threads | OK | 303.34 | default

@0xc0170
Copy link
Contributor

0xc0170 commented Sep 26, 2017

/morph test

@mbed-bot
Copy link

Result: FAILURE

Your command has finished executing! Here's what you wrote!

/morph test

Output

mbed Build Number: 1388

Test failed!

@0xc0170
Copy link
Contributor

0xc0170 commented Sep 26, 2017

@jeromecoutant This caused a regression for 2 platforms:

NRF51_DK-GCC_ARM.tests-mbedmicro-rtos-mbed-threads.Testing single thread with murder
KL46Z-GCC_ARM.tests-mbedmicro-rtos-mbed-threads.Testing single thread with murder

They result in timeout

@jeromecoutant
Copy link
Collaborator Author

This caused a regression for 2 platforms:
NRF51_DK-GCC_ARM.tests-mbedmicro-rtos-mbed-threads.Testing single thread with murder
KL46Z-GCC_ARM.tests-mbedmicro-rtos-mbed-threads.Testing single thread with murder

OK, the only impact I can see for the threads test is the thread size as I have reduced it from 768 to 512.

Can I propose patch like:

#if defined(TARGET_NUCLEO_F070RB) || defined(TARGET_NUCLEO_F072RB)
#define THREAD_STACK_SIZE 512
#else
#define THREAD_STACK_SIZE 768
#endif

@c1728p9

@0xc0170
Copy link
Contributor

0xc0170 commented Oct 2, 2017

Please review again, the code was updated. The test case now includes the proposal that was shared in the previous msg above.

@@ -25,7 +25,11 @@
#error [NOT_SUPPORTED] test not supported
#endif

#if defined(TARGET_NUCLEO_F070RB) || defined(TARGET_NUCLEO_F072RB)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The rest of changes are fine. I am not certain about this. Are we expecting to have here ifdef for varios targets .

There is not 2x768bytes available for these 2 targets?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants