Lines Matching refs:receiver
260 * Found a receiver. see if they can handle the message
336 * the message is queued, given to a receiver, or destroyed.
468 * Post a message to a waiting receiver or enqueue it. If a
469 * receiver is waiting, we can release our reserved space in
487 * Check for a receiver for the message.
493 thread_t receiver;
495 receiver = wait_queue_wakeup64_identity_locked(
502 if (receiver == THREAD_NULL) {
516 if (receiver->ith_msize <
518 REQUESTED_TRAILER_SIZE(receiver->ith_option)) {
519 receiver->ith_msize = kmsg->ikm_header->msgh_size;
520 receiver->ith_state = MACH_RCV_TOO_LARGE;
522 receiver->ith_state = MACH_MSG_SUCCESS;
527 * receiver thread didn't specifically ask for special too
530 if ((receiver->ith_state == MACH_MSG_SUCCESS) ||
531 !(receiver->ith_option & MACH_RCV_LARGE)) {
533 receiver->ith_kmsg = kmsg;
534 receiver->ith_seqno = mqueue->imq_seqno++;
535 thread_unlock(receiver);
547 receiver->ith_kmsg = IKM_NULL;
548 receiver->ith_seqno = 0;
549 thread_unlock(receiver);
826 * A receiver discovered that there was a message on the queue