WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] Simply do not declare module_exit() handlers for netback

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] Simply do not declare module_exit() handlers for netback/blkback, rather
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 11 May 2006 09:38:14 +0000
Delivery-date: Thu, 11 May 2006 02:41:24 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 36e0159c001b72969c5c9a9bf8bb48d8cfa932fa
# Parent  60f7b567bb2b00d9dcf6ed86847feba4f9462177
This patch adds a boolean parameter 'network' to the save method of the
XendCheckpoint class to differentiate between network suspend/resume
(network=True) and local suspend/resume (network=False).
Instead of passing the 'live' parameter to the migration methods, this
'network' parameter is passed now. This ends up being merely a renaming
of the parameter.
A check with the xm-test suite against this change has resulted in no
additional errors.

Signed-off-by: Stefan Berger <stefanb@xxxxxxxxxx>
---
 tools/python/xen/xend/XendCheckpoint.py       |    8 ++++----
 tools/python/xen/xend/XendDomain.py           |    6 +++---
 tools/python/xen/xend/XendDomainInfo.py       |   24 ++++++++++++++----------
 tools/python/xen/xend/server/DevController.py |    8 ++++----
 tools/python/xen/xend/server/tpmif.py         |   12 ++++++------
 5 files changed, 31 insertions(+), 27 deletions(-)

diff -r 60f7b567bb2b -r 36e0159c001b tools/python/xen/xend/XendCheckpoint.py
--- a/tools/python/xen/xend/XendCheckpoint.py   Wed May 10 16:47:00 2006 +0100
+++ b/tools/python/xen/xend/XendCheckpoint.py   Wed May 10 16:52:55 2006 +0100
@@ -54,7 +54,7 @@ def read_exact(fd, size, errmsg):
 
 
 
-def save(fd, dominfo, live, dst):
+def save(fd, dominfo, network, live, dst):
     write_exact(fd, SIGNATURE, "could not write guest state file: signature")
 
     config = sxp.to_string(dominfo.sxpr())
@@ -66,7 +66,7 @@ def save(fd, dominfo, live, dst):
     dominfo.setName('migrating-' + domain_name)
 
     try:
-        dominfo.migrateDevices(live, dst, DEV_MIGRATE_STEP1, domain_name)
+        dominfo.migrateDevices(network, dst, DEV_MIGRATE_STEP1, domain_name)
 
         write_exact(fd, pack("!i", len(config)),
                     "could not write guest state file: config len")
@@ -88,10 +88,10 @@ def save(fd, dominfo, live, dst):
                 log.debug("Suspending %d ...", dominfo.getDomid())
                 dominfo.shutdown('suspend')
                 dominfo.waitForShutdown()
-                dominfo.migrateDevices(live, dst, DEV_MIGRATE_STEP2,
+                dominfo.migrateDevices(network, dst, DEV_MIGRATE_STEP2,
                                        domain_name)
                 log.info("Domain %d suspended.", dominfo.getDomid())
-                dominfo.migrateDevices(live, dst, DEV_MIGRATE_STEP3,
+                dominfo.migrateDevices(network, dst, DEV_MIGRATE_STEP3,
                                        domain_name)
                 tochild.write("done\n")
                 tochild.flush()
diff -r 60f7b567bb2b -r 36e0159c001b tools/python/xen/xend/XendDomain.py
--- a/tools/python/xen/xend/XendDomain.py       Wed May 10 16:47:00 2006 +0100
+++ b/tools/python/xen/xend/XendDomain.py       Wed May 10 16:52:55 2006 +0100
@@ -408,7 +408,7 @@ class XendDomain:
             raise XendError("Cannot migrate privileged domain %i" % domid)
 
         """ The following call may raise a XendError exception """
-        dominfo.testMigrateDevices(live, dst)
+        dominfo.testMigrateDevices(True, dst)
 
         if port == 0:
             port = xroot.get_xend_relocation_port()
@@ -420,7 +420,7 @@ class XendDomain:
 
         sock.send("receive\n")
         sock.recv(80)
-        XendCheckpoint.save(sock.fileno(), dominfo, live, dst)
+        XendCheckpoint.save(sock.fileno(), dominfo, True, live, dst)
 
 
     def domain_save(self, domid, dst):
@@ -440,7 +440,7 @@ class XendDomain:
             fd = os.open(dst, os.O_WRONLY | os.O_CREAT | os.O_TRUNC)
             try:
                 # For now we don't support 'live checkpoint' 
-                return XendCheckpoint.save(fd, dominfo, False, dst)
+                return XendCheckpoint.save(fd, dominfo, False, False, dst)
             finally:
                 os.close(fd)
         except OSError, ex:
diff -r 60f7b567bb2b -r 36e0159c001b tools/python/xen/xend/XendDomainInfo.py
--- a/tools/python/xen/xend/XendDomainInfo.py   Wed May 10 16:47:00 2006 +0100
+++ b/tools/python/xen/xend/XendDomainInfo.py   Wed May 10 16:52:55 2006 +0100
@@ -1443,36 +1443,40 @@ class XendDomainInfo:
 
     ## public:
 
-    def testMigrateDevices(self, live, dst):
+    def testMigrateDevices(self, network, dst):
         """ Notify all device about intention of migration
         @raise: XendError for a device that cannot be migrated
         """
         for (n, c) in self.info['device']:
-            rc = self.migrateDevice(n, c, live, dst, DEV_MIGRATE_TEST)
+            rc = self.migrateDevice(n, c, network, dst, DEV_MIGRATE_TEST)
             if rc != 0:
                 raise XendError("Device of type '%s' refuses migration." % n)
 
-    def migrateDevices(self, live, dst, step, domName=''):
+    def migrateDevices(self, network, dst, step, domName=''):
         """Notify the devices about migration
         """
         ctr = 0
         try:
             for (n, c) in self.info['device']:
-                self.migrateDevice(n, c, live, dst, step, domName)
+                self.migrateDevice(n, c, network, dst, step, domName)
                 ctr = ctr + 1
         except:
             for (n, c) in self.info['device']:
                 if ctr == 0:
                     step = step - 1
                 ctr = ctr - 1
-                self.recoverMigrateDevice(n, c, live, dst, step, domName)
+                self.recoverMigrateDevice(n, c, network, dst, step, domName)
             raise
 
-    def migrateDevice(self, deviceClass, deviceConfig, live, dst, step, 
domName=''):
-        return self.getDeviceController(deviceClass).migrate(deviceConfig, 
live, dst, step, domName)
-
-    def recoverMigrateDevice(self, deviceClass, deviceConfig, live, dst, step, 
domName=''):
-        return 
self.getDeviceController(deviceClass).recover_migrate(deviceConfig, live, dst, 
step, domName)
+    def migrateDevice(self, deviceClass, deviceConfig, network, dst,
+                      step, domName=''):
+        return self.getDeviceController(deviceClass).migrate(deviceConfig,
+                                        network, dst, step, domName)
+
+    def recoverMigrateDevice(self, deviceClass, deviceConfig, network,
+                             dst, step, domName=''):
+        return self.getDeviceController(deviceClass).recover_migrate(
+                     deviceConfig, network, dst, step, domName)
 
     def waitForDevices(self):
         """Wait for this domain's configured devices to connect.
diff -r 60f7b567bb2b -r 36e0159c001b 
tools/python/xen/xend/server/DevController.py
--- a/tools/python/xen/xend/server/DevController.py     Wed May 10 16:47:00 
2006 +0100
+++ b/tools/python/xen/xend/server/DevController.py     Wed May 10 16:52:55 
2006 +0100
@@ -267,9 +267,9 @@ class DevController:
 
         raise NotImplementedError()
 
-    def migrate(self, deviceConfig, live, dst, step, domName):
-        """ Migration of a device. The 'live' parameter indicates
-            whether the device is live-migrated (live=1). 'dst' then gives
+    def migrate(self, deviceConfig, network, dst, step, domName):
+        """ Migration of a device. The 'network' parameter indicates
+            whether the device is network-migrated (True). 'dst' then gives
             the hostname of the machine to migrate to.
         This function is called for 4 steps:
         If step == 0: Check whether the device is ready to be migrated
@@ -296,7 +296,7 @@ class DevController:
         return 0
 
 
-    def recover_migrate(self, deviceConfig, list, dst, step, domName):
+    def recover_migrate(self, deviceConfig, network, dst, step, domName):
         """ Recover from device migration. The given step was the
             last one that was successfully executed.
         """
diff -r 60f7b567bb2b -r 36e0159c001b tools/python/xen/xend/server/tpmif.py
--- a/tools/python/xen/xend/server/tpmif.py     Wed May 10 16:47:00 2006 +0100
+++ b/tools/python/xen/xend/server/tpmif.py     Wed May 10 16:52:55 2006 +0100
@@ -71,12 +71,12 @@ class TPMifController(DevController):
 
         return result
 
-    def migrate(self, deviceConfig, live, dst, step, domName):
+    def migrate(self, deviceConfig, network, dst, step, domName):
         """@see DevContoller.migrate"""
-        if live:
+        if network:
             tool = xroot.get_external_migration_tool()
             if tool != '':
-                log.info("Request to live-migrate device to %s. step=%d.",
+                log.info("Request to network-migrate device to %s. step=%d.",
                          dst, step)
 
                 if step == DEV_MIGRATE_TEST:
@@ -99,12 +99,12 @@ class TPMifController(DevController):
                 return -1
         return 0
 
-    def recover_migrate(self, deviceConfig, live, dst, step, domName):
+    def recover_migrate(self, deviceConfig, network, dst, step, domName):
         """@see DevContoller.recover_migrate"""
-        if live:
+        if network:
             tool = xroot.get_external_migration_tool()
             if tool != '':
-                log.info("Request to recover live-migrated device. last good 
step=%d.",
+                log.info("Request to recover network-migrated device. last 
good step=%d.",
                          step)
                 fd = os.popen("%s -type vtpm -step %d -host %s -domname %s 
-recover" %
                               (tool, step, dst, domName),

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] Simply do not declare module_exit() handlers for netback/blkback, rather, Xen patchbot-unstable <=