IQS_IDLE
while (!atomic_cmpset_int(&iq->state, IQS_IDLE, IQS_DISABLED))
if (atomic_cmpset_int(&iq->state, IQS_IDLE, IQS_BUSY)) {
(void) atomic_cmpset_int(&iq->state, IQS_BUSY, IQS_IDLE);
if (atomic_cmpset_int(&iq->state, IQS_IDLE, IQS_BUSY)) {
(void) atomic_cmpset_int(&iq->state, IQS_BUSY, IQS_IDLE);
if (atomic_cmpset_int(&q->state, IQS_IDLE,
IQS_BUSY, IQS_IDLE);
(void) atomic_cmpset_int(&q->state, IQS_BUSY, IQS_IDLE);
atomic_store_rel_int(&iq->state, IQS_IDLE);