Lines Matching refs:in_critical
542 sx_drop_critical(uintptr_t x, bool *in_critical, int *extra_work) in sx_drop_critical() argument
547 if (*in_critical) { in sx_drop_critical()
549 *in_critical = false; in sx_drop_critical()
554 #define sx_drop_critical(x, in_critical, extra_work) do { } while (0) argument
572 bool in_critical = false; in _sx_xlock_hard() local
677 sx_drop_critical(x, &in_critical, &extra_work); in _sx_xlock_hard()
701 if (!in_critical) { in _sx_xlock_hard()
703 in_critical = true; in _sx_xlock_hard()
709 in_critical = false; in _sx_xlock_hard()
750 sx_drop_critical(x, &in_critical, &extra_work); in _sx_xlock_hard()
766 sx_drop_critical(x, &in_critical, in _sx_xlock_hard()
772 sx_drop_critical(x, &in_critical, &extra_work); in _sx_xlock_hard()
805 if (in_critical) { in _sx_xlock_hard()
816 in_critical = false; in _sx_xlock_hard()
882 if (in_critical) in _sx_xlock_hard()