| /* | |
| * Copyright 2014, NICTA | |
| * | |
| * This software may be distributed and modified according to the terms of | |
| * the BSD 2-Clause license. Note that NO WARRANTY is provided. | |
| * See "LICENSE_BSD2.txt" for details. | |
| * | |
| * @TAG(NICTA_BSD) | |
| */ | |
| #ifndef _LIBSEL4DEBUG_FAULTS_H_ | |
| #define _LIBSEL4DEBUG_FAULTS_H_ | |
| /* A basic fault handler for debugging purposes. Note that you are expected to | |
| * call this function from the thread that you wish to act as a fault handler | |
| * as it doesn't return on success. Returns non-zero on failure. | |
| * | |
| * faultep - The endpoint to listen on for fault messages. | |
| * senders - A function for translating endpoint badge to thread name. This is | |
| * helpful if you want to handle faults from multiple threads via badged | |
| * endpoints, but are also in a position to provide this handler with more | |
| * information (than just the badge) about which thread faulted. If this | |
| * parameter is NULL it will be ignored. | |
| * | |
| * TODO: This function has not been tested. I wrote it with the aim of | |
| * debugging some CAmkES code, but there is an open bug (VER-348) that prevents | |
| * setting fault handlers currently. | |
| */ | |
| int debug_fault_handler(seL4_CPtr faultep, | |
| const char * (*senders)(seL4_Word badge)); | |
| #endif |