Expand description
This crate logs all the faults occuring within Theseus. Maintains a list of exceptions and panics that has occured since booting up. This crate does not hold reference to any task or app.
Structs
- A data structure to hold information about each fault.
Enums
- The possible faults (panics and exceptions) encountered during operations.
- The different types of recovery procedures used for the observed fault
Functions
- Clears the log of faults so far occured in the system
- Utility function to get Fault type from exception number.
- Provides the most recent entry in the log for given crate Utility function for iterative crate replacement
- Add a new exception instance to the fault log. Generally it will have
fault_type
andinstruction_pointer
. Iferror_code
is provided with exception it will be send to the function asSome(error_code)
. If the exception is a page fault the address attempted to accesss will also be send to the function asSome(address_accessed)
- Add a
FaultEntry
to fault log. - Add a new panic instance to the fault log.
- Prints the fault log
- Removes the unhandled faults from the fault log and returns. Is useful when we update the recovery detail about unhandled exceptions.