Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 21 Mar 2015 20:40:34 -0400
From:      Yue Chen <ycyc321@gmail.com>
To:        "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org>
Subject:   How to traverse all resident pages in kernel?
Message-ID:  <CAKtBrB68Vce3toNntfA6=Zst77zVi3YU%2B5ogsB63ipGZNPR8fQ@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
Hi all,

For research purposes, I am trying to get all the virtual memory starting
address of every page in kernel.

First I tried to traverse vm_map_entry and its sub-entries to get the
address range. However, not all the pages are present between the ``start''
and the ``end''. (struct vm_map_entry *node, node->start, node->end).

Then I tried to get the virtual address of each page by vm_object and
vm_page, but it seems nothing describing the page virtual address in these
structures.

Is there any way to get all the resident pages' virtual addresses in kernel?

Best regards,
Yue



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAKtBrB68Vce3toNntfA6=Zst77zVi3YU%2B5ogsB63ipGZNPR8fQ>