ARM Technical Support Knowledge Articles

TRANSITION FROM OS_STK_OVERFLOW() TO OS_ERROR()

Applies to: RealView Real-Time Library

Answer


Information in this knowledgebase article applies to:


SYMPTOM

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?

CAUSE

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);

RESOLUTION

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.

SEE ALSO

ATTACHED FILES

Request the files attached to this knowledgebase article.

Article last edited on: 2012-08-20 09:37:39

Rate this article

[Bad]
|
|
[Good]
Disagree? Move your mouse over the bar and click

Did you find this article helpful? Yes No

How can we improve this article?

Link to this article
Copyright © 2011 ARM Limited. All rights reserved. External (Open), Non-Confidential