Hi Folks,
I’ve got a strange problem on an STM32F4Discovery board which is probably sticky fingers, but has got me fooled. This is FreeRTOS 7.4.0.
I’ve created an extremely simple build (summon-arm-toolchain) with no active tasks. I have
configUSE_IDLE_HOOK
set.
When I set
configCHECK_FOR_STACK_OVERFLOW
to 1, everything is cool, and I can set/trigger a breakpoint in
vApplicationIdleHook
which implies the code is all cushty.
When I set it to 2, I never seem to reach
vApplicationIdleHook
. I have taken the expansion for
taskSECOND_CHECK_FOR_STACK_OVERFLOW
from
StackMacros.h
and pasted it into
tasks.c
, then replaced the
if (memcmp...
with a
if (1==0)...
which results in
vApplicationIdleHook
getting called again (and no, I’m not running out of stack, I’ve got breakpoints in there and I’ve tried setting the stack huge with no change).
Hand stepping through
memcmp
from
newlib
doesn’t reveal anything strange going on either. Its getting late and I will have missed something obvious, but wondered if anyone else had seen any similar behaviour?
Regards
DAVE