summaryrefslogtreecommitdiff
path: root/lib/libkvm/kvm_sparc64.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove sparc64 filesWarner Losh2020-02-121-239/+0
| | | | | | | | | These were disconnected from the build when the kernel was removed. Since they depend on removed parts of the kernel, remove them completely. Notes: svn path=/head/; revision=357795
* Use __SCCSID for SCCS IDs in libkvm sources.John Baldwin2018-05-221-6/+1
| | | | | | | | | | | | | | Rather than using #ifdef's around a static char array, use the existing helper macro from <sys/cdefs.h> for SCCS IDs. To preserve existing behavior, add -DNO__SCCSID to CFLAGS to not include SCCS IDs in the built library by default. Reviewed by: brooks, dab (older version) Reviewed by: rgrimes Differential Revision: https://reviews.freebsd.org/D15459 Notes: svn path=/head/; revision=334053
* General further adoption of SPDX licensing ID tags.Pedro F. Giffuni2017-11-201-0/+2
| | | | | | | | | | | | | | | | | Mainly focus on files that use BSD 3-Clause license. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. Special thanks to Wind River for providing access to "The Duke of Highlander" tool: an older (2014) run over FreeBSD tree was useful as a starting point. Notes: svn path=/head/; revision=326025
* libkvm: fix warning issues post-r291406Enji Cooper2017-03-221-2/+2
| | | | | | | | | | | | | | | | | - Fix -Wunused warnings with *_native detection handlers by marking `kd` __unused, except with arm/mips, where a slightly more complicated scheme is required to handle the native case vs the non-native case. - Fix -Wmissing-variable-declarations warnings by marking struct kvm_arch objects static. Differential Revision: D10071 MFC after: 1 week Reviewed by: vangyzen Tested with: WIP test code (D10024) // kgdb7121 (i386 crash/kernel on amd64) Sponsored by: Dell EMC Isilon Notes: svn path=/head/; revision=315697
* Renumber copyright clause 4Warner Losh2017-02-281-1/+1
| | | | | | | | | | | | Renumber cluase 4 to 3, per what everybody else did when BSD granted them permission to remove clause 3. My insistance on keeping the same numbering for legal reasons is too pedantic, so give up on that point. Submitted by: Jan Schaumann <jschauma@stevens.edu> Pull Request: https://github.com/freebsd/freebsd/pull/96 Notes: svn path=/head/; revision=314436
* Remove a -Wunused-but-set-variable variable -- `pa`Enji Cooper2016-04-301-2/+0
| | | | | | | | Reported by: gcc 5.x Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=298841
* Add support to libkvm for reading vmcores from other architectures.John Baldwin2015-11-271-59/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - 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 Notes: svn path=/head/; revision=291406
* Disconnect sun4v architecture from the three.Attilio Rao2011-05-141-4/+0
| | | | | | | | | | | | Some files keep the SUN4V tags as a code reference, for the future, if any rewamped sun4v support wants to be added again. Reviewed by: marius Tested by: sbruno Approved by: re Notes: svn path=/head/; revision=221869
* libkvm code janitoringUlrich Spörlein2011-01-231-6/+6
| | | | | | | | | | | | | | | - 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 Notes: svn path=/head/; revision=217744
* Remove the advertising clause. UCB did this some time ago, but theseWarner Losh2007-01-081-4/+0
| | | | | | | | | files were never updated to reflect that. MFC After: 2 days Notes: svn path=/head/; revision=165888
* buildworld fixes for sun4vKip Macy2006-10-091-0/+4
| | | | | | | | | | not sure why pmap.c is included as it is unchanged Approved by: rwatson (mentor) Reviewed by: jmg Notes: svn path=/head/; revision=163148
* Support crash dumps > 4GB in size on 32 bit platforms. _kvm_kvatop()Peter Wemm2005-06-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | returned an lseek offset in a "u_long *" value, which can't express >4GB offsets on 32 bit machines (eg: PAE). Change to "off_t *" for all. Support ELF crashdumps on i386 and amd64. Support PAE crashdumps on i386. This is done by auto-detecting the presence of the IdlePDPT which means that PAE is active. I used Marcel's _kvm_pa2off strategy and ELF header reader for ELF support on amd64. Paul Saab ported the amd64 changes to i386 and we implemented the PAE support from there. Note that gdb6 in the src tree uses whatever libkvm supports. If you want to debug an old crash dump, you might want to keep an old libkvm.so handy and use LD_PRELOAD or the like. This does not detect the old raw dump format. Approved by: re Notes: svn path=/head/; revision=147672
* Teach libkvm to deal with direct mapped addresses.Jake Burkholder2002-12-271-9/+14
| | | | Notes: svn path=/head/; revision=108300
* Adapt to handle the new sparc64 core dump format correctly.Thomas Moestl2002-10-201-32/+95
| | | | | | | Reviewed by: jake Notes: svn path=/head/; revision=105532
* Auto size available kernel virtual address space based on phsyical memoryJake Burkholder2002-08-101-4/+11
| | | | | | | | | | size. This avoids blowing out kva in kmeminit() on large memory machines (4 gigs or more). Reviewed by: tmm Notes: svn path=/head/; revision=101653
* Catch up to tte.h changes.Jake Burkholder2002-05-211-2/+2
| | | | Notes: svn path=/head/; revision=97032
* Adapt to new kernel tsb structure.Jake Burkholder2001-12-291-16/+9
| | | | Notes: svn path=/head/; revision=88615
* libkvm for sparc64. Only works for kernel memory so far.Jake Burkholder2001-11-181-0/+157
Notes: svn path=/head/; revision=86560