svn commit: r325728 - head/lib/libkvm

Ed Maste emaste at freebsd.org
Mon Feb 4 21:12:17 UTC 2019


On Sat, 11 Nov 2017 at 18:31, Will Andrews <will at freebsd.org> wrote:
>
> Author: will
> Date: Sat Nov 11 23:30:58 2017
> New Revision: 325728
> URL: https://svnweb.freebsd.org/changeset/base/325728
>
> Log:
>   libkvm: add kvm_walk_pages API.
>
> Modified: head/lib/libkvm/kvm.h
> ==============================================================================
> --- head/lib/libkvm/kvm.h       Sat Nov 11 22:50:14 2017        (r325727)
> +++ head/lib/libkvm/kvm.h       Sat Nov 11 23:30:58 2017        (r325728)
> @@ -36,6 +36,7 @@
>  #include <sys/cdefs.h>
>  #include <sys/types.h>
>  #include <nlist.h>
> +#include <vm/vm.h>
>
>  /* Default version symbol. */
>  #define        VRS_SYM         "_version"
> @@ -73,7 +74,19 @@ struct kvm_swap {
>         u_int   ksw_reserved2;
>  };
>
> +struct kvm_page {
> +       unsigned int version;
> +       u_long paddr;

This should probably be uin64_t to support cross-debugging cores from
64-bit machines on 32-bit hosts; also for i386 PAE. Or, on IRC jhb
suggested we introduce a kpaddr_t typedef akin to kvaddr_t.

> +       u_long kmap_vaddr;
> +       u_long dmap_vaddr;

These two should be kvaddr_t.

> +       vm_prot_t prot;
> +       u_long offset;

off_t?

> +       size_t len;
> +       /* end of version 1 */
> +};
> +
>  #define SWIF_DEV_PREFIX        0x0002
> +#define        LIBKVM_WALK_PAGES_VERSION       1


More information about the svn-src-all mailing list