* Added optional spinlock contention measurement feature. Enabled when

B_DEBUG_SPINLOCK_CONTENTION is defined to 1. It typedefs spinlock to a
  structure (thus breaking BeOS binary compatibility), containing a
  counter which is incremented whenever a thread has to wait for the
  spinlock.
* Added macros for spinlock initialization and access and changed
  code using spinlocks accordingly. This breaks compilation for BeOS --
  the macros should be defined in the respective compatibility wrappers.
* Added generic syscall to get the spinlock counters for the thread and
  the team spinlocks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25752 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold
2008-06-02 02:04:12 +00:00
parent e78b56aaf7
commit 1c8de8581b
33 changed files with 179 additions and 44 deletions
+1 -1
View File
@@ -60,7 +60,7 @@ struct thread_key {
};
// global
spinlock thread_spinlock = 0;
spinlock thread_spinlock = B_SPINLOCK_INITIALIZER;
// thread list
static struct thread sIdleThreads[B_MAX_CPU_COUNT];