Lines Matching refs:thread
84 #include <kern/thread.h>
255 /* waitq/mqueue still locked, thread locked */
264 * go look for another thread that can.
292 continue; /* find another thread */
299 * This thread is going to take this message,
515 /* waitq still locked, thread locked */
530 * go look for another thread that can.
539 * We found a waiting thread.
541 * the thread we wake up will get that as its status.
554 * receiver thread didn't specifically ask for special too
570 * Otherwise, this thread needs to be released to run
717 thread_t thread)
790 ipc_mqueue_select_on_thread(port_mq, option, max_size, thread);
804 ipc_mqueue_select_on_thread(mqueue, option, max_size, thread);
820 thread->ith_state = MACH_RCV_TIMED_OUT;
825 thread_lock(thread);
826 thread->ith_state = MACH_RCV_IN_PROGRESS;
827 thread->ith_option = option;
828 thread->ith_msize = max_size;
840 thread);
845 thread_unlock(thread);
857 * "post" it to thread.
860 * thread not locked.
871 thread_t thread)
890 rcv_size = ipc_kmsg_copyout_size(kmsg, thread->map);
891 if (rcv_size + REQUESTED_TRAILER_SIZE(thread_is_64bit(thread), option) > max_size) {
894 thread->ith_receiver_name = mqueue->imq_receiver_name;
895 thread->ith_kmsg = IKM_NULL;
896 thread->ith_msize = rcv_size;
897 thread->ith_seqno = 0;
898 thread->ith_state = mr;
905 thread->ith_seqno = mqueue->imq_seqno++;
906 thread->ith_kmsg = kmsg;
907 thread->ith_state = mr;
1109 * Move messages from the specified queue to the per-thread
1167 mqueue->imq_msgcount++; /* give it to the awakened thread */