Home | History | Annotate | Download | only in libkvm
History log of /src/lib/libkvm/kvm_m68k_cmn.c
RevisionDateAuthorComments
 1.18  04-Mar-2014  matt #include <m68k/m68k.h>
 1.17  13-Sep-2011  christos branches: 1.17.2; 1.17.8;
Include <sys/param.h> for MAXPATHLEN
 1.16  26-Sep-2010  jym Define KREAD() inside kvm_private.h, for reusability.
 1.15  20-Sep-2010  jym Change kvm_pa2off() and kvm_kvatop() prototypes (private to kvm(3)):

-int _kvm_kvatop(kvm_t *, u_long, u_long *);
-off_t _kvm_pa2off(kvm_t *, u_long);
+int _kvm_kvatop(kvm_t *, vaddr_t, paddr_t *);
+off_t _kvm_pa2off(kvm_t *, paddr_t);

Basically, use vaddr_t for VA and paddr_t for PA. In addition, for variables
representing addresses, use paddr_t or vaddr_t, depending on the context.

For most arches, vaddr_t and paddr_t are equivalent to unsigned long. However,
the change was needed for exotic situations, like i386 PAE, were unsigned long
is not suitable for PA which are 64 bits long. As this required a complete
change of the function prototypes, all arches had to be adapted accordingly.

Core files from before this commit should still work with the new code; I did
not see any direct dependency between core's structure and kvatop/pa2off.

The change was compile tested for all arches, as it impacts all of them.

See also:

http://mail-index.netbsd.org/current-users/2010/09/07/msg014249.html
 1.14  19-Sep-2010  jym Ansify and KNF all functions within kvm(3). No objection on current-users@.

Used as ground for u_long => vaddr_t/paddr_t replacements in kvm(3)
private functions.

Compile tested for all arches. See also:

http://mail-index.netbsd.org/current-users/2010/09/07/msg014249.html
 1.13  15-Jan-2008  ad Handle reading from raw disk devices.
 1.12  07-Aug-2003  agc branches: 1.12.22;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22280, verified by myself.
 1.11  16-May-2003  wiz Consistently spell "crash dump" as two separate words. From jmc@openbsd.
 1.10  10-Oct-2000  he Use %lx instead of %x with _kvm_err when arg is u_long.
 1.9  02-Jul-1999  simonb branches: 1.9.8;
More trailing white space.
 1.8  30-Jun-1998  thorpej branches: 1.8.2;
Use pread(2) and pwrite(2) rather than lseek(2)/{read,write}(2).
 1.7  12-Oct-1997  briggs Fix a couple of warnings.
 1.6  12-Oct-1997  briggs Put spaces around / in comment so 'machine/*.h' does not generate '/* inside
comment' warning.
 1.5  26-Aug-1997  kleink /* Tyop. */
 1.4  15-Aug-1997  mikel use <sys/cdefs.h> __RCSID() macro
 1.3  23-Apr-1997  scottr In kvm_cmn_pa2off(), make sure to use the correct RAM segment start/size
values when adjusting the PA/offset. (Only broken in the case where we
had multiple RAM segments.)
 1.2  09-Apr-1997  thorpej Update for new m68k/kcore.h. We use dispatch information provided
by the crash dump itself to facilitate cross-analysis. The m68k_cmn
for Utah pmaps reads MMU configuration from the crash dump to that
this works on 4k and 8k h/w page size systems.
 1.1  21-Mar-1997  gwr Build the same libkvm.* on all m68k machines. (Well... except for the
stragglers that still use libkvm.old ) The m68k machines now dispatch
based on the machine name to the appropriate libkvm implementation.
 1.8.2.1  25-Oct-2000  he Pull up revision 1.10 (requested by steve):
Use %lx instead of %x with _kvm_err when arg is u_long.
 1.9.8.1  18-Oct-2000  tv Pullup 1.10 [he]:
Use %lx instead of %x with _kvm_err when arg is u_long.
 1.12.22.1  23-Mar-2008  matt sync with HEAD
 1.17.8.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.17.2.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")

RSS XML Feed