mirror of
https://github.com/espressif/esp-idf.git
synced 2025-11-26 20:53:11 +00:00
This commit fixes the following FPU/Coprocessor bugs in the Xtensa port of
Amazon SMP FreeRTOS:
- vPortCleanUpCoprocArea() does not calculate the correct pointer to the
task's CPSA (located on the task's stack). This can result in
- _xt_coproc_release() not releasing the task's CP ownership
- The next coprocessor exception will write the current CP owner (i.e., the
deleted task's CPSA) leading to memory corruption
- _xt_coproc_release() writes xCoreID instead of 0 when clearing a CP owner.
This results in the next CP exception trying to load the CP owner's CPSA at
the address of "xCoreID", leading to a double exception.