From bc600ecc3bdf0f189861dfb840f70c2339a7a853 Mon Sep 17 00:00:00 2001 From: Kimplul Date: Fri, 24 May 2024 13:24:27 +0300 Subject: rename common to src + I keep starting to type src and wondering why autocomplete won't work, I guess src is just uncounciously a better name --- src/panic.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 src/panic.c (limited to 'src/panic.c') diff --git a/src/panic.c b/src/panic.c new file mode 100644 index 0000000..03c0de8 --- /dev/null +++ b/src/panic.c @@ -0,0 +1,25 @@ +/* SPDX-License-Identifier: copyleft-next-0.3.1 */ +/* Copyright 2023, Kim Kuparinen < kimi.h.kuparinen@gmail.com > */ + +/** + * @file panic.c + * Kernel panic handler implementation. + */ + +#include +#include + +void kernel_panic(void *pc, void *addr, long cause) +{ + /* could be useful to print out register values as well? */ + error("kernel paniced at pc: %p with address %p and cause %lx\n", + pc, addr, cause); + + info("attempting to reboot\n"); + + poweroff(COLD_REBOOT); + + /* spin if poweroff failed for some reason */ + error("reboot failed, spinning in place\n"); + while (1); +} -- cgit v1.3