/* * mutex_abort: * * Dump information about an error and panic the system. This * generates a lot of machine code in the DIAGNOSTIC case, so * we ask the compiler to not inline it. */ void __noinline mutex_abort(kmutex_t *mtx, const char *func, const char *msg) { LOCKDEBUG_ABORT(mtx, (MUTEX_SPIN_P(mtx) ? &mutex_spin_lockops : &mutex_adaptive_lockops), func, msg); }
/* * rw_abort: * * Dump information about an error and panic the system. This * generates a lot of machine code in the DIAGNOSTIC case, so * we ask the compiler to not inline it. */ static void __noinline rw_abort(krwlock_t *rw, const char *func, const char *msg) { if (panicstr != NULL) return; LOCKDEBUG_ABORT(rw, &rwlock_lockops, func, msg); }