Lines Matching refs:bits
248 ipc_entry_bits_t bits = entry->ie_bits; in ipc_right_lookup_read() local
249 if (__improbable(IE_BITS_GEN(bits) != MACH_PORT_GEN(name) || in ipc_right_lookup_read()
250 IE_BITS_TYPE(bits) == MACH_PORT_TYPE_NONE)) { in ipc_right_lookup_read()
258 *bitsp = bits; in ipc_right_lookup_read()
661 ipc_entry_bits_t bits; in ipc_right_check() local
676 bits = entry->ie_bits; in ipc_right_check()
677 assert((bits & MACH_PORT_TYPE_RECEIVE) == 0); in ipc_right_check()
678 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_check()
680 if (bits & MACH_PORT_TYPE_SEND) { in ipc_right_check()
681 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_SEND); in ipc_right_check()
682 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_check()
685 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_SEND_ONCE); in ipc_right_check()
686 assert(IE_BITS_UREFS(bits) == 1); in ipc_right_check()
694 if ((bits & MACH_PORT_TYPE_SEND) != 0) { in ipc_right_check()
699 bits = (bits & ~IE_BITS_TYPE_MASK) | MACH_PORT_TYPE_DEAD_NAME; in ipc_right_check()
720 if (IE_BITS_UREFS(bits) < MACH_PORT_UREFS_MAX) { in ipc_right_check()
721 bits++; /* increment urefs */ in ipc_right_check()
726 entry->ie_bits = bits; in ipc_right_check()
890 ipc_entry_bits_t bits; in ipc_right_destroy() local
893 bits = entry->ie_bits; in ipc_right_destroy()
894 type = IE_BITS_TYPE(bits); in ipc_right_destroy()
1039 ipc_entry_bits_t bits; in ipc_right_dealloc() local
1042 bits = entry->ie_bits; in ipc_right_dealloc()
1043 type = IE_BITS_TYPE(bits); in ipc_right_dealloc()
1052 assert(IE_BITS_UREFS(bits) == 0); in ipc_right_dealloc()
1070 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_dealloc()
1074 if (IE_BITS_UREFS(bits) == 1) { in ipc_right_dealloc()
1078 if (IE_BITS_UREFS(bits) < MACH_PORT_UREFS_MAX) { in ipc_right_dealloc()
1079 entry->ie_bits = bits - 1; /* decrement urefs */ in ipc_right_dealloc()
1095 assert(IE_BITS_UREFS(bits) == 1); in ipc_right_dealloc()
1101 bits = entry->ie_bits; in ipc_right_dealloc()
1102 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_DEAD_NAME); in ipc_right_dealloc()
1134 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_dealloc()
1140 bits = entry->ie_bits; in ipc_right_dealloc()
1141 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_DEAD_NAME); in ipc_right_dealloc()
1148 if (IE_BITS_UREFS(bits) == 1) { in ipc_right_dealloc()
1169 if (IE_BITS_UREFS(bits) < MACH_PORT_UREFS_MAX) { in ipc_right_dealloc()
1170 entry->ie_bits = bits - 1; /* decrement urefs */ in ipc_right_dealloc()
1188 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_dealloc()
1199 if (IE_BITS_UREFS(bits) == 1) { in ipc_right_dealloc()
1205 entry->ie_bits = bits & ~(IE_BITS_UREFS_MASK | in ipc_right_dealloc()
1209 if (IE_BITS_UREFS(bits) < MACH_PORT_UREFS_MAX) { in ipc_right_dealloc()
1210 entry->ie_bits = bits - 1; /* decrement urefs */ in ipc_right_dealloc()
1255 ipc_entry_bits_t bits; in ipc_right_delta() local
1257 bits = entry->ie_bits; in ipc_right_delta()
1276 if ((bits & MACH_PORT_TYPE_PORT_SET) == 0) { in ipc_right_delta()
1281 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_PORT_SET); in ipc_right_delta()
1282 assert(IE_BITS_UREFS(bits) == 0); in ipc_right_delta()
1308 if ((bits & MACH_PORT_TYPE_RECEIVE) == 0) { in ipc_right_delta()
1309 if ((bits & MACH_PORT_TYPE_EX_RECEIVE) == 0) { in ipc_right_delta()
1347 if (bits & MACH_PORT_TYPE_SEND) { in ipc_right_delta()
1348 assert(IE_BITS_TYPE(bits) == in ipc_right_delta()
1350 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_delta()
1364 bits &= ~MACH_PORT_TYPE_RECEIVE; in ipc_right_delta()
1365 bits |= MACH_PORT_TYPE_EX_RECEIVE; in ipc_right_delta()
1377 bits &= ~IE_BITS_TYPE_MASK; in ipc_right_delta()
1378 bits |= (MACH_PORT_TYPE_DEAD_NAME | MACH_PORT_TYPE_EX_RECEIVE); in ipc_right_delta()
1382 if (IE_BITS_UREFS(bits) < MACH_PORT_UREFS_MAX) { in ipc_right_delta()
1383 bits++; /* increment urefs */ in ipc_right_delta()
1388 entry->ie_bits = bits; in ipc_right_delta()
1391 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_RECEIVE); in ipc_right_delta()
1392 assert(IE_BITS_UREFS(bits) == 0); in ipc_right_delta()
1411 if ((bits & MACH_PORT_TYPE_SEND_ONCE) == 0) { in ipc_right_delta()
1415 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_SEND_ONCE); in ipc_right_delta()
1416 assert(IE_BITS_UREFS(bits) == 1); in ipc_right_delta()
1465 if (bits & MACH_PORT_TYPE_SEND_RIGHTS) { in ipc_right_delta()
1476 bits = entry->ie_bits; in ipc_right_delta()
1479 } else if ((bits & MACH_PORT_TYPE_DEAD_NAME) == 0) { in ipc_right_delta()
1484 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_DEAD_NAME); in ipc_right_delta()
1485 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_delta()
1494 urefs = IE_BITS_UREFS(bits); in ipc_right_delta()
1518 entry->ie_bits = bits + delta; in ipc_right_delta()
1537 if ((bits & MACH_PORT_TYPE_SEND) == 0) { in ipc_right_delta()
1539 if ((bits & MACH_PORT_TYPE_DEAD_NAME) == 0 in ipc_right_delta()
1545 && (((bits & MACH_PORT_TYPE_RECEIVE) == 0) || (delta != 1)) in ipc_right_delta()
1572 urefs = IE_BITS_UREFS(bits); in ipc_right_delta()
1607 if (bits & MACH_PORT_TYPE_RECEIVE) { in ipc_right_delta()
1610 assert(IE_BITS_TYPE(bits) == in ipc_right_delta()
1613 entry->ie_bits = bits & ~(IE_BITS_UREFS_MASK | in ipc_right_delta()
1617 assert(IE_BITS_TYPE(bits) == in ipc_right_delta()
1629 entry->ie_bits = bits + delta; in ipc_right_delta()
1702 ipc_entry_bits_t bits; in ipc_right_destruct() local
1708 bits = entry->ie_bits; in ipc_right_destruct()
1712 if ((bits & MACH_PORT_TYPE_RECEIVE) == 0) { in ipc_right_destruct()
1716 if ((bits & MACH_PORT_TYPE_EX_RECEIVE) == 0) { in ipc_right_destruct()
1722 if (srdelta && (bits & MACH_PORT_TYPE_SEND) == 0) { in ipc_right_destruct()
1759 urefs = IE_BITS_UREFS(bits); in ipc_right_destruct()
1785 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_SEND_RECEIVE); in ipc_right_destruct()
1786 entry->ie_bits = bits & ~(IE_BITS_UREFS_MASK | in ipc_right_destruct()
1789 entry->ie_bits = bits + srdelta; in ipc_right_destruct()
1798 bits = entry->ie_bits; in ipc_right_destruct()
1799 if (bits & MACH_PORT_TYPE_SEND) { in ipc_right_destruct()
1800 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_destruct()
1801 assert(IE_BITS_UREFS(bits) <= MACH_PORT_UREFS_MAX); in ipc_right_destruct()
1814 bits &= ~MACH_PORT_TYPE_RECEIVE; in ipc_right_destruct()
1815 bits |= MACH_PORT_TYPE_EX_RECEIVE; in ipc_right_destruct()
1827 bits &= ~IE_BITS_TYPE_MASK; in ipc_right_destruct()
1828 bits |= (MACH_PORT_TYPE_DEAD_NAME | MACH_PORT_TYPE_EX_RECEIVE); in ipc_right_destruct()
1831 if (IE_BITS_UREFS(bits) < MACH_PORT_UREFS_MAX) { in ipc_right_destruct()
1832 bits++; /* increment urefs */ in ipc_right_destruct()
1837 entry->ie_bits = bits; in ipc_right_destruct()
1840 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_RECEIVE); in ipc_right_destruct()
1841 assert(IE_BITS_UREFS(bits) == 0); in ipc_right_destruct()
1887 ipc_entry_bits_t bits; in ipc_right_info() local
1891 bits = entry->ie_bits; in ipc_right_info()
1895 if (bits & MACH_PORT_TYPE_RECEIVE) { in ipc_right_info()
1905 } else if (bits & MACH_PORT_TYPE_SEND_RIGHTS) { in ipc_right_info()
1918 bits = entry->ie_bits; in ipc_right_info()
1919 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_DEAD_NAME); in ipc_right_info()
1927 type |= IE_BITS_TYPE(bits); in ipc_right_info()
1930 *urefsp = IE_BITS_UREFS(bits); in ipc_right_info()
1953 ipc_entry_bits_t bits; in ipc_right_copyin_check_reply() local
1957 bits = reply_entry->ie_bits; in ipc_right_copyin_check_reply()
1962 if ((bits & MACH_PORT_TYPE_RECEIVE) == 0) { in ipc_right_copyin_check_reply()
1968 if ((bits & MACH_PORT_TYPE_RECEIVE) == 0) { in ipc_right_copyin_check_reply()
1980 if (bits & MACH_PORT_TYPE_DEAD_NAME) { in ipc_right_copyin_check_reply()
1984 if ((bits & MACH_PORT_TYPE_SEND_RIGHTS) == 0) { in ipc_right_copyin_check_reply()
2011 if ((bits & MACH_PORT_TYPE_SEND_ONCE) == 0) { in ipc_right_copyin_check_reply()
2015 if ((bits & MACH_PORT_TYPE_SEND) == 0) { in ipc_right_copyin_check_reply()
2130 ipc_entry_bits_t bits; in ipc_right_copyin() local
2141 bits = entry->ie_bits; in ipc_right_copyin()
2147 if ((bits & MACH_PORT_TYPE_RECEIVE) == 0) { in ipc_right_copyin()
2172 if ((bits & MACH_PORT_TYPE_RECEIVE) == 0) { in ipc_right_copyin()
2202 if ((bits & MACH_PORT_TYPE_RECEIVE) == 0) { in ipc_right_copyin()
2258 if (bits & MACH_PORT_TYPE_SEND) { in ipc_right_copyin()
2259 assert(IE_BITS_TYPE(bits) == in ipc_right_copyin()
2261 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_copyin()
2264 bits &= ~MACH_PORT_TYPE_RECEIVE; in ipc_right_copyin()
2265 bits |= MACH_PORT_TYPE_EX_RECEIVE; in ipc_right_copyin()
2266 entry->ie_bits = bits; in ipc_right_copyin()
2272 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_RECEIVE); in ipc_right_copyin()
2273 assert(IE_BITS_UREFS(bits) == 0); in ipc_right_copyin()
2320 if (bits & MACH_PORT_TYPE_DEAD_NAME) { in ipc_right_copyin()
2326 if ((bits & MACH_PORT_TYPE_SEND_RIGHTS) == 0) { in ipc_right_copyin()
2330 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_copyin()
2336 bits = entry->ie_bits; in ipc_right_copyin()
2342 if ((bits & MACH_PORT_TYPE_SEND) == 0) { in ipc_right_copyin()
2343 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_SEND_ONCE); in ipc_right_copyin()
2373 if (bits & MACH_PORT_TYPE_DEAD_NAME) { in ipc_right_copyin()
2379 if ((bits & MACH_PORT_TYPE_SEND_RIGHTS) == 0) { in ipc_right_copyin()
2383 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_copyin()
2389 bits = entry->ie_bits; in ipc_right_copyin()
2395 if ((bits & MACH_PORT_TYPE_SEND) == 0) { in ipc_right_copyin()
2396 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_SEND_ONCE); in ipc_right_copyin()
2414 if (IE_BITS_UREFS(bits) == 1) { in ipc_right_copyin()
2416 if (bits & MACH_PORT_TYPE_RECEIVE) { in ipc_right_copyin()
2419 assert(IE_BITS_TYPE(bits) == in ipc_right_copyin()
2423 entry->ie_bits = bits & ~ in ipc_right_copyin()
2428 assert(IE_BITS_TYPE(bits) == in ipc_right_copyin()
2447 if (IE_BITS_UREFS(bits) < MACH_PORT_UREFS_MAX) { in ipc_right_copyin()
2448 entry->ie_bits = bits - 1; /* decrement urefs */ in ipc_right_copyin()
2462 if (bits & MACH_PORT_TYPE_DEAD_NAME) { in ipc_right_copyin()
2468 if ((bits & MACH_PORT_TYPE_SEND_RIGHTS) == 0) { in ipc_right_copyin()
2472 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_copyin()
2478 bits = entry->ie_bits; in ipc_right_copyin()
2489 if ((bits & MACH_PORT_TYPE_SEND_ONCE) == 0) { in ipc_right_copyin()
2490 assert(bits & MACH_PORT_TYPE_SEND); in ipc_right_copyin()
2509 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_SEND_ONCE); in ipc_right_copyin()
2510 assert(IE_BITS_UREFS(bits) == 1); in ipc_right_copyin()
2531 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_DEAD_NAME); in ipc_right_copyin()
2532 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_copyin()
2545 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_DEAD_NAME); in ipc_right_copyin()
2546 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_copyin()
2554 if (IE_BITS_UREFS(bits) == 1) { in ipc_right_copyin()
2558 if (IE_BITS_UREFS(bits) < MACH_PORT_UREFS_MAX) { in ipc_right_copyin()
2559 entry->ie_bits = bits - 1; /* decrement urefs */ in ipc_right_copyin()
2592 ipc_entry_bits_t bits; in ipc_right_copyin_two_move_sends() local
2601 bits = entry->ie_bits; in ipc_right_copyin_two_move_sends()
2603 if ((bits & MACH_PORT_TYPE_SEND) == 0) { in ipc_right_copyin_two_move_sends()
2607 urefs = IE_BITS_UREFS(bits); in ipc_right_copyin_two_move_sends()
2644 if (IE_BITS_UREFS(bits) < MACH_PORT_UREFS_MAX) { in ipc_right_copyin_two_move_sends()
2645 entry->ie_bits = bits - 2; /* decrement urefs */ in ipc_right_copyin_two_move_sends()
2660 if (bits & MACH_PORT_TYPE_RECEIVE) { in ipc_right_copyin_two_move_sends()
2663 assert(IE_BITS_TYPE(bits) == in ipc_right_copyin_two_move_sends()
2667 entry->ie_bits = bits & ~(IE_BITS_UREFS_MASK | MACH_PORT_TYPE_SEND); in ipc_right_copyin_two_move_sends()
2671 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_SEND); in ipc_right_copyin_two_move_sends()
2882 ipc_entry_bits_t bits; in ipc_right_copyout() local
2887 bits = entry->ie_bits; in ipc_right_copyout()
2907 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_NONE); in ipc_right_copyout()
2908 assert(IE_BITS_UREFS(bits) == 0); in ipc_right_copyout()
2919 entry->ie_bits = bits | (MACH_PORT_TYPE_SEND_ONCE | 1); /* set urefs to 1 */ in ipc_right_copyout()
2926 if (bits & MACH_PORT_TYPE_SEND) { in ipc_right_copyout()
2927 mach_port_urefs_t urefs = IE_BITS_UREFS(bits); in ipc_right_copyout()
2949 } else if (bits & MACH_PORT_TYPE_RECEIVE) { in ipc_right_copyout()
2950 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_RECEIVE); in ipc_right_copyout()
2951 assert(IE_BITS_UREFS(bits) == 0); in ipc_right_copyout()
2957 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_NONE); in ipc_right_copyout()
2958 assert(IE_BITS_UREFS(bits) == 0); in ipc_right_copyout()
2968 entry->ie_bits = (bits | MACH_PORT_TYPE_SEND) + 1; /* increment urefs */ in ipc_right_copyout()
3061 assert((bits & MACH_PORT_TYPE_RECEIVE) == 0); in ipc_right_copyout()
3062 if (bits & MACH_PORT_TYPE_SEND) { in ipc_right_copyout()
3063 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_SEND); in ipc_right_copyout()
3064 assert(IE_BITS_UREFS(bits) > 0); in ipc_right_copyout()
3067 assert(IE_BITS_TYPE(bits) == MACH_PORT_TYPE_NONE); in ipc_right_copyout()
3068 assert(IE_BITS_UREFS(bits) == 0); in ipc_right_copyout()
3070 entry->ie_bits = bits | MACH_PORT_TYPE_RECEIVE; in ipc_right_copyout()
3083 if (bits & MACH_PORT_TYPE_SEND) { in ipc_right_copyout()