Lines Matching refs:kd
84 _kvm_pcpu_init(kvm_t *kd) in _kvm_pcpu_init() argument
90 if (kvm_nlist(kd, kvm_pcpu_nl) < 0) in _kvm_pcpu_init()
93 _kvm_err(kd, kd->program, "unable to find cpuid_to_pcpu"); in _kvm_pcpu_init()
97 _kvm_err(kd, kd->program, "unable to find mp_maxcpus"); in _kvm_pcpu_init()
100 if (kvm_read(kd, kvm_pcpu_nl[NL_MP_MAXCPUS].n_value, &max, in _kvm_pcpu_init()
102 _kvm_err(kd, kd->program, "cannot read mp_maxcpus"); in _kvm_pcpu_init()
106 _kvm_err(kd, kd->program, "unable to find mp_ncpus"); in _kvm_pcpu_init()
109 if (kvm_read(kd, kvm_pcpu_nl[NL_MP_NCPUS].n_value, &mp_ncpus, in _kvm_pcpu_init()
111 _kvm_err(kd, kd->program, "cannot read mp_ncpus"); in _kvm_pcpu_init()
116 _kvm_err(kd, kd->program, "unable to find __pcpu"); in _kvm_pcpu_init()
119 if (kvm_read(kd, kvm_pcpu_nl[NL___PCPU].n_value, &__pcpu, in _kvm_pcpu_init()
121 _kvm_err(kd, kd->program, "cannot read __pcpu"); in _kvm_pcpu_init()
128 _kvm_err(kd, kd->program, "out of memory"); in _kvm_pcpu_init()
131 if (kvm_read(kd, kvm_pcpu_nl[NL_CPUID_TO_PCPU].n_value, data, len) != in _kvm_pcpu_init()
133 _kvm_err(kd, kd->program, "cannot read cpuid_to_pcpu array"); in _kvm_pcpu_init()
152 kvm_getpcpu(kvm_t *kd, int cpu) in kvm_getpcpu() argument
156 if (kd == NULL) { in kvm_getpcpu()
162 if (_kvm_pcpu_init(kd) < 0) in kvm_getpcpu()
170 _kvm_err(kd, kd->program, "out of memory"); in kvm_getpcpu()
173 if (kvm_read(kd, (uintptr_t)pcpu_data[cpu], buf, in kvm_getpcpu()
175 _kvm_err(kd, kd->program, "unable to read per-CPU data"); in kvm_getpcpu()
183 kvm_getmaxcpu(kvm_t *kd) in kvm_getmaxcpu() argument
186 if (kd == NULL) { in kvm_getmaxcpu()
192 if (_kvm_pcpu_init(kd) < 0) in kvm_getmaxcpu()
198 kvm_getncpus(kvm_t *kd) in kvm_getncpus() argument
202 if (_kvm_pcpu_init(kd) < 0) in kvm_getncpus()
208 _kvm_dpcpu_setcpu(kvm_t *kd, u_int cpu, int report_error) in _kvm_dpcpu_setcpu() argument
211 if (!kd->dpcpu_initialized) { in _kvm_dpcpu_setcpu()
213 _kvm_err(kd, kd->program, "%s: not initialized", in _kvm_dpcpu_setcpu()
217 if (cpu >= kd->dpcpu_maxcpus) { in _kvm_dpcpu_setcpu()
219 _kvm_err(kd, kd->program, "%s: CPU %u too big", in _kvm_dpcpu_setcpu()
223 if (kd->dpcpu_off[cpu] == 0) { in _kvm_dpcpu_setcpu()
225 _kvm_err(kd, kd->program, "%s: CPU %u not found", in _kvm_dpcpu_setcpu()
229 kd->dpcpu_curcpu = cpu; in _kvm_dpcpu_setcpu()
230 kd->dpcpu_curoff = kd->dpcpu_off[cpu]; in _kvm_dpcpu_setcpu()
238 _kvm_dpcpu_init(kvm_t *kd) in _kvm_dpcpu_init() argument
258 if (!kvm_native(kd)) in _kvm_dpcpu_init()
266 if (_kvm_nlist(kd, nl, 0) != 0) in _kvm_dpcpu_init()
268 if (kvm_read(kd, nl[NLIST_MP_MAXCPUS].n_value, &dpcpu_maxcpus, in _kvm_dpcpu_init()
275 if (kvm_read(kd, nl[NLIST_DPCPU_OFF].n_value, dpcpu_off_buf, len) != in _kvm_dpcpu_init()
280 kd->dpcpu_start = nl[NLIST_START_SET_PCPU].n_value; in _kvm_dpcpu_init()
281 kd->dpcpu_stop = nl[NLIST_STOP_SET_PCPU].n_value; in _kvm_dpcpu_init()
282 kd->dpcpu_maxcpus = dpcpu_maxcpus; in _kvm_dpcpu_init()
283 kd->dpcpu_off = dpcpu_off_buf; in _kvm_dpcpu_init()
284 kd->dpcpu_initialized = 1; in _kvm_dpcpu_init()
285 (void)_kvm_dpcpu_setcpu(kd, 0, 0); in _kvm_dpcpu_init()
294 _kvm_dpcpu_initialized(kvm_t *kd, int intialize) in _kvm_dpcpu_initialized() argument
297 if (kd->dpcpu_initialized || !intialize) in _kvm_dpcpu_initialized()
298 return (kd->dpcpu_initialized); in _kvm_dpcpu_initialized()
300 (void)_kvm_dpcpu_init(kd); in _kvm_dpcpu_initialized()
302 return (kd->dpcpu_initialized); in _kvm_dpcpu_initialized()
310 _kvm_dpcpu_validaddr(kvm_t *kd, kvaddr_t value) in _kvm_dpcpu_validaddr() argument
316 if (!kd->dpcpu_initialized) in _kvm_dpcpu_validaddr()
319 if (value < kd->dpcpu_start || value >= kd->dpcpu_stop) in _kvm_dpcpu_validaddr()
322 return (kd->dpcpu_curoff + value); in _kvm_dpcpu_validaddr()
326 kvm_dpcpu_setcpu(kvm_t *kd, u_int cpu) in kvm_dpcpu_setcpu() argument
330 if (!kd->dpcpu_initialized) { in kvm_dpcpu_setcpu()
331 ret = _kvm_dpcpu_init(kd); in kvm_dpcpu_setcpu()
333 _kvm_err(kd, kd->program, "%s: init failed", in kvm_dpcpu_setcpu()
339 return (_kvm_dpcpu_setcpu(kd, cpu, 1)); in kvm_dpcpu_setcpu()
346 kvm_read_zpcpu(kvm_t *kd, u_long base, void *buf, size_t size, int cpu) in kvm_read_zpcpu() argument
349 if (!kvm_native(kd)) in kvm_read_zpcpu()
352 if (_kvm_pcpu_init(kd) < 0) in kvm_read_zpcpu()
358 return (kvm_read(kd, (uintptr_t)(base + sizeof(struct pcpu) * cpu), in kvm_read_zpcpu()
366 kvm_counter_u64_fetch(kvm_t *kd, u_long base) in kvm_counter_u64_fetch() argument
371 if (_kvm_pcpu_init(kd) < 0) in kvm_counter_u64_fetch()
376 if (kvm_read_zpcpu(kd, base, &c, sizeof(c), i) != sizeof(c)) in kvm_counter_u64_fetch()