[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[XenPPC] Re: [Xen-devel] [TOOLS][RFC] xc_get_pfn_list() and getmemlist.start_pfn

On Oct 20, 2006, at 4:30 AM, Gerd Hoffmann wrote:

Keir Fraser wrote:

On 20/10/06 09:01, "Gerd Hoffmann" <kraxel@xxxxxxx> wrote:

domain builder. I could leave the interface just for that I suppose, but equally we could fill in the initial P2M table when we allocate the domain's
initial memory reservation (since that hypercall returns the PFNs).
Who does that hypercall btw?  Seems not to be somewhere in the
xc_linux_build() code path ...

Everyone goes through xc_get_pfn_list() (except ia64, who are 'special' ;-).

I want to know nevertheless.

While I'm hacking the domain builder code anyway, maybe it's a good time
to change that too ;)

It is called to get the MFNs of another domain fromt he build tools

cd ./xen-unstable.hg/tools/libxc/
find . \( -name CVS -o -name SCCS \) -prune -o \! \( -name \*~ -o - name .#\* -o -name cscope.\* \) -type f -print0 | xargs -0 -e grep -n xc_get_pfn_list ./xc_core.c:89: if ( xc_get_pfn_list(xc_handle, domid, page_array, 0, nr_pages) ./xc_hvm_build.c:259: if ( xc_get_pfn_list(xc_handle, dom, page_array, nr_pages) != nr_pages ) ./xc_linux_build.c:856: if ( xc_get_pfn_list(xc_handle, dom, page_array, nr_pages) != nr_pages ) ./xc_linux_restore.c:283: if (xc_get_pfn_list(xc_handle, dom, p2m, max_pfn) != max_pfn) {
./xc_private.c:309:static int __xc_get_pfn_list(int xc_handle,
./xc_private.c:330: PERROR("xc_get_pfn_list: pfn_buf mlock failed"); ./xc_private.c:340: DPRINTF(("Ret for xc_get_pfn_list is %d\n", ret));
./xc_private.c:355:int xc_get_pfn_list(int xc_handle,
./xc_ptrace.c:370:        if ( xc_get_pfn_list(xc_handle, current_domid,
./xenctrl.h:525:int xc_get_pfn_list(int xc_handle, uint32_t domid, xen_pfn_t *pfn_buf,
./powerpc64/xc_linux_build.c:372:    DPRINTF("xc_get_pfn_list\n");
./powerpc64/xc_linux_build.c:373: rc = xc_get_pfn_list(xc_handle, domid, *page_array, *nr_pages);


Xen-ppc-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.