TS_READER_Q
q == TS_READER_Q ? "R" : q == TS_WRITER_Q ? "W" : "?"); \
(void) turnstile_block(ts, TS_READER_Q, lp,
kthread_t *next_reader = ts->ts_sleepq[TS_READER_Q].sq_first;
turnstile_wakeup(ts, TS_READER_Q, nreaders, NULL);
turnstile_wakeup(ts, TS_READER_Q, nreaders, NULL);
kthread_t *rp = ts->ts_sleepq[TS_READER_Q].sq_first;