summaryrefslogtreecommitdiffstats
path: root/lib/libkvm/kvm_getloadavg.c
Commit message (Collapse)AuthorAgeFilesLines
* Add support to libkvm for reading vmcores from other architectures.jhb2015-11-271-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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
* libkvm code janitoringuqs2011-01-231-8/+5
| | | | | | | | | | | | - make WARNS=6 clean for archs w/o strict alignment requirments - add const, ANSIfy, remove unused vars, cast types for comparison - thanks to differing definitions of VM_MIN_ADDRESS across our archs, we need to trick the compiler to not complain about signedness. We could either fix VM_MIN_ADDRESS to always be a simple integer or make the check conditional on $ARCH. Closes PRs: kern/42386, kern/83364 Reviewed by: bde
* Remove the advertising clause. UCB did this some time ago, but theseimp2007-01-081-4/+0
| | | | | | files were never updated to reflect that. MFC After: 2 days
* Include sys/param.h instead of sys/types.h to get the definition of thejhb2001-11-201-1/+1
| | | | | | MIN() macro. Pointy hat to: rwatson
* o Cleanup of includes: user.h may be a catch-all, but that's notrwatson2001-11-191-4/+3
| | | | | | | entirely desirable. Back out previous commit, and clean up includes to be more minimal. Submitted by: bde
* #include <sys/user.h> rather than individually including a plethorarwatson2001-11-191-4/+1
| | | | | | | of kernel include files, reducing the replication of kernel include dependency information in userland. Obtained from: TrustedBSD Project
* Compensate for "Compensate for header dethreading" by backing it out.bde2001-10-101-2/+0
|
* Implement __FBSDID()dillon2001-09-161-3/+3
|
* Compensate for header dethreading.markm2001-05-011-0/+2
|
* Use kldsym(2) to lookup symbol values. This avoids the kvm_mkdb jugglingpeter1999-12-271-1/+5
| | | | | | and is module aware. Yes, this means that kvm_nlist(3) will find symbols in loaded modules. The emulation of the nlist struct is pretty crude but seems to work well enough for all the users in the tree that I found.
* General -Wall warning cleanup, part I.jkh1996-07-121-0/+1
| | | | Submitted-By: Kent Vander Velden <graphix@iastate.edu>
* BSD 4.4 Lite Lib Sourcesrgrimes1994-05-271-0/+105
OpenPOWER on IntegriCloud