/freebsd/sys/kern/ |
H A D | subr_pcpu.c | 77 struct pcpu *cpuid_to_pcpu[MAXCPU]; 84 pcpu_init(struct pcpu *pcpu, int cpuid, size_t size) in pcpu_init() argument 87 bzero(pcpu, size); in pcpu_init() 90 pcpu->pc_cpuid = cpuid; in pcpu_init() 91 cpuid_to_pcpu[cpuid] = pcpu; in pcpu_init() 92 STAILQ_INSERT_TAIL(&cpuhead, pcpu, pc_allcpu); in pcpu_init() 93 cpu_pcpu_init(pcpu, cpuid, size); in pcpu_init() 94 pcpu->pc_rm_queue.rmq_next = &pcpu->pc_rm_queue; in pcpu_init() 95 pcpu->pc_rm_queue.rmq_prev = &pcpu->pc_rm_queue; in pcpu_init() 96 pcpu->pc_zpcpu_offset = zpcpu_offset_cpu(cpuid); in pcpu_init() [all …]
|
H A D | kern_rmlock.c | 140 struct pcpu *pc; in unlock_rm() 202 rm_tracker_add(struct pcpu *pc, struct rm_priotracker *tracker) in rm_tracker_add() 223 rm_trackers_present(const struct pcpu *pc, const struct rmlock *rm, in rm_trackers_present() 241 rm_tracker_remove(struct pcpu *pc, struct rm_priotracker *tracker) in rm_tracker_remove() 258 struct pcpu *pc; in rm_cleanIPI() 351 struct pcpu *pc; in _rm_rlock_hard() 437 struct pcpu *pc; in _rm_rlock() 507 struct pcpu *pc; in _rm_runlock() 839 struct pcpu *pc; in db_show_rm() 904 return (zpcpu_get(rms->pcpu)); in rms_int_pcpu() [all …]
|
/freebsd/sys/cddl/dev/profile/ |
H A D | profile.c | 264 profile_probe_percpu_t *pcpu = arg; in profile_fire() local 265 profile_probe_t *prof = pcpu->profc_probe; in profile_fire() 268 late = sbt_to_nsec(sbinuptime() - pcpu->profc_expected); in profile_fire() 271 pcpu->profc_expected += pcpu->profc_interval; in profile_fire() 272 callout_schedule_sbt_curcpu(&pcpu->profc_cyclic, in profile_fire() 273 pcpu->profc_expected, 0, C_DIRECT_EXEC | C_ABSOLUTE); in profile_fire() 474 profile_probe_percpu_t *pcpu; in profile_online() local 476 pcpu = kmem_zalloc(sizeof (profile_probe_percpu_t), KM_SLEEP); in profile_online() 477 pcpu->profc_probe = prof; in profile_online() 480 hdlr->cyh_arg = pcpu; in profile_online() [all …]
|
/freebsd/sys/i386/i386/ |
H A D | genassym.c | 187 ASSYM(PC_SIZEOF, sizeof(struct pcpu)); 188 ASSYM(PC_PRVSPACE, offsetof(struct pcpu, pc_prvspace)); 189 ASSYM(PC_CURTHREAD, offsetof(struct pcpu, pc_curthread)); 190 ASSYM(PC_FPCURTHREAD, offsetof(struct pcpu, pc_fpcurthread)); 191 ASSYM(PC_IDLETHREAD, offsetof(struct pcpu, pc_idlethread)); 192 ASSYM(PC_CURPCB, offsetof(struct pcpu, pc_curpcb)); 193 ASSYM(PC_COMMON_TSSP, offsetof(struct pcpu, pc_common_tssp)); 194 ASSYM(PC_COMMON_TSSD, offsetof(struct pcpu, pc_common_tssd)); 195 ASSYM(PC_TSS_GDT, offsetof(struct pcpu, pc_tss_gdt)); 196 ASSYM(PC_FSGS_GDT, offsetof(struct pcpu, pc_fsgs_gdt)); [all …]
|
/freebsd/sys/amd64/amd64/ |
H A D | genassym.c | 235 ASSYM(PC_SIZEOF, sizeof(struct pcpu)); 236 ASSYM(PC_PRVSPACE, offsetof(struct pcpu, pc_prvspace)); 237 ASSYM(PC_CURTHREAD, offsetof(struct pcpu, pc_curthread)); 238 ASSYM(PC_FPCURTHREAD, offsetof(struct pcpu, pc_fpcurthread)); 239 ASSYM(PC_IDLETHREAD, offsetof(struct pcpu, pc_idlethread)); 240 ASSYM(PC_CURPCB, offsetof(struct pcpu, pc_curpcb)); 241 ASSYM(PC_CPUID, offsetof(struct pcpu, pc_cpuid)); 242 ASSYM(PC_SCRATCH_RSP, offsetof(struct pcpu, pc_scratch_rsp)); 243 ASSYM(PC_SCRATCH_RAX, offsetof(struct pcpu, pc_scratch_rax)); 244 ASSYM(PC_CURPMAP, offsetof(struct pcpu, pc_curpmap)); [all …]
|
/freebsd/sys/arm64/include/ |
H A D | pcpu.h | 58 struct pcpu; 60 register struct pcpu *pcpup __asm ("x18"); 62 static inline struct pcpu * 65 struct pcpu *pcpu; in get_pcpu() local 67 __asm __volatile("mov %0, x18" : "=&r"(pcpu)); in get_pcpu() 68 return (pcpu); in get_pcpu()
|
/freebsd/sys/sys/ |
H A D | pcpu.h | 175 struct pcpu { struct 185 STAILQ_ENTRY(pcpu) pc_allcpu; argument 213 STAILQ_HEAD(cpuhead, pcpu); 216 extern struct pcpu *cpuid_to_pcpu[]; 316 void cpu_pcpu_init(struct pcpu *pcpu, int cpuid, size_t size); 317 void db_show_mdpcpu(struct pcpu *pcpu); 323 void pcpu_destroy(struct pcpu *pcpu); 324 struct pcpu *pcpu_find(u_int cpuid); 325 void pcpu_init(struct pcpu *pcpu, int cpuid, size_t size);
|
/freebsd/sys/riscv/include/ |
H A D | pcpu.h | 55 struct pcpu; 57 static inline struct pcpu * 60 struct pcpu *pcpu; in get_pcpu() local 62 __asm __volatile("mv %0, tp" : "=&r"(pcpu)); in get_pcpu() 64 return (pcpu); in get_pcpu()
|
H A D | pcpu_aux.h | 46 _Static_assert(PAGE_SIZE % sizeof(struct pcpu) == 0, "fix pcpu size"); 47 _Static_assert(offsetof(struct pcpu, __pad) + 48 sizeof(((struct pcpu *)0)->__pad) == sizeof(struct pcpu), 51 extern struct pcpu __pcpu[];
|
/freebsd/libexec/kgdb/ |
H A D | acttrace.py | 29 pcpu = cpuid_to_pcpu[cpu] 30 if pcpu: 31 yield pcpu 43 for pcpu in all_pcpus(): 44 td = pcpu['pc_curthread'] 55 p['p_comm'], p['p_pid'], td['td_tid'], pcpu['pc_cpuid']))
|
/freebsd/sys/powerpc/powerpc/ |
H A D | genassym.c | 57 ASSYM(PC_CURTHREAD, offsetof(struct pcpu, pc_curthread)); 58 ASSYM(PC_CURPCB, offsetof(struct pcpu, pc_curpcb)); 59 ASSYM(PC_CURPMAP, offsetof(struct pcpu, pc_curpmap)); 60 ASSYM(PC_TEMPSAVE, offsetof(struct pcpu, pc_tempsave)); 61 ASSYM(PC_DISISAVE, offsetof(struct pcpu, pc_disisave)); 62 ASSYM(PC_DBSAVE, offsetof(struct pcpu, pc_dbsave)); 63 ASSYM(PC_RESTORE, offsetof(struct pcpu, pc_restore)); 64 ASSYM(PC_FLAGS, offsetof(struct pcpu, pc_flags)); 67 ASSYM(PC_BOOKE_CRITSAVE, offsetof(struct pcpu, pc_booke.critsave)); 68 ASSYM(PC_BOOKE_MCHKSAVE, offsetof(struct pcpu, pc_booke.mchksave)); [all …]
|
H A D | mp_machdep.c | 147 struct pcpu *pc; in cpu_mp_start() 203 struct pcpu *pc; in cpu_mp_announce() 223 struct pcpu *pc; in cpu_mp_unleash() 341 ipi_send(struct pcpu *pc, int ipi) in ipi_send() 358 struct pcpu *pc; in ipi_selected() 378 struct pcpu *pc; in ipi_all_but_self()
|
/freebsd/sys/amd64/include/ |
H A D | pcpu.h | 30 #include <i386/pcpu.h> 58 struct pcpu *pc_prvspace; /* Self-reference */ \ 118 __typeof(((struct pcpu *)0)->name) 122 static struct pcpu __seg_gs *__pc = 0; \ 131 struct pcpu *__pc = get_pcpu(); \ 140 static struct pcpu __seg_gs *__pc = 0; \ 150 static struct pcpu __seg_gs *__pc = 0; \ 165 static struct pcpu __seg_gs *__pc = 0; \ 180 __offsetof(struct pcpu, name) 253 struct pcpu *__p [all...] |
H A D | pcpu_aux.h | 47 _Static_assert(sizeof(struct pcpu) == UMA_PCPU_ALLOC_SIZE, "fix pcpu size"); 49 extern struct pcpu *__pcpu; 50 extern struct pcpu temp_bsp_pcpu; 58 : "i" (offsetof(struct pcpu, pc_curthread))); in __curthread()
|
/freebsd/sys/dev/xen/bus/ |
H A D | xen_intr.c | 44 #include <sys/pcpu.h> 166 struct xen_intr_pcpu_data *pcpu; in evtchn_cpu_mask_port() local 168 pcpu = DPCPU_ID_PTR(cpu, xen_intr_pcpu); in evtchn_cpu_mask_port() 170 xen_clear_bit(port, pcpu->evtchn_enabled); in evtchn_cpu_mask_port() 189 struct xen_intr_pcpu_data *pcpu; in evtchn_cpu_unmask_port() local 191 pcpu = DPCPU_ID_PTR(cpu, xen_intr_pcpu); in evtchn_cpu_unmask_port() 193 xen_set_bit(port, pcpu->evtchn_enabled); in evtchn_cpu_unmask_port() 318 * \param pcpu The Xen interrupt pcpu data for the cpu being queried. 327 xen_intr_active_ports(const struct xen_intr_pcpu_data *const pcpu, in xen_intr_active_ports() argument 448 struct xen_intr_pcpu_data *pcpu; xen_intr_init() local 578 struct xen_intr_pcpu_data *pcpu; xen_intr_resume() local 1090 struct xen_intr_pcpu_data *pcpu; xen_intr_dump_port() local [all...] |
/freebsd/sys/dev/xen/timer/ |
H A D | xen_timer.c | 274 struct xentimer_pcpu_data *pcpu = DPCPU_PTR(xentimer_pcpu); in xentimer_intr() local 276 pcpu->last_processed = xen_fetch_vcpu_time(DPCPU_GET(vcpu_info)); in xentimer_intr() 277 if (pcpu->timer != 0 && sc->et.et_active) in xentimer_intr() 320 struct xentimer_pcpu_data *pcpu = DPCPU_PTR(xentimer_pcpu); in xentimer_et_start() local 340 pcpu->timer = next_time; in xentimer_et_start() 351 struct xentimer_pcpu_data *pcpu = DPCPU_PTR(xentimer_pcpu); in xentimer_et_stop() local 353 pcpu->timer = 0; in xentimer_et_stop() 375 struct xentimer_pcpu_data *pcpu; in xentimer_attach() local 377 pcpu = DPCPU_ID_PTR(i, xentimer_pcpu); in xentimer_attach() 386 NULL, sc, INTR_TYPE_CLK, &pcpu->irq_handle); in xentimer_attach() [all …]
|
/freebsd/usr.sbin/bhyve/ |
H A D | bhyverun.c | 245 int vcpu, pcpu; in bhyve_pincpu_parse() local 247 if (sscanf(opt, "%d:%d", &vcpu, &pcpu) != 2) { in bhyve_pincpu_parse() 257 if (pcpu < 0 || pcpu >= CPU_SETSIZE) { in bhyve_pincpu_parse() 259 "0 to %d\n", pcpu, CPU_SETSIZE - 1); in bhyve_pincpu_parse() 267 value != NULL ? "," : "", pcpu) == -1) { in bhyve_pincpu_parse() 281 int pcpu, start; in parse_cpuset() local 287 pcpu = strtoul(token, &cp, 0); in parse_cpuset() 290 if (pcpu < 0 || pcpu >= CPU_SETSIZE) in parse_cpuset() 292 pcpu, CPU_SETSIZE - 1); in parse_cpuset() 297 if (start > pcpu) in parse_cpuset() [all …]
|
/freebsd/sys/i386/include/ |
H A D | pcpu_aux.h | 43 _Static_assert(sizeof(struct pcpu) == UMA_PCPU_ALLOC_SIZE, "fix pcpu size"); 45 extern struct pcpu __pcpu[]; 53 : "i" (offsetof(struct pcpu, pc_curthread))); in __curthread() 64 : "i" (offsetof(struct pcpu, pc_curpcb))); in __curpcb()
|
H A D | pcpu.h | 55 struct pcpu *pc_prvspace; /* Self-reference */ \ 100 __offsetof(struct pcpu, name) 106 __typeof(((struct pcpu *)0)->name) 179 struct pcpu *__pc; \
|
/freebsd/sys/dev/random/fenestrasX/ |
H A D | fx_main.c | 146 struct pcpu *pcpu; in _fxrng_alg_read() local 148 pcpu = get_pcpu(); in _fxrng_alg_read() 155 pcpu_brng_p = _DPCPU_PTR(pcpu->pc_dynamic, fxrng_brng); in _fxrng_alg_read() 169 domain = pcpu->pc_domain; in _fxrng_alg_read()
|
/freebsd/sys/arm64/arm64/ |
H A D | gic_v3_var.h | 63 struct redist_pcpu *pcpu; 147 (sc)->gic_redists.pcpu[cpu].res, \ 148 (sc)->gic_redists.pcpu[cpu].offset + (reg)); \ 156 (sc)->gic_redists.pcpu[cpu].res, \ 157 (sc)->gic_redists.pcpu[cpu].offset + (reg), \ 57 struct redist_pcpu *pcpu; global() member
|
H A D | genassym.c | 51 ASSYM(PCPU_SIZE, sizeof(struct pcpu)); 52 ASSYM(PC_CURPCB, offsetof(struct pcpu, pc_curpcb)); 53 ASSYM(PC_CURTHREAD, offsetof(struct pcpu, pc_curthread)); 54 ASSYM(PC_SSBD, offsetof(struct pcpu, pc_ssbd));
|
/freebsd/sys/arm/arm/ |
H A D | genassym.c | 78 ASSYM(PC_CURPCB, offsetof(struct pcpu, pc_curpcb)); 79 ASSYM(PC_CURTHREAD, offsetof(struct pcpu, pc_curthread)); 106 ASSYM(PC_CURPMAP, offsetof(struct pcpu, pc_curpmap)); 107 ASSYM(PC_BP_HARDEN_KIND, offsetof(struct pcpu, pc_bp_harden_kind)); 120 ASSYM(PCPU_SIZE, sizeof(struct pcpu)); 124 ASSYM(PC_CPUID, offsetof(struct pcpu, pc_cpuid));
|
H A D | pmu_fdt.c | 90 struct pcpu *pcpu; in pmu_parse_affinity() local 104 pcpu = pcpu_find(i); in pmu_parse_affinity() 105 if (pcpu != NULL && PCPU_GET_MPIDR(pcpu) == mpidr) { in pmu_parse_affinity()
|
H A D | pmu_acpi.c | 55 struct pcpu *pcpu; in madt_handler() local 73 pcpu = pcpu_find(i); in madt_handler() 74 if (pcpu != NULL && PCPU_GET_MPIDR(pcpu) == intr->ArmMpidr) { in madt_handler()
|