SX_SHARERS
if ((x & SX_LOCK_WRITE_SPINNER) && SX_SHARERS(x) == 0) {
n = SX_SHARERS(x);
n = SX_SHARERS(x);
if (((x & SX_LOCK_WRITE_SPINNER) && SX_SHARERS(x) == 0) ||
(state & SX_LOCK_SHARED) == 0 ? 0 : SX_SHARERS(state));
(state & SX_LOCK_SHARED) == 0 ? 0 : SX_SHARERS(state));
if (SX_SHARERS(*xp) > 1 || !(*xp & SX_LOCK_WAITERS)) {
db_printf("SLOCK: %ju\n", (uintmax_t)SX_SHARERS(sx->sx_lock));
(uintmax_t)SX_SHARERS(sx->sx_lock));
return ((x & SX_LOCK_SHARED) != 0 ? (SX_SHARERS(x) != 0) :
if (SX_SHARERS(x) > 1)
} else if (SX_SHARERS(x) > 0) {
n = SX_SHARERS(x);
n = SX_SHARERS(x);
} else if (SX_SHARERS(x) > 0 && sleep_reason == WRITER) {
(state & SX_LOCK_SHARED) == 0 ? 0 : SX_SHARERS(state));
(state & SX_LOCK_SHARED) == 0 ? 0 : SX_SHARERS(state));