Lines Matching refs:entry

113 	ipc_entry_t entry;  in ipc_entry_lookup()  local
121 entry = ipc_entry_table_get(table, index); in ipc_entry_lookup()
122 if (__improbable(!entry || in ipc_entry_lookup()
123 IE_BITS_GEN(entry->ie_bits) != MACH_PORT_GEN(name) || in ipc_entry_lookup()
124 IE_BITS_TYPE(entry->ie_bits) == MACH_PORT_TYPE_NONE)) { in ipc_entry_lookup()
128 return entry; in ipc_entry_lookup()
152 ipc_entry_t entry; in ipc_entries_hold() local
165 entry = ipc_entry_table_base(table); in ipc_entries_hold()
168 next_free = entry->ie_next; in ipc_entries_hold()
173 entry = ipc_entry_table_get(table, next_free); in ipc_entries_hold()
175 assert(entry && entry->ie_object == IO_NULL); in ipc_entries_hold()
204 ipc_entry_t base, entry; in ipc_entry_claim() local
216 entry = ipc_entry_table_get(table, first_free); in ipc_entry_claim()
217 assert(entry && in ipc_entry_claim()
218 ipc_entry_table_contains(table, entry->ie_next) && in ipc_entry_claim()
219 entry->ie_object == IO_NULL); in ipc_entry_claim()
220 base->ie_next = entry->ie_next; in ipc_entry_claim()
231 gen = ipc_entry_new_gen(entry->ie_bits); in ipc_entry_claim()
232 if (__improbable(ipc_entry_gen_rolled(entry->ie_bits, gen))) { in ipc_entry_claim()
236 entry->ie_bits = gen; in ipc_entry_claim()
237 entry->ie_request = IE_REQ_NONE; in ipc_entry_claim()
238 entry->ie_object = object; in ipc_entry_claim()
249 *entryp = entry; in ipc_entry_claim()
343 ipc_entry_t entry; in ipc_entry_alloc_name() local
365 entry = ipc_entry_table_get(table, index); in ipc_entry_alloc_name()
366 if (!entry) { in ipc_entry_alloc_name()
382 if (!IE_BITS_TYPE(entry->ie_bits)) { in ipc_entry_alloc_name()
398 prev_entry->ie_next = entry->ie_next; in ipc_entry_alloc_name()
421 entry->ie_bits = gen; in ipc_entry_alloc_name()
422 entry->ie_request = IE_REQ_NONE; in ipc_entry_alloc_name()
423 *entryp = entry; in ipc_entry_alloc_name()
425 assert(entry->ie_object == IO_NULL); in ipc_entry_alloc_name()
427 } else if (IE_BITS_GEN(entry->ie_bits) == gen) { in ipc_entry_alloc_name()
429 *entryp = entry; in ipc_entry_alloc_name()
454 ipc_entry_t entry) in ipc_entry_dealloc() argument
460 assert(entry->ie_object == object); in ipc_entry_dealloc()
461 assert(entry->ie_request == IE_REQ_NONE); in ipc_entry_dealloc()
467 if (entry->ie_request != IE_REQ_NONE) { in ipc_entry_dealloc()
476 assert(index > 0 && entry == ipc_entry_table_get(table, index)); in ipc_entry_dealloc()
478 assert(IE_BITS_GEN(entry->ie_bits) == MACH_PORT_GEN(name)); in ipc_entry_dealloc()
479 entry->ie_bits &= (IE_BITS_GEN_MASK | IE_BITS_ROLL_MASK); in ipc_entry_dealloc()
480 entry->ie_next = base->ie_next; in ipc_entry_dealloc()
481 entry->ie_object = IO_NULL; in ipc_entry_dealloc()
485 ipc_entry_modified(space, name, entry); in ipc_entry_dealloc()
502 __assert_only ipc_entry_t entry) in ipc_entry_modified() argument
510 assert(entry == ipc_entry_table_get(table, index)); in ipc_entry_modified()
525 entry->ie_bits, in ipc_entry_modified()
667 ipc_entry_t entry = &nbase[i]; in ipc_entry_grow_table() local
677 if (entry->ie_object != osnap_object || in ipc_entry_grow_table()
678 IE_BITS_TYPE(entry->ie_bits) != IE_BITS_TYPE(osnap_bits)) { in ipc_entry_grow_table()
679 if (entry->ie_object != IO_NULL && in ipc_entry_grow_table()
680 IE_BITS_TYPE(entry->ie_bits) == MACH_PORT_TYPE_SEND) { in ipc_entry_grow_table()
681 ipc_hash_table_delete(ntable, entry->ie_object, i, entry); in ipc_entry_grow_table()
684 entry->ie_object = osnap_object; in ipc_entry_grow_table()
685 entry->ie_bits = osnap_bits; in ipc_entry_grow_table()
686 entry->ie_request = osnap_request; /* or ie_next */ in ipc_entry_grow_table()
690 ipc_hash_table_insert(ntable, osnap_object, i, entry); in ipc_entry_grow_table()
693 entry->ie_bits = osnap_bits; in ipc_entry_grow_table()
694 entry->ie_request = osnap_request; /* or ie_next */ in ipc_entry_grow_table()