You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The default behavior after exception is to do a restart of some form (processor or poweron). Only if the exception is specific to a certain task and the app owning that task was configured with "RESTART_APP" option, then only that app will be restarted instead of the whole system.
So in this case if the task was not found it will just fall through as intended to do the full processor restart.
Most likely if this occurs its because data structures are out of sync, which in an exception handling context is most likely because the data structures were possibly clobbered as part of whatever went wrong, before the RTOS actually caught the exception and stopped the task. This can have far reaching effects/unpredictable behavior, so the best bet is to restart ASAP.
I suppose we could add a SysLog if that happens, but even that involves taking a lock which if the data structures are corrupted, could deadlock. All hypothetical though....
Adds comments to describe the logic when an exception cannot
be traced back to a specific app, in that it should fall back
to the PSP reset.
Restarting only an app is a special opt-in case that is only
done if specifically selected when starting the app, and the
exception is also positively traced back to that app.
Is your feature request related to a problem? Please describe.
Not clear if task not found case is handled correctly:
cFE/modules/es/fsw/src/cfe_es_erlog.c
Lines 360 to 362 in e80aae9
Describe the solution you'd like
Analyze and explicitly handle if needed or document why not needed for future reference
Describe alternatives you've considered
None
Additional context
Code Review
Requester Info
Jacob Hageman - NASA/GSFC
The text was updated successfully, but these errors were encountered: