[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] xenpaging: move page_buffer into struct xenpaging
# HG changeset patch # User Olaf Hering <olaf@xxxxxxxxx> # Date 1329769124 -3600 # Node ID 97a6ccbe6a1aa363c772f979a84ab10d681c19d6 # Parent 58c5b8c9ad8a8be43c4c5fb8020d4578a49b7199 xenpaging: move page_buffer into struct xenpaging Signed-off-by: Olaf Hering <olaf@xxxxxxxxx> Committed-by: Ian Jackson <ian.jackson.citrix.com> --- diff -r 58c5b8c9ad8a -r 97a6ccbe6a1a tools/xenpaging/xenpaging.c --- a/tools/xenpaging/xenpaging.c Mon Feb 20 21:18:44 2012 +0100 +++ b/tools/xenpaging/xenpaging.c Mon Feb 20 21:18:44 2012 +0100 @@ -44,7 +44,6 @@ static char watch_token[16]; static char *filename; static int interrupted; -static void *paging_buffer = NULL; static void unlink_pagefile(void) { @@ -441,8 +440,8 @@ goto err; } - paging_buffer = init_page(); - if ( !paging_buffer ) + paging->paging_buffer = init_page(); + if ( !paging->paging_buffer ) { PERROR("Creating page aligned load buffer"); goto err; @@ -465,6 +464,11 @@ xs_close(paging->xs_handle); if ( xch ) xc_interface_close(xch); + if ( paging->paging_buffer ) + { + munlock(paging->paging_buffer, PAGE_SIZE); + free(paging->paging_buffer); + } if ( paging->mem_event.shared_page ) { munlock(paging->mem_event.shared_page, PAGE_SIZE); @@ -687,7 +691,7 @@ DPRINTF("populate_page < gfn %lx pageslot %d\n", gfn, i); /* Read page */ - ret = read_page(paging->fd, paging_buffer, i); + ret = read_page(paging->fd, paging->paging_buffer, i); if ( ret != 0 ) { PERROR("Error reading page"); @@ -697,8 +701,7 @@ do { /* Tell Xen to allocate a page for the domain */ - ret = xc_mem_paging_load(xch, paging->mem_event.domain_id, gfn, - paging_buffer); + ret = xc_mem_paging_load(xch, paging->mem_event.domain_id, gfn, paging->paging_buffer); if ( ret < 0 ) { if ( errno == ENOMEM ) diff -r 58c5b8c9ad8a -r 97a6ccbe6a1a tools/xenpaging/xenpaging.h --- a/tools/xenpaging/xenpaging.h Mon Feb 20 21:18:44 2012 +0100 +++ b/tools/xenpaging/xenpaging.h Mon Feb 20 21:18:44 2012 +0100 @@ -49,6 +49,8 @@ unsigned long *slot_to_gfn; int *gfn_to_slot; + void *paging_buffer; + struct mem_event mem_event; int fd; /* number of pages for which data structures were allocated */ _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |