| /xnu-8792.41.9/osfmk/kern/ |
| H A D | lock_ticket.c | 123 __hw_lck_ticket_invalid_panic(hw_lck_ticket_t *lck) in __hw_lck_ticket_invalid_panic() argument 125 panic("Invalid HW ticket lock %p <0x%08x>", lck, lck->lck_value); in __hw_lck_ticket_invalid_panic() 130 __lck_ticket_invalid_panic(lck_ticket_t *lck) in __lck_ticket_invalid_panic() argument 133 lck, *(uint32_t *)lck, lck->lck_ticket_owner, in __lck_ticket_invalid_panic() 134 lck->tu.lck_value, lck->lck_ticket_padding); in __lck_ticket_invalid_panic() 139 __lck_ticket_owned_panic(lck_ticket_t *lck) in __lck_ticket_owned_panic() argument 143 panic("Ticket lock %p is unexpectedly owned by thread %p", lck, self); in __lck_ticket_owned_panic() 148 __lck_ticket_not_owned_panic(lck_ticket_t *lck) in __lck_ticket_not_owned_panic() argument 152 panic("Ticket lock %p is unexpectedly not owned by thread %p", lck, self); in __lck_ticket_not_owned_panic() 156 hw_lck_ticket_verify(hw_lck_ticket_t *lck) in hw_lck_ticket_verify() argument [all …]
|
| H A D | lock_mtx.h | 93 lck_mtx_t *lck, 97 lck_mtx_t *lck); 100 lck_mtx_t *lck); 103 lck_mtx_t *lck, 107 lck_mtx_t *lck, 111 lck_mtx_t *lck, 117 lck_mtx_t *lck, 127 lck_mtx_t *lck, 131 #define LCK_MTX_ASSERT(lck, type) lck_mtx_assert((lck),(type)) argument 133 #define LCK_MTX_ASSERT(lck, type) argument [all …]
|
| H A D | test_lock.c | 39 hw_lck_ticket_test_wait_for_delta(hw_lck_ticket_t *lck, uint8_t delta, int msec) in hw_lck_ticket_test_wait_for_delta() argument 45 tmp.lck_value = os_atomic_load(&lck->lck_value, relaxed); in hw_lck_ticket_test_wait_for_delta() 64 hw_lck_ticket_t *lck = arg; in hw_lck_ticket_allow_invalid_worker() local 68 hw_lck_ticket_test_wait_for_delta(lck, 1, 10); in hw_lck_ticket_allow_invalid_worker() 70 rc = hw_lck_ticket_lock_allow_invalid(lck, in hw_lck_ticket_allow_invalid_worker() 84 hw_lck_ticket_t *lck; in hw_lck_ticket_allow_invalid_test() local 97 lck = (hw_lck_ticket_t *)addr; in hw_lck_ticket_allow_invalid_test() 98 rc = hw_lck_ticket_lock_allow_invalid(lck, in hw_lck_ticket_allow_invalid_test() 103 hw_lck_ticket_init(lck, NULL); in hw_lck_ticket_allow_invalid_test() 105 assert(hw_lck_ticket_lock_try(lck, NULL)); in hw_lck_ticket_allow_invalid_test() [all …]
|
| H A D | lock_rw.h | 179 lck_rw_t *lck; member 204 #define LCK_RW_ASSERT(lck, type) lck_rw_assert((lck),(type)) argument 206 #define LCK_RW_ASSERT(lck, type) argument 210 #define LCK_RW_ASSERT_DEBUG(lck, type) lck_rw_assert((lck),(type)) argument 212 #define LCK_RW_ASSERT_DEBUG(lck, type) argument 250 lck_rw_t *lck, 266 lck_rw_t *lck, 281 lck_rw_t *lck, 297 lck_rw_t *lck, 316 lck_rw_t *lck, [all …]
|
| H A D | simple_lock.h | 124 #define hw_lock_lock(lck, grp) \ argument 125 hw_lock_lock(lck) 127 #define hw_lock_lock_nopreempt(lck, grp) \ argument 128 hw_lock_lock_nopreempt(lck) 130 #define hw_lock_to(lck, spec, grp) \ argument 131 hw_lock_to(lck, spec) 133 #define hw_lock_to_nopreempt(lck, spec, grp) \ argument 134 hw_lock_to_nopreempt(lck, spec) 136 #define hw_lock_try(lck, grp) \ argument 137 hw_lock_try(lck) [all …]
|
| H A D | lock_rw.c | 71 #define LCK_RW_WRITER_EVENT(lck) (event_t)((uintptr_t)(lck)+1) argument 72 #define LCK_RW_READER_EVENT(lck) (event_t)((uintptr_t)(lck)+2) argument 137 lck_rw_t *lck; in lck_rw_alloc_init() local 139 lck = zalloc_flags(KT_LCK_RW, Z_WAITOK | Z_ZERO); in lck_rw_alloc_init() 140 lck_rw_init(lck, grp, attr); in lck_rw_alloc_init() 141 return lck; in lck_rw_alloc_init() 173 lck_rw_t *lck, in lck_rw_init() argument 183 *lck = (lck_rw_t){ in lck_rw_init() 204 lck_rw_t *lck, in lck_rw_free() argument 207 lck_rw_destroy(lck, grp); in lck_rw_free() [all …]
|
| H A D | ticket_lock.h | 163 #define hw_lck_ticket_init(lck, grp) hw_lck_ticket_init(lck) argument 164 #define hw_lck_ticket_init_locked(lck, grp) hw_lck_ticket_init_locked(lck) argument 165 #define hw_lck_ticket_destroy(lck, grp) hw_lck_ticket_destroy(lck) argument 166 #define hw_lck_ticket_lock(lck, grp) hw_lck_ticket_lock(lck) argument 167 #define hw_lck_ticket_lock_nopreempt(lck, grp) hw_lck_ticket_lock_nopreempt(lck) argument 168 #define hw_lck_ticket_lock_to(lck, pol, grp) hw_lck_ticket_lock_to(lck, pol) argument 169 #define hw_lck_ticket_lock_nopreempt_to(lck, pol, grp) \ argument 170 hw_lck_ticket_lock_nopreempt_to(lck, pol) 171 #define hw_lck_ticket_lock_try(lck, grp) hw_lck_ticket_lock_try(lck) argument 172 #define hw_lck_ticket_lock_try_nopreempt(lck, grp) \ argument [all …]
|
| H A D | lock_mtx.c | 143 #define LCK_MTX_EVENT(lck) CAST_EVENT64_T(&(lck)->lck_mtx.data) argument 197 __lck_mtx_invalid_panic(lck_mtx_t *lck) in __lck_mtx_invalid_panic() argument 201 lck, lck->lck_mtx_tsid, lck->lck_mtx_type, lck->lck_mtx_grp, in __lck_mtx_invalid_panic() 202 lck->lck_mtx.data, ctid_get_thread_unsafe(lck->lck_mtx.owner), in __lck_mtx_invalid_panic() 203 lck->lck_mtx.as_tail, lck->lck_mtx.ilk_tail); in __lck_mtx_invalid_panic() 222 __lck_mtx_lock_is_sleepable_panic(lck_mtx_t *lck) in __lck_mtx_lock_is_sleepable_panic() argument 227 panic("Mutex %p is held as a full-mutex (spin-always lock attempted)", lck); in __lck_mtx_lock_is_sleepable_panic() 233 __lck_mtx_preemption_disabled_panic(lck_mtx_t *lck, int expected) in __lck_mtx_preemption_disabled_panic() argument 236 lck, get_preemption_level() - expected); in __lck_mtx_preemption_disabled_panic() 241 __lck_mtx_at_irq_panic(lck_mtx_t *lck) in __lck_mtx_at_irq_panic() argument [all …]
|
| H A D | locks.h | 61 lck_spin_t *lck, 66 lck_spin_t *lck); 69 lck_spin_t *lck, 73 lck_spin_t *lck); 76 lck_spin_t *lck, 80 lck_spin_t *lck, 84 lck_spin_t *lck, 90 lck_spin_t *lck, 97 lck_spin_t *lck, 106 lck_spin_t *lck); [all …]
|
| H A D | locks.c | 290 lck_spinlock_timeout_hit(void *lck, uintptr_t owner) in lck_spinlock_timeout_hit() argument 301 lsti->lock = lck; in lck_spinlock_timeout_hit() 999 lck_spin_t *lck, in lck_spin_sleep_grp() argument 1013 lck_spin_unlock(lck); in lck_spin_sleep_grp() 1016 lck_spin_lock_grp(lck, grp); in lck_spin_sleep_grp() 1019 lck_spin_unlock(lck); in lck_spin_sleep_grp() 1027 lck_spin_t *lck, in lck_spin_sleep() argument 1032 return lck_spin_sleep_grp(lck, lck_sleep_action, event, interruptible, LCK_GRP_NULL); in lck_spin_sleep() 1040 lck_spin_t *lck, in lck_spin_sleep_deadline() argument 1054 lck_spin_unlock(lck); in lck_spin_sleep_deadline() [all …]
|
| H A D | recount.c | 159 _seqlock_shared_lock_slowpath(const uint32_t *lck, uint32_t gen) in _seqlock_shared_lock_slowpath() argument 163 gen = hw_wait_while_equals32((uint32_t *)(uintptr_t)lck, gen); in _seqlock_shared_lock_slowpath() 170 _seqlock_shared_lock(const uint32_t *lck) in _seqlock_shared_lock() argument 172 uint32_t gen = os_atomic_load(lck, acquire); in _seqlock_shared_lock() 174 _seqlock_shared_lock_slowpath(lck, gen); in _seqlock_shared_lock() 180 _seqlock_shared_try_unlock(const uint32_t *lck, uintptr_t on_enter) in _seqlock_shared_try_unlock() argument 182 return os_atomic_load(lck, acquire) == on_enter; in _seqlock_shared_try_unlock() 186 _seqlock_excl_lock_relaxed(uint32_t *lck) in _seqlock_excl_lock_relaxed() argument 188 __assert_only uintptr_t new = os_atomic_inc(lck, relaxed); in _seqlock_excl_lock_relaxed() 199 _seqlock_excl_unlock_relaxed(uint32_t *lck) in _seqlock_excl_unlock_relaxed() argument [all …]
|
| H A D | lock_stat.h | 313 #define lck_mtx_time_stat_record(id, lck, grp, start) ((void)(start)) argument
|
| /xnu-8792.41.9/osfmk/arm/ |
| H A D | locks_arm.c | 569 lck_spin_t *lck; in lck_spin_alloc_init() local 571 lck = zalloc(KT_LCK_SPIN); in lck_spin_alloc_init() 572 lck_spin_init(lck, grp, attr); in lck_spin_alloc_init() 573 return lck; in lck_spin_alloc_init() 577 lck_spin_free(lck_spin_t *lck, lck_grp_t *grp) in lck_spin_free() argument 579 lck_spin_destroy(lck, grp); in lck_spin_free() 580 zfree(KT_LCK_SPIN, lck); in lck_spin_free() 584 lck_spin_init(lck_spin_t *lck, lck_grp_t *grp, __unused lck_attr_t *attr) in lck_spin_init() argument 586 lck_ticket_init(lck, grp); in lck_spin_init() 593 arm_usimple_lock_init(simple_lock_t lck, __unused unsigned short initial_value) in arm_usimple_lock_init() argument [all …]
|
| /xnu-8792.41.9/osfmk/i386/ |
| H A D | locks_i386.c | 113 #define usimple_lock_nopreempt(lck, grp) \ argument 114 usimple_lock_nopreempt(lck) 115 #define usimple_lock_try_nopreempt(lck, grp) \ argument 116 usimple_lock_try_nopreempt(lck) 243 lck_spin_t *lck; in lck_spin_alloc_init() local 245 lck = zalloc(KT_LCK_SPIN); in lck_spin_alloc_init() 246 lck_spin_init(lck, grp, attr); in lck_spin_alloc_init() 247 return lck; in lck_spin_alloc_init() 255 lck_spin_t *lck, in lck_spin_free() argument 258 lck_spin_destroy(lck, grp); in lck_spin_free() [all …]
|
| H A D | lock_ticket_pv.c | 70 hw_lck_ticket_unlock_kick_pv(hw_lck_ticket_t *lck, uint8_t ticket) in hw_lck_ticket_unlock_kick_pv() argument 86 if (wlck != lck) { in hw_lck_ticket_unlock_kick_pv() 116 hw_lck_ticket_lock_wait_pv(hw_lck_ticket_t *lck, uint8_t mt) in hw_lck_ticket_lock_wait_pv() argument 133 os_atomic_store(<pi->ltpi_lck, lck, release); in hw_lck_ticket_lock_wait_pv() 144 const uint8_t cticket = os_atomic_load(&lck->cticket, acquire); in hw_lck_ticket_lock_wait_pv()
|
| H A D | locks.h | 160 #define LCK_MTX_EVENT(lck) CAST_EVENT64_T(&(lck)->lck_mtx_owner) argument
|
| /xnu-8792.41.9/osfmk/arm64/ |
| H A D | lock_ticket_pv.c | 49 hw_lck_ticket_unlock_kick_pv(hw_lck_ticket_t *lck, uint8_t ticket) in hw_lck_ticket_unlock_kick_pv() argument 65 if (wlck != lck) { in hw_lck_ticket_unlock_kick_pv() 95 hw_lck_ticket_lock_wait_pv(hw_lck_ticket_t *lck, uint8_t mt) in hw_lck_ticket_lock_wait_pv() argument 112 os_atomic_store(<pi->ltpi_lck, lck, release); in hw_lck_ticket_lock_wait_pv() 123 const uint8_t cticket = os_atomic_load(&lck->cticket, acquire); in hw_lck_ticket_lock_wait_pv()
|
| /xnu-8792.41.9/bsd/miscfs/nullfs/ |
| H A D | null_subr.c | 99 nullfs_init_lck(lck_mtx_t * lck) in nullfs_init_lck() argument 101 lck_mtx_init(lck, &null_hashlck_grp, LCK_ATTR_NULL); in nullfs_init_lck() 105 nullfs_destroy_lck(lck_mtx_t * lck) in nullfs_destroy_lck() argument 107 lck_mtx_destroy(lck, &null_hashlck_grp); in nullfs_destroy_lck()
|
| H A D | nullfs.h | 140 void nullfs_init_lck(lck_mtx_t * lck); 141 void nullfs_destroy_lck(lck_mtx_t * lck);
|
| /xnu-8792.41.9/bsd/netinet/ |
| H A D | flow_divert.c | 231 lck_rw_lock_shared(&group->lck); in flow_divert_pcb_lookup() 234 lck_rw_done(&group->lck); in flow_divert_pcb_lookup() 268 lck_rw_lock_exclusive(&group->lck); in flow_divert_pcb_insert() 282 lck_rw_done(&group->lck); in flow_divert_pcb_insert() 320 lck_rw_lock_shared(&curr_group->lck); in flow_divert_add_to_group() 324 lck_rw_done(&curr_group->lck); in flow_divert_add_to_group() 384 lck_rw_lock_exclusive(&group->lck); in flow_divert_pcb_remove() 389 lck_rw_done(&group->lck); in flow_divert_pcb_remove() 564 lck_rw_lock_shared(&group->lck); in flow_divert_packet_verify_hmac() 602 lck_rw_done(&group->lck); in flow_divert_packet_verify_hmac() [all …]
|
| H A D | flow_divert.h | 83 decl_lck_rw_data(, lck);
|
| /xnu-8792.41.9/bsd/net/ |
| H A D | packet_mangler.c | 146 pkt_mnglr_rw_lock_exclusive(lck_rw_t *lck) in pkt_mnglr_rw_lock_exclusive() argument 152 lck_rw_lock_exclusive(lck); in pkt_mnglr_rw_lock_exclusive() 160 pkt_mnglr_rw_unlock_exclusive(lck_rw_t *lck) in pkt_mnglr_rw_unlock_exclusive() argument 166 lck_rw_unlock_exclusive(lck); in pkt_mnglr_rw_unlock_exclusive() 174 pkt_mnglr_rw_lock_shared(lck_rw_t *lck) in pkt_mnglr_rw_lock_shared() argument 180 lck_rw_lock_shared(lck); in pkt_mnglr_rw_lock_shared() 187 pkt_mnglr_rw_unlock_shared(lck_rw_t *lck) in pkt_mnglr_rw_unlock_shared() argument 193 lck_rw_unlock_shared(lck); in pkt_mnglr_rw_unlock_shared()
|
| H A D | content_filter.c | 830 cfil_rw_lock_exclusive(lck_rw_t *lck) in cfil_rw_lock_exclusive() argument 836 lck_rw_lock_exclusive(lck); in cfil_rw_lock_exclusive() 843 cfil_rw_unlock_exclusive(lck_rw_t *lck) in cfil_rw_unlock_exclusive() argument 849 lck_rw_unlock_exclusive(lck); in cfil_rw_unlock_exclusive() 856 cfil_rw_lock_shared(lck_rw_t *lck) in cfil_rw_lock_shared() argument 862 lck_rw_lock_shared(lck); in cfil_rw_lock_shared() 869 cfil_rw_unlock_shared(lck_rw_t *lck) in cfil_rw_unlock_shared() argument 875 lck_rw_unlock_shared(lck); in cfil_rw_unlock_shared() 882 cfil_rw_lock_shared_to_exclusive(lck_rw_t *lck) in cfil_rw_lock_shared_to_exclusive() argument 889 upgraded = lck_rw_lock_shared_to_exclusive(lck); in cfil_rw_lock_shared_to_exclusive() [all …]
|
| /xnu-8792.41.9/bsd/sys/ |
| H A D | ubc.h | 137 void cluster_unlock_direct_read(cl_direct_read_lock_t *lck);
|
| /xnu-8792.41.9/bsd/vfs/ |
| H A D | vfs_cluster.c | 4656 struct cl_direct_read_lock *lck, *new_lck = NULL; in cluster_lock_direct_read() local 4661 LIST_FOREACH(lck, head, chain) { in cluster_lock_direct_read() 4662 if (lck->vp == vp) { in cluster_lock_direct_read() 4663 ++lck->ref_count; in cluster_lock_direct_read() 4670 lck_rw_lock(&lck->rw_lock, type); in cluster_lock_direct_read() 4671 return lck; in cluster_lock_direct_read() 4696 cluster_unlock_direct_read(cl_direct_read_lock_t *lck) in cluster_unlock_direct_read() argument 4698 lck_rw_done(&lck->rw_lock); in cluster_unlock_direct_read() 4701 if (lck->ref_count == 1) { in cluster_unlock_direct_read() 4702 LIST_REMOVE(lck, chain); in cluster_unlock_direct_read() [all …]
|