esp-idf/tools/test_apps/linux_compatible/linux_freertos
Darian Leung 57eb41ce83 refactor(freertos): Call TLSP deletion callback from portCLEAN_UP_TCB()
Previously, TLSP deletion callbacks were...

- Stored in a seprate TCB member "pvThreadLocalStoragePointersDelCallback"
- Called separately via multipole prvDeleteTLS() insertions in tasks.c

This commit refactors how TLSP deletion callbacks are stored and called:

- TLSP deletion callbacks are now stored in "pvThreadLocalStoragePointers"
directly. configNUM_THREAD_LOCAL_STORAGE_POINTERS is doubled in size so that
the deletion callbacks are stored in the latter half of the array

- The callbacks are now called via "portCLEAN_UP_TCB()". As such, the
prvDeleteTLS() additions are no longer needed and the function can be removed

- Removed some legacy TLSP tests using the old method of storing the callback
pointers.

This commit reduces the source code diff between IDF FreeRTOS and upstream
vanilla FreeRTOS, in preparation for v10.5.1 upgrade.
2023-08-24 19:32:06 +08:00
..
components/kernel_tests refactor(freertos): Call TLSP deletion callback from portCLEAN_UP_TCB() 2023-08-24 19:32:06 +08:00
main freertos: Added partial unit tests for Linux simulator 2023-04-25 13:58:57 +08:00
CMakeLists.txt freertos: Added partial unit tests for Linux simulator 2023-04-25 13:58:57 +08:00
README.md freertos: Added partial unit tests for Linux simulator 2023-04-25 13:58:57 +08:00
pytest_linux_freertos.py ci: increased freertos SMP linux target test timeout 2023-04-28 17:49:37 +08:00
sdkconfig.defaults freertos: Added partial unit tests for Linux simulator 2023-04-25 13:58:57 +08:00

README.md

Supported Targets Linux

Simple test application for SMP Linux port

Note that the IDF version of the FreeRTOS POSIX/Linux simulator is not tested here, that one is merely the upstream version.

Build

idf.py --preview set-target linux

Amazon FReeRTOS SMP configuration is already set via sdkconfig.defaults, no need to configure.

idf.py build

Run

idf.py monitor

After the test output, input: ![ignore] to not run the ignored test