- waitq_type:2, /* only public field */
- waitq_fifo:1, /* fifo wakeup policy? */
- waitq_prepost:1, /* waitq supports prepost? */
- waitq_irq:1, /* waitq requires interrupts disabled */
- waitq_eventmask:_EVENT_MASK_BITS;
- /* the wait queue set (set-of-sets) to which this queue belongs */
- hw_lock_data_t waitq_interlock; /* interlock */
+ waitq_type:2, /* only public field */
+ waitq_fifo:1, /* fifo wakeup policy? */
+ waitq_prepost:1, /* waitq supports prepost? */
+ waitq_irq:1, /* waitq requires interrupts disabled */
+ waitq_isvalid:1, /* waitq structure is valid */
+ waitq_turnstile:1, /* waitq is embedded in a turnstile */
+ waitq_eventmask:_EVENT_MASK_BITS;
+ /* the wait queue set (set-of-sets) to which this queue belongs */
+#if __arm64__
+ hw_lock_bit_t waitq_interlock; /* interlock */
+#else
+ hw_lock_data_t waitq_interlock; /* interlock */
+#endif /* __arm64__ */