[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


  • To: xen-devel@xxxxxxxxxxxxxxxxxxx
  • From: Olaf Hering <olaf@xxxxxxxxx>
  • Date: Fri, 10 Jun 2011 11:12:56 +0200
  • Delivery-date: Fri, 10 Jun 2011 02:26:11 -0700
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

# 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


 


Rackspace

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