Lines Matching refs:io
130 #define IO_VALID(io) (((io) != IO_NULL) && ((io) != IO_DEAD)) argument
152 #define io_bits(io) atomic_load_explicit(&(io)->io_bits, memory_order_relaxed) argument
155 io_bits_or(ipc_object_t io, ipc_object_bits_t bits) in io_bits_or() argument
161 os_atomic_store(&io->io_bits, io_bits(io) | bits, relaxed); in io_bits_or()
165 io_bits_andnot(ipc_object_t io, ipc_object_bits_t bits) in io_bits_andnot() argument
171 os_atomic_store(&io->io_bits, io_bits(io) & ~bits, relaxed); in io_bits_andnot()
174 #define io_active(io) ((io_bits(io) & IO_BITS_ACTIVE) != 0) argument
176 #define io_otype(io) ((io_bits(io) & IO_BITS_OTYPE) >> 16) argument
177 #define io_kotype(io) (io_bits(io) & IO_BITS_KOTYPE) argument
178 #define io_is_kobject(io) (io_kotype(io) != 0) argument
179 #define io_is_kolabeled(io) ((io_bits(io) & IO_BITS_KOLABEL) != 0) argument
197 #define io_waitq(io) \ argument
198 (&__container_of(io, struct ipc_object_waitq, iowq_object)->iowq_waitq)
202 #define io_lock(io) ({ \ argument
203 ipc_object_t __io = (io); \
206 #define io_unlock(io) ipc_object_unlock(io) argument
207 #define io_lock_held(io) assert(waitq_held(io_waitq(io))) argument
208 #define io_lock_held_kdp(io) waitq_held(io_waitq(io)) argument
209 #define io_lock_allow_invalid(io) ipc_object_lock_allow_invalid(io) argument
211 #define io_reference(io) ipc_object_reference(io) argument
212 #define io_release(io) ipc_object_release(io) argument
213 #define io_release_safe(io) ipc_object_release_safe(io) argument
214 #define io_release_live(io) ipc_object_release_live(io) argument