17 #include <core/dependencies.h>
19 #ifdef POK_NEEDS_ERROR_HANDLING
24 #define POK_ERROR_MAX_LOGGED 100
30 uint32_t failed_thread;
46 #define POK_ERROR_KIND_DEADLINE_MISSED 10
47 #define POK_ERROR_KIND_APPLICATION_ERROR 11
48 #define POK_ERROR_KIND_NUMERIC_ERROR 12
49 #define POK_ERROR_KIND_ILLEGAL_REQUEST 13
50 #define POK_ERROR_KIND_STACK_OVERFLOW 14
51 #define POK_ERROR_KIND_MEMORY_VIOLATION 15
52 #define POK_ERROR_KIND_HARDWARE_FAULT 16
53 #define POK_ERROR_KIND_POWER_FAIL 17
54 #define POK_ERROR_KIND_PARTITION_CONFIGURATION 30
55 #define POK_ERROR_KIND_PARTITION_INIT 31
56 #define POK_ERROR_KIND_PARTITION_SCHEDULING 32
57 #define POK_ERROR_KIND_PARTITION_PROCESS 33
58 #define POK_ERROR_KIND_KERNEL_INIT 50
59 #define POK_ERROR_KIND_KERNEL_SCHEDULING 51
61 pok_ret_t pok_error_handler_create ();
62 void pok_error_ignore (
const uint32_t error_id,
const uint32_t thread_id);
63 void pok_error_confirm (
const uint32_t error_id,
const uint32_t thread_id);
66 void pok_error_log (
const uint32_t error_id,
const uint32_t thread_id);
68 void pok_error_raise_application_error (
char* msg, uint32_t msg_size);