* Added the possibility to debug latency issues with spinlocks.

* When DEBUG_SPINLOCK_LATENCIES is 1, the system will panic if any spinlock is
  held longer than DEBUG_LATENCY micro seconds (currently 200). If your system
  doesn't boot anymore, a new safemode setting can disable the panic.
* Besides some problems during boot when the MTRRs are set up, 200 usecs work
  fine here if all debug output is turned off (the output stuff is definitely
  problematic, though I don't have a good idea on how to improve upon it a lot).
* Renamed the formerly BeOS compatible safemode settings to look better; there
  is no need to be compatible there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33953 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler
2009-11-08 20:26:48 +00:00
parent bec53b590f
commit 6242fd5977
4 changed files with 110 additions and 24 deletions
+7 -6
View File
@@ -1,16 +1,13 @@
/*
* Copyright 2004-2008, Axel Dörfler, [email protected]. All rights reserved.
* Copyright 2004-2009, Axel Dörfler, [email protected].
* Distributed under the terms of the MIT License.
*/
#ifndef _SYSTEM_SAFEMODE_DEFS_H
#define _SYSTEM_SAFEMODE_DEFS_H
// these are BeOS compatible additions to the safemode
// constants in the driver_settings.h header
#define B_SAFEMODE_DISABLE_USER_ADD_ONS "disableuseraddons"
#define B_SAFEMODE_DISABLE_IDE_DMA "disableidedma"
#define B_SAFEMODE_DISABLE_USER_ADD_ONS "disable_user_addons"
#define B_SAFEMODE_DISABLE_IDE_DMA "disable_ide_dma"
#define B_SAFEMODE_DISABLE_IOAPIC "disable_ioapic"
#define B_SAFEMODE_DISABLE_ACPI "disable_acpi"
#define B_SAFEMODE_DISABLE_APIC "disable_apic"
@@ -19,5 +16,9 @@
#define B_SAFEMODE_DISABLE_HYPER_THREADING "disable_hyperthreading"
#define B_SAFEMODE_FAIL_SAFE_VIDEO_MODE "fail_safe_video_mode"
#if DEBUG_SPINLOCK_LATENCIES
# define B_SAFEMODE_DISABLE_LATENCY_CHECK "disable_latency_check"
#endif
#endif /* _SYSTEM_SAFEMODE_DEFS_H */