38afa32cfb
This commit backports vTaskDelete() behavior from FreeRTOS v9.0.0 which allows for the immediate freeing of task memory if the task being deleted is not currently running and not pinned to the other core. This commit also fixes a bug in prvCheckTasksWaitingTermination which prevented the Idle Task from cleaning up all tasks awaiting deletion. Each iteration of the Idle Task should traverse the xTasksWaitingTermination list and clean up all tasks not pinned to the other core. The previous implementation would cause prvCheckTasksWaitingTermination to return when encountering a task pinned to the other core whilst traversing the xTasksWaitingTermination list. The test case for vTaskDelete() has been updated to test for the bugfix and backported deletion behavior. |
||
---|---|---|
.. | ||
include/freertos | ||
test | ||
component.mk | ||
croutine.c | ||
event_groups.c | ||
FreeRTOS-openocd.c | ||
Kconfig | ||
license.txt | ||
list.c | ||
port.c | ||
portasm.S | ||
portmux_impl.h | ||
queue.c | ||
readme_xtensa.txt | ||
ringbuf.c | ||
stdint.readme | ||
tasks.c | ||
timers.c | ||
xtensa_context.S | ||
xtensa_init.c | ||
xtensa_intr.c | ||
xtensa_intr_asm.S | ||
xtensa_overlay_os_hook.c | ||
xtensa_vector_defaults.S | ||
xtensa_vectors.S |