Skip to content

Commit

Permalink
Merge pull request #1385 from jphickey/fix-1345-app-not-found-doc
Browse files Browse the repository at this point in the history
Fix #1345, exception logic when app/task is not found
  • Loading branch information
astrogeco authored Apr 28, 2021
2 parents 1b91d33 + e0a9079 commit d9f125b
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions modules/es/fsw/src/cfe_es_erlog.c
Original file line number Diff line number Diff line change
Expand Up @@ -335,13 +335,24 @@ bool CFE_ES_RunExceptionScan(uint32 ElapsedTime, void *Arg)
*
* Otherwise, if it was related to a task, determine the associated AppID
* so the exception action can be checked.
*
* NOTE: the default exception handling is to restart the processor/system.
* There is an option to only restart the specific app needs, but this must
* be "opt-in", that is, the app was created initially with this option, and
* the exception is also traced back to that app. If either is not possible
* for whatever reason then the restart action (default) should be taken, as
* this gets the highest assurance that the system will be returned to a coherent
* state.
*/
if (OS_ObjectIdDefined(ExceptionTaskID))
{
Status = CFE_ES_GetTaskInfo(&EsTaskInfo, CFE_ES_TaskId_FromOSAL(ExceptionTaskID));

/*
* The App ID was found, now see if the ExceptionAction is set for a reset
*
* NOTE: if anything in this logic fails and the app which caused the exception is not
* postively identified, then this will just follow the default case of PSP reset.
*/
if (Status == CFE_SUCCESS)
{
Expand Down

0 comments on commit d9f125b

Please sign in to comment.