Lines Matching defs:thread
301 struct thread { struct
305 uint64_t thread_magic; argument
323 struct mpsc_queue_chain mpsc_links; /* thread daemon mpsc links */ argument
329 waitq_t waitq; /* wait queue this thread is enqueued on */ argument
330 struct turnstile *turnstile; /* thread's turnstile, protected by primitives interlock */ argument
331 void *inheritor; /* inheritor of the primitive the thread will block on */ argument
345 * level (clutch_bucket defines a unique thread group and scheduling bucket pair). The argument
359 decl_simple_lock_data(, wake_lock); /* for thread stop / wait (wake_lock()) */ argument
360 uint16_t options; /* options set by thread itself */ argument
377 bool at_safe_point; /* thread_abort_safely allowed */ argument
387 * may be examined by this thread argument
389 thread_rr_state_t t_rr_state; /* state for restartable ranges */ argument
390 thread_continue_t continuation; /* continue here next dispatch */ argument
393 /* Data updated/used in thread_invoke */ argument
398 struct machine_thread machine; argument
401 struct kasan_thread_data kasan_data; argument
404 kcov_thread_data_t kcov_data; argument
429 /* This thread's contribution to global sched counters */ argument
436 #define TH_SFLAG_NO_SMT 0x0001 /* On an SMT CPU, this thread must be sched… argument
483 int16_t promotion_priority; /* priority thread is currently promoted to */ argument
485 int16_t suspend_count; /* Kernel holds on this thread */ argument
490 uint32_t rwlock_count; /* Number of lck_rw_t locks held by thread */ argument
493 rw_lock_debug_t rw_lock_held; /* rw_locks currently held by the thread */ argument
503 struct { /* see mach/thread_policy.h */ argument
512 uint64_t last_run_time; /* time when thread was switched away from */ argument
513 …uint64_t last_made_runnable_time; /* time when thread was unblocked or preem… argument
514 …uint64_t last_basepri_change_time; /* time when thread was last changed in ba… argument
517 * workq_quantum_deadline is the workq thread's next runtime deadline. This argument
545 #define WORKQ_QUANTUM_HISTORY_WRITE_ENTRY(thread, ...) ({\ argument
553 #define WORKQ_QUANTUM_HISTORY_WRITE_ENTRY(thread, ...) argument
559 struct thread_group *thread_group; argument
569 processor_t chosen_processor; /* Where we want to run this thread */ argument
577 void (*sched_call)(int type, thread_t thread); argument
603 …timer_data_t runnable_timer; /* time the thread is runnable (including running)… argument
605 struct recount_thread th_recount; /* resource accounting */ argument
609 uint64_t wait_sfi_begin_time; /* start time for thread waiting in SFI */ argument
616 queue_chain_t affinity_threads; argument
623 …/* Various bits of state to stash across a continuation, exclusive to the current thread block poi… argument
624 union {
655 /* Only user threads can cause guard exceptions, only kernel threads can be thread call threads */ argument
657 /* Thread call thread's state structure, stored on its stack */ argument
680 queue_chain_t threads; /* global list of all threads */ argument
683 queue_chain_t task_threads; argument
689 struct thread_ro *t_tro; argument
691 thread_t handoff_thread; argument
701 ipc_active:1, /* IPC with the thread ports is allowed */ argument
705 policy_reset:1, /* Disallow policy parameter changes on terminating threads */ argument
706 suspend_parked:1, /* thread parked in thread_suspended */ argument
707 corpse_dup:1, /* TRUE when thread is an inactive duplicate in a corpse */ argument
718 uint16_t t_dtrace_flags; /* DTrace thread states */ argument
721 uint32_t t_dtrace_predcache; /* DTrace per thread predicate value hint */ argument
722 int64_t t_dtrace_tracing; /* Thread time under dtrace_probe() */
723 int64_t t_dtrace_vtime;
748 #define T_KPERF_AST_CALLSTACK 0x1 /* dump a callstack on thread's next AST */ argument
758 uint32_t kperf_pet_gen; /* last generation of PET that sampled this thread*/ argument
760 uint32_t kperf_pet_cnt; /* how many times a thread has been sampled by PET */ argument
769 /* hypervisor virtual CPU object associated with this thread */ argument
770 void *hv_thread_target; argument
777 ledger_t t_threadledger; /* per thread ledger */ argument
782 uint64_t thread_id; /* system wide unique thread-id */ argument
783 uint32_t ctid; /* system wide compact thread-id */ argument
784 uint32_t ctsid; /* this thread ts ID */ argument
787 struct thread_requested_policy requested_policy; argument
788 struct thread_effective_policy effective_policy; argument
791 struct thread_qos_override { argument
804 io_stat_info_t thread_io_stats; /* per-thread I/O statistics */ argument
806 uint32_t thread_callout_interrupt_wakeups; argument
807 uint32_t thread_callout_platform_idle_wakeups; argument
808 uint32_t thread_timer_wakeups_bin_1; argument
809 uint32_t thread_timer_wakeups_bin_2; argument
810 thread_tag_t thread_tag; argument
820 callout_woke_thread:1, argument
822 thread_bitfield_unused:12; argument
829 /* The preadopt thread group is set on the thread argument
851 struct thread_group *preadopt_thread_group; argument
871 struct thread_group *old_preadopt_thread_group; argument
879 struct thread_group *bank_thread_group; argument
885 /* This is a borrowed reference to the auto join thread group from the argument
898 thread_work_interval_flags_t th_work_interval_flags; argument
901 uintptr_t thread_wakeup_bt[64]; argument
906 …uint32_t decompressions; /* Per-thread decompressions counter to be added to per-t… argument
907 …int thread_region_page_shift; /* Page shift that this thread would like to use… argument
913 t_ledger_req_action:2,
914 t_ledger_req_percentage:7,
915 t_ledger_req_interval_ms:16,
920 void *decmp_upl;
922 struct knote *ith_knote; /* knote fired for rcv */
960 #define assert_thread_magic(thread) assertf((thread)->thread_magic == THREAD_MAGIC, \ argument
964 #define assert_thread_magic(thread) do { (void)(thread); } while (0) argument
1045 #define thread_should_halt_fast(thread) (!(thread)->active) argument
1192 #define thread_mtx_try(thread) lck_mtx_try_lock(&(thread)->mutex) argument
1193 #define thread_mtx_held(thread) lck_mtx_assert(&(thread)->mutex, LCK_MTX_ASSERT_OWN… argument
1271 thread_set_tag_internal(thread_t thread, thread_tag_t tag) in thread_set_tag_internal()
1277 thread_get_tag_internal(thread_t thread) in thread_get_tag_internal()
1661 thread_t thread; member