turnstile
struct turnstile turnstile0 __cacheline_aligned;
SLIST_HEAD(, turnstile) l_pi_lenders; /* l: ts lending us priority */
struct turnstile *l_ts; /* l: current turnstile */
SLIST_ENTRY(turnstile) ts_pichain;
LIST_HEAD(tschain, turnstile);
LIST_ENTRY(turnstile) ts_chain; /* link on hash chain */
struct turnstile *ts_free; /* turnstile free list */