#include #include #include #include #include "bindings.h" void _panic_impl(char *line, char *file, char *format, ...) { cli(); va_list list; va_start(list, msg); kprintf("\n\n!!! PANIC !!!\n"); kprintf("In file %s at line %s:\n", file, line); kvprintf(format, list); kprintf("\n\n"); log_backtrace(); while (1) { halt(); } } void _panic_interrupt(void *ip, void *bp, char *format, ...) { cli(); va_list list; va_start(list, msg); kprintf("\n\n!!! PANIC !!!\n"); kvprintf(format, list); kprintf("\n\n"); log_backtrace_ex(ip, bp); while (1) { halt(); } }