SX_LOCK_RECURSED
atomic_set_ptr(&sx->sx_lock, SX_LOCK_RECURSED);
atomic_set_ptr(&sx->sx_lock, SX_LOCK_RECURSED);
if (__predict_false(x & SX_LOCK_RECURSED)) {
atomic_clear_ptr(&sx->sx_lock, SX_LOCK_RECURSED);
SX_LOCK_EXCLUSIVE_WAITERS | SX_LOCK_RECURSED | SX_LOCK_WRITE_SPINNER)