Lines Matching defs:cpu
81 typedef struct cpu { struct
82 processorid_t cpu_id; /* CPU number */ argument
83 processorid_t cpu_seqid; /* sequential CPU id (0..ncpus-1) */ argument
84 volatile cpu_flag_t cpu_flags; /* flags indicating CPU state */ argument
85 struct cpu *cpu_self; /* pointer to itself */ argument
86 kthread_t *cpu_thread; /* current thread */ argument
87 kthread_t *cpu_idle_thread; /* idle thread for this CPU */ argument
88 kthread_t *cpu_pause_thread; /* pause thread for this CPU */ argument
89 klwp_id_t cpu_lwp; /* current lwp (if any) */ argument
90 klwp_id_t cpu_fpowner; /* currently loaded fpu owner */ argument
91 struct cpupart *cpu_part; /* partition with this CPU */ argument
92 struct lgrp_ld *cpu_lpl; /* pointer to this cpu's load */ argument
93 int cpu_cache_offset; /* see kmem.c for details */ argument
104 struct cpu *cpu_next; /* next existing CPU */ argument
105 struct cpu *cpu_prev; /* prev existing CPU */ argument
106 struct cpu *cpu_next_onln; /* next online (enabled) CPU */ argument
107 struct cpu *cpu_prev_onln; /* prev online (enabled) CPU */ argument
108 struct cpu *cpu_next_part; /* next CPU in partition */ argument
109 struct cpu *cpu_prev_part; /* prev CPU in partition */ argument
110 struct cpu *cpu_next_lgrp; /* next CPU in latency group */ argument
111 struct cpu *cpu_prev_lgrp; /* prev CPU in latency group */ argument
112 struct cpu *cpu_next_lpl; /* next CPU in lgrp partition */ argument
113 struct cpu *cpu_prev_lpl; argument
115 struct cpu_pg *cpu_pg; /* cpu's processor groups */ argument
117 void *cpu_reserved[4]; /* reserved for future use */ argument
122 disp_t *cpu_disp; /* dispatch queue data */ argument
128 char cpu_runrun; /* scheduling flag - set to preempt */ argument
129 char cpu_kprunrun; /* force kernel preemption */ argument
130 pri_t cpu_chosen_level; /* priority at which cpu */ argument
132 kthread_t *cpu_dispthread; /* thread selected for dispatch */ argument
133 disp_lock_t cpu_thread_lock; /* dispatcher lock on current thread */ argument
134 uint8_t cpu_disp_flags; /* flags used by dispatcher */ argument
140 pri_t cpu_dispatch_pri; /* priority of cpu_dispthread */ argument
141 clock_t cpu_last_swtch; /* last time switched to new thread */ argument
146 caddr_t cpu_intr_stack; /* interrupt stack */ argument
147 kthread_t *cpu_intr_thread; /* interrupt thread list */ argument
148 uint_t cpu_intr_actv; /* interrupt levels active (bitmask) */ argument
149 int cpu_base_spl; /* priority for highest rupt active */ argument
154 cpu_stats_t cpu_stats; /* per-CPU statistics */ argument
155 struct kstat *cpu_info_kstat; /* kstat for cpu info */ argument
157 uintptr_t cpu_profile_pc; /* kernel PC in profile interrupt */ argument
158 uintptr_t cpu_profile_upc; /* user PC in profile interrupt */ argument
159 uintptr_t cpu_profile_pil; /* PIL when profile interrupted */ argument
161 ftrace_data_t cpu_ftrace; /* per cpu ftrace data */ argument
163 clock_t cpu_deadman_counter; /* used by deadman() */ argument
164 uint_t cpu_deadman_countdown; /* used by deadman() */ argument
166 kmutex_t cpu_cpc_ctxlock; /* protects context for idle thread */ argument
167 kcpc_ctx_t *cpu_cpc_ctx; /* performance counter context */ argument
172 processor_info_t cpu_type_info; /* config info */ argument
173 time_t cpu_state_begin; /* when CPU entered current state */ argument
174 char cpu_cpr_flags; /* CPR related info */ argument
175 struct cyc_cpu *cpu_cyclic; /* per cpu cyclic subsystem data */ argument
176 struct squeue_set_s *cpu_squeue_set; /* per cpu squeue set */ argument
177 struct nvlist *cpu_props; /* pool-related properties */ argument
179 krwlock_t cpu_ft_lock; /* DTrace: fasttrap lock */ argument
180 uintptr_t cpu_dtrace_caller; /* DTrace: caller, if any */ argument
181 hrtime_t cpu_dtrace_chillmark; /* DTrace: chill mark time */ argument
182 hrtime_t cpu_dtrace_chilled; /* DTrace: total chill time */ argument
183 volatile uint16_t cpu_mstate; /* cpu microstate */ argument
184 volatile uint16_t cpu_mstate_gen; /* generation counter */ argument
185 volatile hrtime_t cpu_mstate_start; /* cpu microstate start time */ argument
186 volatile hrtime_t cpu_acct[NCMSTATES]; /* cpu microstate data */ argument
187 hrtime_t cpu_intracct[NCMSTATES]; /* interrupt mstate data */ argument
188 hrtime_t cpu_waitrq; /* cpu run-queue wait time */ argument
189 struct loadavg_s cpu_loadavg; /* loadavg info for this cpu */ argument
191 char *cpu_idstr; /* for printing and debugging */ argument
192 char *cpu_brandstr; /* for printing */ argument
198 int32_t cpu_intr_weight; argument
199 void *cpu_vm_data; argument
201 struct cpu_physid *cpu_physid; /* physical associations */ argument
203 uint64_t cpu_curr_clock; /* current clock freq in Hz */ argument
204 char *cpu_supp_freqs; /* supported freqs in Hz */ argument
206 uintptr_t cpu_cpcprofile_pc; /* kernel PC in cpc interrupt */ argument
207 uintptr_t cpu_cpcprofile_upc; /* user PC in cpc interrupt */ argument
212 hrtime_t cpu_intrlast; /* total interrupt time (nsec) */ argument
213 int cpu_intrload; /* interrupt load factor (0-99%) */ argument
215 uint_t cpu_rotor; /* for cheap pseudo-random numbers */ argument
217 struct cu_cpu_info *cpu_cu_info; /* capacity & util. info */ argument
225 volatile uint_t cpu_generation; /* tracking on/off-line */ argument
234 uintptr_t cpu_m_pad; argument
237 struct machcpu cpu_m; /* per architecture info */ argument
345 #define CPU_ACTIVE(cpu) (((cpu)->cpu_flags & CPU_OFFLINE) == 0) argument
424 #define CPUSET_ALL_BUT(set, cpu) cpuset_all_but(&(set), cpu) argument
425 #define CPUSET_ONLY(set, cpu) cpuset_only(&(set), cpu) argument
426 #define CPU_IN_SET(set, cpu) BT_TEST((set).cpub, cpu) argument
427 #define CPUSET_ADD(set, cpu) BT_SET((set).cpub, cpu) argument
428 #define CPUSET_DEL(set, cpu) BT_CLEAR((set).cpub, cpu) argument
437 #define CPUSET_FIND(set, cpu) { \ argument
458 #define CPUSET_ATOMIC_DEL(set, cpu) BT_ATOMIC_CLEAR((set).cpub, (cpu)) argument
459 #define CPUSET_ATOMIC_ADD(set, cpu) BT_ATOMIC_SET((set).cpub, (cpu)) argument
461 #define CPUSET_ATOMIC_XADD(set, cpu, result) \ argument
464 #define CPUSET_ATOMIC_XDEL(set, cpu, result) \ argument
496 #define CPUSET(cpu) (1UL << (cpu)) argument
499 #define CPUSET_ALL_BUT(set, cpu) ((void)((set) = ~CPUSET(cpu))) argument
500 #define CPUSET_ONLY(set, cpu) ((void)((set) = CPUSET(cpu))) argument
501 #define CPU_IN_SET(set, cpu) ((set) & CPUSET(cpu)) argument
502 #define CPUSET_ADD(set, cpu) ((void)((set) |= CPUSET(cpu))) argument
503 #define CPUSET_DEL(set, cpu) ((void)((set) &= ~CPUSET(cpu))) argument
511 #define CPUSET_FIND(set, cpu) { \ argument
520 #define CPUSET_ATOMIC_DEL(set, cpu) atomic_and_ulong(&(set), ~CPUSET(cpu)) argument
521 #define CPUSET_ATOMIC_ADD(set, cpu) atomic_or_ulong(&(set), CPUSET(cpu)) argument
523 #define CPUSET_ATOMIC_XADD(set, cpu, result) \ argument
526 #define CPUSET_ATOMIC_XDEL(set, cpu, result) \ argument
541 #define CPU_CPR_IS_OFFLINE(cpu) (((cpu)->cpu_cpr_flags & CPU_CPR_ONLINE) == 0) argument
542 #define CPU_CPR_IS_ONLINE(cpu) ((cpu)->cpu_cpr_flags & CPU_CPR_ONLINE) argument
543 #define CPU_SET_CPR_FLAGS(cpu, flag) ((cpu)->cpu_cpr_flags |= flag) argument