|
PebbleOS v4.45.0-162-g88634f016
|
What an architecture implements to support core dumps. More...
Functions | |
| void | arch_coredump_trigger (void) |
| Stop the system and enter pbl_coredump_arch_handler(). | |
| void | arch_coredump_thread_regs (uint32_t regs[PBL_THREAD_REG_COUNT]) |
| Get the registers of the thread that was running. | |
| bool | arch_coredump_exception_regs (uint32_t regs[PBL_THREAD_REG_COUNT]) |
| Get the registers of the exception that was running, if any. | |
| const struct pbl_coredump_extra_regs * | arch_coredump_extra_regs (void) |
| Get the special registers at the time of the dump. | |
| void | pbl_coredump_arch_handler (void) |
| Write the core dump and reset. | |
What an architecture implements to support core dumps.
An architecture selects ARCH_HAS_COREDUMP and implements these functions. Except for arch_coredump_trigger(), they are called from pbl_coredump_arch_handler().
| bool arch_coredump_exception_regs | ( | uint32_t | regs[PBL_THREAD_REG_COUNT] | ) |
Get the registers of the exception that was running, if any.
If it faulted, these are its registers at the fault, not those of the fault handler.
| [out] | regs | Registers, indexed by pbl_thread_reg. |
| const struct pbl_coredump_extra_regs * arch_coredump_extra_regs | ( | void | ) |
Get the special registers at the time of the dump.
| void arch_coredump_thread_regs | ( | uint32_t | regs[PBL_THREAD_REG_COUNT] | ) |
Get the registers of the thread that was running.
If the thread faulted, these are its registers at the fault, not those of the fault handler.
| [out] | regs | Registers, indexed by pbl_thread_reg. |
| void arch_coredump_trigger | ( | void | ) |
Stop the system and enter pbl_coredump_arch_handler().
Returns only if that failed.
| void pbl_coredump_arch_handler | ( | void | ) |
Write the core dump and reset.
Called by the architecture once its state is captured, with OS services unavailable.