summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2017-07-16 09:40:04 +0200
committerAndreas Baumann <mail@andreasbaumann.cc>2017-07-16 09:40:04 +0200
commit363217f3425f96766c67933ecd9bfc7453c5d66e (patch)
treee69732fdaf01d3fb0914255694b2abaa3b489134
parent8183f17368ea6944c8b36d7cb7564b33d2a0503a (diff)
downloadabaos-363217f3425f96766c67933ecd9bfc7453c5d66e.tar.gz
abaos-363217f3425f96766c67933ecd9bfc7453c5d66e.tar.bz2
move longjmp for kernel_panic
-rw-r--r--src/kernel/kernel.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/kernel/kernel.c b/src/kernel/kernel.c
index e107b8a..d708850 100644
--- a/src/kernel/kernel.c
+++ b/src/kernel/kernel.c
@@ -121,6 +121,12 @@ void kernel_main( void )
puts( "Initializing drivers" );
driver_manager_init( &global_context.driver_manager );
+ // exit point in case of kernel panic, do this as soon as
+ // possible
+ if( setjmp( panic_jmp_buf ) > 0 ) {
+ goto TERMINATE;
+ }
+
// hard-wired drivers
global_context.keyboard = (keyboard_t *)malloc( sizeof( keyboard_t ) );
@@ -132,12 +138,6 @@ void kernel_main( void )
mouse_set_resolution( global_context.mouse, global_context.vga_text.res_x, global_context.vga_text.res_y );
driver_manager_add_driver( &global_context.driver_manager, (driver_t *)global_context.mouse );
- // exit point in case of kernel panic, do this as soon as
- // possible
- if( setjmp( panic_jmp_buf ) > 0 ) {
- goto TERMINATE;
- }
-
// dynamically detected and registered drivers
puts( "Detecting devices via PCI.." );
pci_controller_t pci_controller;