[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 07 of 22] xenpaging: drop xc.c, move xc_mem_paging_flush_ioemu_cache
# HG changeset patch # User Olaf Hering <olaf@xxxxxxxxx> # Date 1307695630 -7200 # Node ID fe8cb47be2adc95e6181de8c166e4460e1a2e40f # Parent 44997646bd69e746fbf7421009f5175268da28ce xenpaging: drop xc.c, move xc_mem_paging_flush_ioemu_cache Move xc_mem_paging_flush_ioemu_cache() into xenpaging and massage it a bit to use the required members from xenpaging_t. Also update type of rc to match xs_write() return value. Signed-off-by: Olaf Hering <olaf@xxxxxxxxx> diff -r 44997646bd69 -r fe8cb47be2ad tools/xenpaging/xc.c --- a/tools/xenpaging/xc.c Fri Jun 10 10:47:08 2011 +0200 +++ b/tools/xenpaging/xc.c Fri Jun 10 10:47:10 2011 +0200 @@ -31,24 +31,6 @@ -int xc_mem_paging_flush_ioemu_cache(domid_t domain_id) -{ - struct xs_handle *xsh = NULL; - char path[80]; - int rc; - - sprintf(path, "/local/domain/0/device-model/%u/command", domain_id); - - xsh = xs_daemon_open(); - if ( xsh == NULL ) - return -EIO; - - rc = xs_write(xsh, XBT_NULL, path, "flush-cache", strlen("flush-cache")); - - xs_daemon_close(xsh); - - return rc ? 0 : -1; -} int xc_wait_for_event_or_timeout(xc_interface *xch, xc_evtchn *xce, unsigned long ms) { diff -r 44997646bd69 -r fe8cb47be2ad tools/xenpaging/xc.h --- a/tools/xenpaging/xc.h Fri Jun 10 10:47:08 2011 +0200 +++ b/tools/xenpaging/xc.h Fri Jun 10 10:47:10 2011 +0200 @@ -37,7 +37,6 @@ -int xc_mem_paging_flush_ioemu_cache(domid_t domain_id); int xc_wait_for_event_or_timeout(xc_interface *xch, xc_evtchn *xce, unsigned long ms); diff -r 44997646bd69 -r fe8cb47be2ad tools/xenpaging/xenpaging.c --- a/tools/xenpaging/xenpaging.c Fri Jun 10 10:47:08 2011 +0200 +++ b/tools/xenpaging/xenpaging.c Fri Jun 10 10:47:10 2011 +0200 @@ -48,6 +48,20 @@ static void close_handler(int sig) unlink(filename); } +static int xenpaging_mem_paging_flush_ioemu_cache(xenpaging_t *paging) +{ + struct xs_handle *xsh = paging->xs_handle; + domid_t domain_id = paging->mem_event.domain_id; + char path[80]; + bool rc; + + sprintf(path, "/local/domain/0/device-model/%u/command", domain_id); + + rc = xs_write(xsh, XBT_NULL, path, "flush-cache", strlen("flush-cache")); + + return rc == true ? 0 : -1; +} + static void *init_page(void) { void *buffer; @@ -484,7 +498,7 @@ static int evict_victim(xenpaging_t *pag else { if ( j++ % 1000 == 0 ) - if ( xc_mem_paging_flush_ioemu_cache(paging->mem_event.domain_id) ) + if ( xenpaging_mem_paging_flush_ioemu_cache(paging) ) ERROR("Error flushing ioemu cache"); } } _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |