diff options
author | Andreas Baumann <mail@andreasbaumann.cc> | 2017-07-16 09:40:04 +0200 |
---|---|---|
committer | Andreas Baumann <mail@andreasbaumann.cc> | 2017-07-16 09:40:04 +0200 |
commit | 363217f3425f96766c67933ecd9bfc7453c5d66e (patch) | |
tree | e69732fdaf01d3fb0914255694b2abaa3b489134 | |
parent | 8183f17368ea6944c8b36d7cb7564b33d2a0503a (diff) | |
download | abaos-363217f3425f96766c67933ecd9bfc7453c5d66e.tar.gz abaos-363217f3425f96766c67933ecd9bfc7453c5d66e.tar.bz2 |
move longjmp for kernel_panic
-rw-r--r-- | src/kernel/kernel.c | 12 |
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; |