basic process support and some syscalls
[lunaix-os.git] / lunaix-os / kernel / asm / x86 / pfault.c
1 #include <arch/x86/interrupts.h>
2 #include <lunaix/mm/pmm.h>
3 #include <lunaix/mm/vmm.h>
4 #include <lunaix/common.h>
5
6 extern void __print_panic_msg(const char* msg, const isr_param* param);
7
8 void
9 intr_routine_page_fault (const isr_param* param) 
10 {
11     void* pg_fault_ptr = cpu_rcr2();
12     if (!pg_fault_ptr) {
13         __print_panic_msg("Null pointer reference", param);
14         goto done;
15     }
16
17     __print_panic_msg("Page fault", param);
18
19 done:
20     while(1);
21 }