RL-ARM: TRANSITION FROM OS_STK_OVERFLOW() TO OS_ERROR()
Information in this knowledgebase article applies to:
In version 4.05 the os_stk_overflow() function is not available any more. Instead there is a new function os_error(), which will now be called in case of stack overflow situations. But there is no task ID parameter for os_error() like there was for os_stk_overflow(). So how is it now possible to determine the task which caused the stack overflow?
os_error() was introduced, to report also other critical situations during runtime. So there is now one common error handling function. The parameter to this function is the cause of the problem:
void os_error (U32 err_code);
To find out the task, which caused the stack overflow, the RTX function isr_tsk_get() can be called inside the os_error() function in case of a stack overflow.
But please note ,that this function was introduced in RL-ARM 4.10. In RL-ARM 4.05 it was only possible on ARM7/9 targets by using the RTX function os_tsk_self() to achieve a similar result.
Last Reviewed: Monday, August 20, 2012
of your data.