You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
These ports were added 17 years ago in this commit 504382b and are the only ones that implement pvPortRealloc. It's implemented here by calling stdlib realloc. I wanted to verify whether this is correct? I think this would only work as expected for heap_3 (it wraps and calls the stdlib malloc and free). For other heaps I think there would be issues since realloc would create a pointer that gets passed to heap_'s vPortFree, which it wouldn't know how to free.
Maybe a good legacy-friendly fix would be to statically assert that heap_3 is being used for the AVR32_UC3 port?
The text was updated successfully, but these errors were encountered:
Your analysis seems correct. This will not work with the heaps managed by FreeRTOS itself. And thus would only work with the heap_3 implementation using the stdlib.
FreeRTOS-Kernel/portable/GCC/AVR32_UC3/port.c
Line 203 in 4732b96
FreeRTOS-Kernel/portable/IAR/AVR32_UC3/port.c
Line 170 in 4732b96
These ports were added 17 years ago in this commit 504382b and are the only ones that implement
pvPortRealloc
. It's implemented here by calling stdlibrealloc
. I wanted to verify whether this is correct? I think this would only work as expected for heap_3 (it wraps and calls the stdlibmalloc
andfree
). For other heaps I think there would be issues sincerealloc
would create a pointer that gets passed to heap_'svPortFree
, which it wouldn't know how to free.Maybe a good legacy-friendly fix would be to statically assert that heap_3 is being used for the AVR32_UC3 port?
The text was updated successfully, but these errors were encountered: