When a message queue is configured from the stack, that main function
must never return -- otherwise, during sched_task_exit (which the
thread's function "returns" to), message senders might still send
messages into already freed stack space (which would be reused by
sched_task_exit).
Co-authored-by: Marian Buschsieweke <maribu@users.noreply.github.com>
Add ATmega328P Xplained Mini board. The board is an official
development kit from MCHP based on the Arduino UNO, reduced
hardware, with a xplainedmini debugger and CDC ACM serial
converter.
Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
As suggested by @kaspar030 the THREAD_CREATE_WOUT_YIELD flag was removed.
Now the sequence of output lines is identical in two cases: stdio via UART,
and stdio via CDC ACM (which needs a thread for that).
The expects have been changed to match the new situation, which is what
was already given in the CDC ACM case.
- Define test_utils_interactive_sync as DEFAULT_MODULE in Makefile.tests_common
- For tests disabling autoinit, add test_utils_interactive_sync to main
- Add DISABLE_MODULE += test_utils_interactive_sync for tests requiring
sudo, `tests/shell`, `tests/minimal` and `tests/stdin`
- Add shell_commands to tests/periph_wdt and tests/struct_tm_utility to
pull `r` and `s` commands
- Remove includes and usage in `tests/main.c` for tests that where
already using test_utils_interactive_sync
Previously, there was a very tight allowed margin (100us), then some
special cases for platforms for which the test would otherwise fail,
increasing the margin.
This turned out to be a maintanance burden, as each slightly special
board needed a PR adding the special case.
This commit sets a quite large margin (1000us, 0.1% of total delay),
which should be large enough to not trip over platform-induced timer
inaccuracies, but still verify that the module is using timers
correctly.
(This is not a timer accuracy test.)
Update the test as sem_timedwait is not supposed to return before the
given abstime.
Source: http://pubs.opengroup.org/onlinepubs/9699919799.2016edition/functions/sem_timedwait.html
The timeout shall expire when the absolute time specified by abstime
passes, as measured by the clock on which timeouts are based (that is,
when the value of that clock equals or exceeds abstime), or if the
absolute time specified by abstime has already been passed at the time
of the call.
Added arduino-nano to BOARD_INSUFFICIENT_MEMORY/BOARD_BLACKLIST following suit
of how arduino-uno is marked, as arduino-nano is mostly an Uno in a different
form factor.
While trying python test libraries, like pytest, the automatic test collection
detects the `testNUM` functions as tests but does not know the `term` argument
and fails.
This declares them as private to only find `testfunc(child)` entry point.
Another solution could have been to use `testNUM(child)` and rename
`testfunc` to `main` but would not match other tests.