well, don’t rely on the call stack. First of all, you should make it a habit to at least reveal to us the target platform and the IDE. Tons of what you see and don’t see depend on these.
Your IDE may or may not know that FreeRTOS switches stacks upon ISR invocation and likewise not attempt to follow the entire chain of events. Also, the call stack is not reliable, for example on Cortex M platforms where the compiler may make lots of optimizationd such as tail recursion collating or function inlining that will make the call stack look very different from what you think it should look. In short, don’t waste your time barking up a possibly wrong tree.
Very likely your application suffers from one of the top three errors:
- Stack overflow
- Misconfigured interrupt priorities
- Synchronization problems.
That’s where you should look first, they account for > 90% of all problems related to FreeRTOS (as the discussions in this forum prove over and over again).
And of course, if you don’t start the OS in the first place, none of the top three problems will show.