aboutsummaryrefslogtreecommitdiff
path: root/kern
diff options
context:
space:
mode:
Diffstat (limited to 'kern')
-rw-r--r--kern/debug.c8
-rw-r--r--kern/lock.h3
-rw-r--r--kern/lock_mon.c4
-rw-r--r--kern/mach_clock.c2
-rw-r--r--kern/machine.c2
-rw-r--r--kern/processor.c2
-rw-r--r--kern/sched_prim.c2
-rw-r--r--kern/thread.c6
-rw-r--r--kern/thread_swap.c2
-rw-r--r--kern/xpr.c2
10 files changed, 15 insertions, 18 deletions
diff --git a/kern/debug.c b/kern/debug.c
index 44814925..cd782361 100644
--- a/kern/debug.c
+++ b/kern/debug.c
@@ -112,8 +112,7 @@ void Debugger(const char *message)
even before panic_init() gets called from the "normal" place in kern/startup.c.
(panic_init() still needs to be called from there
to make sure we get initialized before starting multiple processors.) */
-boolean_t panic_lock_initialized = FALSE;
-decl_simple_lock_data(, panic_lock)
+def_simple_lock_data(static, panic_lock)
const char *panicstr;
int paniccpu;
@@ -121,11 +120,6 @@ int paniccpu;
void
panic_init(void)
{
- if (!panic_lock_initialized)
- {
- panic_lock_initialized = TRUE;
- simple_lock_init(&panic_lock);
- }
}
#if ! MACH_KBD
diff --git a/kern/lock.h b/kern/lock.h
index 2548409d..13f6915c 100644
--- a/kern/lock.h
+++ b/kern/lock.h
@@ -68,6 +68,8 @@ typedef struct slock *simple_lock_t;
#define decl_simple_lock_data(class,name) \
class simple_lock_data_t name;
+#define def_simple_lock_data(class,name) \
+class simple_lock_data_t name = SIMPLE_LOCK_INITIALIZER(&name);
#define simple_lock_addr(lock) (simple_lock_assert(&(lock)), \
&(lock))
@@ -144,6 +146,7 @@ class struct simple_lock_data_empty name;
#define decl_mutex_data(class,name) decl_simple_lock_data(class,name)
+#define def_mutex_data(class,name) def_simple_lock_data(class,name)
#define mutex_try(l) simple_lock_try(l)
#define mutex_lock(l) simple_lock(l)
#define mutex_unlock(l) simple_unlock(l)
diff --git a/kern/lock_mon.c b/kern/lock_mon.c
index 4b3ba82e..a963ec05 100644
--- a/kern/lock_mon.c
+++ b/kern/lock_mon.c
@@ -47,8 +47,8 @@
#include <kern/lock.h>
-decl_simple_lock_data(extern , kdb_lock)
-decl_simple_lock_data(extern , printf_lock)
+def_simple_lock_data(extern , kdb_lock)
+def_simple_lock_data(extern , printf_lock)
#if NCPUS > 1 && MACH_LOCK_MON
diff --git a/kern/mach_clock.c b/kern/mach_clock.c
index 0e3a2cf2..09717d16 100644
--- a/kern/mach_clock.c
+++ b/kern/mach_clock.c
@@ -119,7 +119,7 @@ MACRO_BEGIN \
} while ((time)->seconds != mtime->check_seconds64); \
MACRO_END
-decl_simple_lock_data(, timer_lock) /* lock for ... */
+def_simple_lock_data(static, timer_lock) /* lock for ... */
timer_elt_data_t timer_head; /* ordered list of timeouts */
/* (doubles as end-of-list) */
diff --git a/kern/machine.c b/kern/machine.c
index 7eead810..e8c9912e 100644
--- a/kern/machine.c
+++ b/kern/machine.c
@@ -68,7 +68,7 @@ struct machine_info machine_info;
struct machine_slot machine_slot[NCPUS];
queue_head_t action_queue; /* assign/shutdown queue */
-decl_simple_lock_data(,action_lock);
+def_simple_lock_data(,action_lock);
/*
* cpu_up:
diff --git a/kern/processor.c b/kern/processor.c
index 75d2ff53..2cd6d46c 100644
--- a/kern/processor.c
+++ b/kern/processor.c
@@ -64,7 +64,7 @@ struct processor processor_array[NCPUS];
queue_head_t all_psets;
int all_psets_count;
-decl_simple_lock_data(, all_psets_lock);
+def_simple_lock_data(, all_psets_lock);
processor_t master_processor;
processor_t processor_ptr[NCPUS];
diff --git a/kern/sched_prim.c b/kern/sched_prim.c
index 9e7a9c55..713d379e 100644
--- a/kern/sched_prim.c
+++ b/kern/sched_prim.c
@@ -128,7 +128,7 @@ timer_elt_data_t recompute_priorities_timer;
#define NUMQUEUES 1031
queue_head_t wait_queue[NUMQUEUES];
-decl_simple_lock_data(, wait_lock[NUMQUEUES])
+decl_simple_lock_data(static, wait_lock[NUMQUEUES])
/* NOTE: we want a small positive integer out of this */
#define wait_hash(event) \
diff --git a/kern/thread.c b/kern/thread.c
index bc155b45..17cc458c 100644
--- a/kern/thread.c
+++ b/kern/thread.c
@@ -75,7 +75,7 @@ struct kmem_cache thread_cache;
struct kmem_cache thread_stack_cache;
queue_head_t reaper_queue;
-decl_simple_lock_data(, reaper_lock)
+def_simple_lock_data(static, reaper_lock)
/* private */
struct thread thread_template;
@@ -83,7 +83,7 @@ struct thread thread_template;
#if MACH_DEBUG
#define STACK_MARKER 0xdeadbeefU
boolean_t stack_check_usage = FALSE;
-decl_simple_lock_data(, stack_usage_lock)
+def_simple_lock_data(static, stack_usage_lock)
vm_size_t stack_max_usage = 0;
#endif /* MACH_DEBUG */
@@ -119,7 +119,7 @@ vm_size_t stack_max_usage = 0;
* because stack_alloc_try/thread_invoke operate at splsched.
*/
-decl_simple_lock_data(, stack_lock_data)/* splsched only */
+def_simple_lock_data(static, stack_lock_data)/* splsched only */
#define stack_lock() simple_lock(&stack_lock_data)
#define stack_unlock() simple_unlock(&stack_lock_data)
diff --git a/kern/thread_swap.c b/kern/thread_swap.c
index ecfe48e4..a5fc0523 100644
--- a/kern/thread_swap.c
+++ b/kern/thread_swap.c
@@ -60,7 +60,7 @@
queue_head_t swapin_queue;
-decl_simple_lock_data(, swapper_lock_data)
+def_simple_lock_data(static, swapper_lock_data)
#define swapper_lock() simple_lock(&swapper_lock_data)
#define swapper_unlock() simple_unlock(&swapper_lock_data)
diff --git a/kern/xpr.c b/kern/xpr.c
index 46cb2273..1b551eb1 100644
--- a/kern/xpr.c
+++ b/kern/xpr.c
@@ -46,7 +46,7 @@
* Just set xprenable false so the buffer isn't overwritten.
*/
-decl_simple_lock_data(, xprlock)
+def_simple_lock_data(static, xprlock)
boolean_t xprenable = TRUE; /* Enable xpr tracing */
int nxprbufs = 0; /* Number of contiguous xprbufs allocated */