Index: kern_mutex.c =================================================================== --- kern_mutex.c (revision 189789) +++ kern_mutex.c (working copy) @@ -254,8 +254,11 @@ int _mtx_trylock(struct mtx *m, int opts, const char *file, int line) { - int rval, contested = 0; +#ifdef LOCK_PROFILING uint64_t waittime = 0; + int contested = 0; +#endif + int rval; MPASS(curthread != NULL); KASSERT(m->mtx_lock != MTX_DESTROYED, @@ -296,15 +299,17 @@ int line) { struct turnstile *ts; + uintptr_t v; #ifdef ADAPTIVE_MUTEXES volatile struct thread *owner; #endif #ifdef KTR int cont_logged = 0; #endif +#ifdef LOCK_PROFILING int contested = 0; uint64_t waittime = 0; - uintptr_t v; +#endif if (mtx_owned(m)) { KASSERT((m->lock_object.lo_flags & LO_RECURSABLE) != 0, @@ -448,8 +453,11 @@ _mtx_lock_spin(struct mtx *m, uintptr_t tid, int opts, const char *file, int line) { - int i = 0, contested = 0; + int i = 0; +#ifdef LOCK_PROFILING + int contested = 0; uint64_t waittime = 0; +#endif if (LOCK_LOG_TEST(&m->lock_object, opts)) CTR1(KTR_LOCK, "_mtx_lock_spin: %p spinning", m); @@ -486,11 +494,13 @@ { struct mtx *m; uintptr_t tid; - int i, contested; - uint64_t waittime; + int i; +#ifdef LOCK_PROFILING + int contested = 0; + uint64_t waittime = 0; +#endif - contested = i = 0; - waittime = 0; + i = 0; tid = (uintptr_t)curthread; for (;;) { retry: Index: kern_rwlock.c =================================================================== --- kern_rwlock.c (revision 189780) +++ kern_rwlock.c (working copy) @@ -282,8 +282,10 @@ int spintries = 0; int i; #endif +#ifdef LOCK_PROFILING uint64_t waittime = 0; int contested = 0; +#endif uintptr_t v; KASSERT(rw->rw_lock != RW_DESTROYED, @@ -584,9 +586,11 @@ int spintries = 0; int i; #endif + uintptr_t v, x; +#ifdef LOCK_PROFILING uint64_t waittime = 0; - uintptr_t v, x; int contested = 0; +#endif if (rw_wlocked(rw)) { KASSERT(rw->lock_object.lo_flags & RW_RECURSE, Index: kern_sx.c =================================================================== --- kern_sx.c (revision 189780) +++ kern_sx.c (working copy) @@ -431,9 +431,12 @@ #ifdef ADAPTIVE_SX volatile struct thread *owner; #endif + uintptr_t x; +#ifdef LOCK_PROFILING uint64_t waittime = 0; - uintptr_t x; - int contested = 0, error = 0; + int contested = 0; +#endif + int error = 0; /* If we already hold an exclusive lock, then recurse. */ if (sx_xlocked(sx)) { @@ -652,8 +655,10 @@ #ifdef ADAPTIVE_SX volatile struct thread *owner; #endif +#ifdef LOCK_PROFILING uint64_t waittime = 0; int contested = 0; +#endif uintptr_t x; int error = 0; Index: kern_lock.c =================================================================== --- kern_lock.c (revision 189788) +++ kern_lock.c (working copy) @@ -333,16 +333,17 @@ const char *wmesg, int pri, int timo, const char *file, int line) { GIANT_DECLARE; - uint64_t waittime; struct lock_class *class; const char *iwmesg; uintptr_t tid, v, x; u_int op; - int contested, error, ipri, itimo, queue, wakeup_swapper; + int error, ipri, itimo, queue, wakeup_swapper; +#ifdef LOCK_PROFILING + uint64_t waittime = 0; + int contested = 0; +#endif - contested = 0; error = 0; - waittime = 0; tid = (uintptr_t)curthread; op = (flags & LK_TYPE_MASK); iwmesg = (wmesg == LK_WMESG_DEFAULT) ? lk->lock_object.lo_name : wmesg;