Add Klog.fatal_error()

This commit is contained in:
Josh Holtrop 2023-09-17 11:14:24 -04:00
parent e8978c73f2
commit 3412d9ece9
2 changed files with 15 additions and 1 deletions

View File

@ -120,7 +120,7 @@ struct Acpi
const(XSDT) * xsdt = cast(const(XSDT) *)acpi_xsdt_phys;
if (xsdt.header.signature != XSDT_SIGNATURE)
{
Klog.writef("XSDT signature invalid\n");
Klog.fatal_error("XSDT signature invalid");
return;
}
/* Map the entire XSDT. */

View File

@ -6,6 +6,7 @@ module hulk.klog;
import core.stdc.stdarg;
import hulk.console;
static import hulk.writef;
import hulk.cpu;
struct Klog
{
@ -70,4 +71,17 @@ struct Klog
writef("\n", args);
va_end(args);
}
/**
* Print a fatal kernel error and loop forever.
*/
public static void fatal_error(T...)(T args)
{
writef("FATAL ERROR: ");
writefln(args);
cli();
for (;;)
{
}
}
}