Lines Matching refs:kd

68 _kvm_pa2off(kvm_t *kd, uint64_t pa, off_t *ofs)  in _kvm_pa2off()  argument
70 struct vmstate *vm = kd->vmst; in _kvm_pa2off()
74 if (kd->rawdump) { in _kvm_pa2off()
90 _amd64_freevtop(kvm_t *kd) in _amd64_freevtop() argument
92 struct vmstate *vm = kd->vmst; in _amd64_freevtop()
98 kd->vmst = NULL; in _amd64_freevtop()
102 _amd64_probe(kvm_t *kd) in _amd64_probe() argument
105 return (_kvm_probe_elf_kernel(kd, ELFCLASS64, EM_X86_64) && in _amd64_probe()
106 !_kvm_is_minidump(kd)); in _amd64_probe()
110 _amd64_initvtop(kvm_t *kd) in _amd64_initvtop() argument
117 kd->vmst = (struct vmstate *)_kvm_malloc(kd, sizeof(*kd->vmst)); in _amd64_initvtop()
118 if (kd->vmst == NULL) { in _amd64_initvtop()
119 _kvm_err(kd, kd->program, "cannot allocate vm"); in _amd64_initvtop()
122 kd->vmst->PML4 = 0; in _amd64_initvtop()
124 if (kd->rawdump == 0) { in _amd64_initvtop()
125 if (_kvm_read_core_phdrs(kd, &kd->vmst->phnum, in _amd64_initvtop()
126 &kd->vmst->phdr) == -1) in _amd64_initvtop()
133 if (kvm_nlist2(kd, nl) != 0) { in _amd64_initvtop()
134 _kvm_err(kd, kd->program, "bad namelist - no kernbase"); in _amd64_initvtop()
142 if (kvm_nlist2(kd, nl) != 0) { in _amd64_initvtop()
143 _kvm_err(kd, kd->program, "bad namelist - no KPML4phys"); in _amd64_initvtop()
146 if (kvm_read2(kd, (nl[0].n_value - kernbase), &pa, sizeof(pa)) != in _amd64_initvtop()
148 _kvm_err(kd, kd->program, "cannot read KPML4phys"); in _amd64_initvtop()
152 PML4 = _kvm_malloc(kd, AMD64_PAGE_SIZE); in _amd64_initvtop()
154 _kvm_err(kd, kd->program, "cannot allocate PML4"); in _amd64_initvtop()
157 if (kvm_read2(kd, pa, PML4, AMD64_PAGE_SIZE) != AMD64_PAGE_SIZE) { in _amd64_initvtop()
158 _kvm_err(kd, kd->program, "cannot read KPML4phys"); in _amd64_initvtop()
162 kd->vmst->PML4 = PML4; in _amd64_initvtop()
167 _amd64_vatop(kvm_t *kd, kvaddr_t va, off_t *pa) in _amd64_vatop() argument
186 vm = kd->vmst; in _amd64_vatop()
194 s = _kvm_pa2off(kd, va, pa); in _amd64_vatop()
196 _kvm_err(kd, kd->program, in _amd64_vatop()
206 _kvm_err(kd, kd->program, "_amd64_vatop: pml4e not valid"); in _amd64_vatop()
213 s = _kvm_pa2off(kd, pdpe_pa, &ofs); in _amd64_vatop()
215 _kvm_err(kd, kd->program, "_amd64_vatop: pdpe_pa not found"); in _amd64_vatop()
218 if (pread(kd->pmfd, &pdpe, sizeof(pdpe), ofs) != sizeof(pdpe)) { in _amd64_vatop()
219 _kvm_syserr(kd, kd->program, "_amd64_vatop: read pdpe"); in _amd64_vatop()
224 _kvm_err(kd, kd->program, "_amd64_vatop: pdpe not valid"); in _amd64_vatop()
233 s = _kvm_pa2off(kd, a, pa); in _amd64_vatop()
235 _kvm_err(kd, kd->program, in _amd64_vatop()
245 s = _kvm_pa2off(kd, pde_pa, &ofs); in _amd64_vatop()
247 _kvm_syserr(kd, kd->program, "_amd64_vatop: pde_pa not found"); in _amd64_vatop()
250 if (pread(kd->pmfd, &pde, sizeof(pde), ofs) != sizeof(pde)) { in _amd64_vatop()
251 _kvm_syserr(kd, kd->program, "_amd64_vatop: read pde"); in _amd64_vatop()
256 _kvm_err(kd, kd->program, "_amd64_vatop: pde not valid"); in _amd64_vatop()
265 s = _kvm_pa2off(kd, a, pa); in _amd64_vatop()
267 _kvm_err(kd, kd->program, in _amd64_vatop()
277 s = _kvm_pa2off(kd, pte_pa, &ofs); in _amd64_vatop()
279 _kvm_err(kd, kd->program, "_amd64_vatop: pte_pa not found"); in _amd64_vatop()
282 if (pread(kd->pmfd, &pte, sizeof(pte), ofs) != sizeof(pte)) { in _amd64_vatop()
283 _kvm_syserr(kd, kd->program, "_amd64_vatop: read"); in _amd64_vatop()
287 _kvm_err(kd, kd->program, "_amd64_vatop: pte not valid"); in _amd64_vatop()
292 s = _kvm_pa2off(kd, a, pa); in _amd64_vatop()
294 _kvm_err(kd, kd->program, "_amd64_vatop: address not in dump"); in _amd64_vatop()
300 _kvm_err(kd, 0, "invalid address (0x%jx)", (uintmax_t)va); in _amd64_vatop()
305 _amd64_kvatop(kvm_t *kd, kvaddr_t va, off_t *pa) in _amd64_kvatop() argument
308 if (ISALIVE(kd)) { in _amd64_kvatop()
309 _kvm_err(kd, 0, "kvm_kvatop called in live kernel!"); in _amd64_kvatop()
312 return (_amd64_vatop(kd, va, pa)); in _amd64_kvatop()
316 _amd64_native(kvm_t *kd __unused) in _amd64_native()