haiku/headers/private/kernel
Axel Dörfler 67a7102658 Fixed a pretty fatal bug in the page fault handling: interrupts were enabled
even if "kernel_startup" was "true". Page faults are now no longer allowed
during kernel startup (and could be easily avoided). The only situation where
we accept page faults with interrupts turned off now is during a kernel debugger
session.
Added a command debug_debugger_running() to test for that situation.
kernel_debugger() no longer sets kernel_startup while it's running; there should
be no situation when this could be helpful.
Interrupts are no longer enabled when a page fault happens in the kernel
debugger.
This potentially fixes all sorts of problems, and not only in the kernel debugger,
it could also have affected SMP (will test later).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14045 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-08-21 23:27:51 +00:00
..
arch * Now we deal with all x86 exceptions, i.e. we no longer panic() when a 2005-07-21 23:47:08 +00:00
boot Added "Disable IDE DMA" safemode option. 2005-03-31 15:16:09 +00:00
disk_device_manager Merged the disk device manager module interface for file systems with the 2005-05-23 17:15:56 +00:00
fs Moved load_driver() and load_driver_symbols() over to devfs. 2005-06-02 18:32:21 +00:00
util Added a BenaphoreLocker. 2005-04-13 22:40:48 +00:00
block_cache.h First step into a new block allocation strategy for the block_cache 2005-05-13 18:18:28 +00:00
boot_item.h The boot item list was not initialized; this was no problem, though, as 2005-06-13 13:01:13 +00:00
cache.h
cbuf.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
console.h Made the header C++ safe. 2005-05-26 09:08:54 +00:00
cpu.h Added the missing clear_caches() function and syscall. Does not yet do anything (which 2005-03-17 17:06:56 +00:00
debug.h Fixed a pretty fatal bug in the page fault handling: interrupts were enabled 2005-08-21 23:27:51 +00:00
defines.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
elf32.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
elf_priv.h
elf.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
faults_priv.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
file_cache.h The file cache now has another init method that is called after the boot 2005-08-03 17:25:03 +00:00
frame_buffer_console.h Removed debug/console.c, we no longer need it. frame_buffer_console_init() is now 2005-05-29 16:23:00 +00:00
gdb.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
generic_syscall.h
int.h {install|remove}_io_interrupt_handler() now correctly handle the B_NO_ENABLE_COUNTER flag. 2005-04-27 01:08:35 +00:00
kdevice_manager.h Merged branches/developer/axeld/driver_recognition changed r12307:12637 into trunk. 2005-05-12 03:27:44 +00:00
kdriver_settings.h
kernel_daemon.h
kernel.h Moved the kernel_startup variable declaration from int.h to kernel.h (it's defined in main.c). 2005-04-12 06:09:13 +00:00
kimage.h Added _user_image_relocated() and _user_loading_app_failed(). 2005-03-12 15:05:12 +00:00
kmodule.h Added function prototypes for the kernel private load_module() and unload_module() calls. 2005-01-18 02:34:00 +00:00
ksignal.h Applied some changes suggested by mmu_man, more to come, though: 2005-04-29 11:41:12 +00:00
ksocket.h
ksyscalls.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
lock.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
memheap.h Enlarged the kernel heap to 16 MB. 2005-05-26 09:11:30 +00:00
messaging.h Added _user_unregister_messaging_service(). Fixed second send_message() proto. 2005-01-24 01:19:03 +00:00
MessagingServiceDefs.h Removed obsolete struct. 2005-01-30 01:11:33 +00:00
pools.h
port.h We now have a (private) writev_port_etc() call. This could be used to avoid 2005-07-13 23:55:15 +00:00
real_time_clock.h
real_time_data.h
safemode.h
sem.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
smp.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
syscall_process_info.h
syscalls.h We now have a (private) writev_port_etc() call. This could be used to avoid 2005-07-13 23:55:15 +00:00
sysctl.h
system_info.h
team.h Added a team watching mechanism in the kernel, not yet tested (but at least doesn't cause any harm yet :-)). 2005-08-03 12:00:42 +00:00
thread_types.h Added a team watching mechanism in the kernel, not yet tested (but at least doesn't cause any harm yet :-)). 2005-08-03 12:00:42 +00:00
thread.h Now fills in system_info::cpu_infos[] (ie. CPU activity) by looking at the active 2005-07-01 00:31:38 +00:00
timer.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
tls.h
user_atomic.h
user_debugger.h * Added support for debugging through exec*(). 2005-03-25 18:40:07 +00:00
user_runtime.h Apparently, both load_image() and exec*() support running scripts. We do that 2005-06-14 11:23:29 +00:00
vfs.h Added vfs_get_cwd() call to get the mount_id and vnode_id of the current 2005-08-09 16:25:01 +00:00
vm_cache.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
vm_low_memory.h Added a basic low memory handler service. 2005-06-13 13:03:54 +00:00
vm_page.h Minor cleanup, changed return type of page count functions (from addr_t to size_t, 2005-06-13 13:02:24 +00:00
vm_priv.h Renamed vm.c to vm.cpp and made all the changes to let it compile without 2005-05-16 23:17:45 +00:00
vm_store_anonymous_noswap.h Added an additional flag B_OVERCOMMITTING_AREA (currently to be specified 2005-05-15 15:03:44 +00:00
vm_store_device.h Renamed vm.c to vm.cpp and made all the changes to let it compile without 2005-05-16 23:17:45 +00:00
vm_store_null.h Renamed vm.c to vm.cpp and made all the changes to let it compile without 2005-05-16 23:17:45 +00:00
vm_translation_map.h Removed execute property that was set accidently (since CVS days). 2005-03-18 01:50:45 +00:00
vm_types.h Added an additional flag B_OVERCOMMITTING_AREA (currently to be specified 2005-05-15 15:03:44 +00:00
vm.h The heap is now located at 384 MB, and creates a reserved range that spans over the 2005-05-16 22:15:13 +00:00