freebsd-dev/sys/sparc64/include
John Baldwin 7f911abe54 Add support to libkvm for reading vmcores from other architectures.
- Add a kvaddr_type to represent kernel virtual addresses instead of
  unsigned long.
- Add a struct kvm_nlist which is a stripped down version of struct nlist
  that uses kvaddr_t for n_value.
- Add a kvm_native() routine that returns true if an open kvm descriptor
  is for a native kernel and memory image.
- Add a kvm_open2() function similar to kvm_openfiles().  It drops the
  unused 'swapfile' argument and adds a new function pointer argument for
  a symbol resolving function.  Native kernels still use _fdnlist() from
  libc to resolve symbols if a resolver function is not supplied, but cross
  kernels require a resolver.
- Add a kvm_nlist2() function similar to kvm_nlist() except that it uses
  struct kvm_nlist instead of struct nlist.
- Add a kvm_read2() function similar to kvm_read() except that it uses
  kvaddr_t instead of unsigned long for the kernel virtual address.
- Add a new kvm_arch switch of routines needed by a vmcore backend.
  Each backend is responsible for implementing kvm_read2() for a given
  vmcore format.
- Use libelf to read headers from ELF kernels and cores (except for
  powerpc cores).
- Add internal helper routines for the common page offset hash table used
  by the minidump backends.
- Port all of the existing kvm backends to implement a kvm_arch switch and
  to be cross-friendly by using private constants instead of ones that
  vary by platform (e.g. PAGE_SIZE).  Static assertions are present when
  a given backend is compiled natively to ensure the private constants
  match the real ones.
- Enable all of the existing vmcore backends on all platforms.  This means
  that libkvm on any platform should be able to perform KVA translation
  and read data from a vmcore of any platform.

Tested on:	amd64, i386, sparc64 (marius)
Differential Revision:	https://reviews.freebsd.org/D3341
2015-11-27 18:58:26 +00:00
..
_align.h
_bus.h
_inttypes.h
_limits.h
_stdint.h
_types.h
asi.h
asm.h
asmacros.h
atomic.h
bus_common.h
bus_dma.h
bus_private.h
bus.h
cache.h
ccr.h
clock.h
cmt.h
counter.h
cpu.h
cpufunc.h
db_machdep.h
dcr.h
dump.h
elf.h
endian.h
exec.h
fireplane.h
float.h
floatingpoint.h
fp.h
frame.h
fsr.h
gdb_machdep.h
idprom.h
ieee.h
ieeefp.h
in_cksum.h
instr.h
intr_machdep.h
iommureg.h
iommuvar.h
jbus.h
kdb.h
kerneldump.h Add support to libkvm for reading vmcores from other architectures. 2015-11-27 18:58:26 +00:00
ktr.h
limits.h
lsu.h
mcntl.h
md_var.h Merge from r290547: 2015-11-21 02:49:33 +00:00
memdev.h
metadata.h
nexusvar.h
ofw_machdep.h
ofw_mem.h
ofw_nexus.h
param.h
pcb.h
pcpu.h
pmap.h
pmc_mdep.h
proc.h
profile.h
pstate.h
ptrace.h
reg.h
reloc.h
resource.h
runq.h
sc_machdep.h
setjmp.h
sf_buf.h
sigframe.h
signal.h
smp.h
stack.h
stdarg.h
sysarch.h
tick.h
tlb.h
trap.h
tsb.h
tstate.h
tte.h
ucontext.h
upa.h
utrap.h
varargs.h
vdso.h
ver.h
vm.h
vmparam.h
watch.h
wstate.h