Exiting Init function: Difference between 4.6.0 and 4.6.5 ?
joel.sherrill at oarcorp.com
Thu May 4 11:17:08 UTC 2006
Chris Johns wrote:
> Alan Cudmore wrote:
>> Can anyone verify that something changed between 4.6.0 and 4.6.5
>> that would make my code end up in _Internal_error_Occurred if I just
>> let the Init routine end?
> The Init task is a classic API task and it is considered an error to
> return from a classic API task. You must delete it.
> I seem to remember something about the internal error not occurring if
> you have built POSIX support into RTEMS. POSIX allows threads to exit
> by returning and the POSIX support was allowing this for all RTEMS
> tasks, ie overriding the classic API specification.
You remember this correctly. It was a bug and should be fixed now. The
behavior when a thread falls
out the bottom of its function body is API specific and is supposed to
be honored independent of how
RTEMS is configured.
This was PR294 and fixed in September 2004. :)
More information about the users