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] Explicitly close files on save and restore. Rename all l

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] Explicitly close files on save and restore. Rename all local variables named id or slice so as not to clash with the builtins.
From: Xen patchbot -unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Tue, 04 Oct 2005 23:16:11 +0000
Delivery-date: Tue, 04 Oct 2005 23:13:45 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
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 emellor@ewan
# Node ID 22449386d38da0641c2bb95c177fa849533e9ef2
# Parent  2c9e66555ff44f5d3654cad25efffc593bda9b01
Explicitly close files on save and restore.  Rename all local variables named 
id or slice so as not to clash with the builtins.

Signed-off-by: Ewan Mellor <ewan@xxxxxxxxxxxxx>

diff -r 2c9e66555ff4 -r 22449386d38d tools/python/xen/xend/XendDomain.py
--- a/tools/python/xen/xend/XendDomain.py       Tue Oct  4 22:56:42 2005
+++ b/tools/python/xen/xend/XendDomain.py       Tue Oct  4 23:00:42 2005
@@ -216,7 +216,11 @@
         """
 
         try:
-            return self.domain_restore_fd(os.open(src, os.O_RDONLY))
+            fd = os.open(src, os.O_RDONLY)
+            try:
+                return self.domain_restore_fd(fd)
+            finally:
+                os.close(fd)
         except OSError, ex:
             raise XendError("can't read guest state file %s: %s" %
                             (src, ex[1]))
@@ -256,19 +260,19 @@
             self.domains_lock.release()
 
 
-    def domain_lookup(self, id):
+    def domain_lookup(self, domid):
         self.domains_lock.acquire()
         try:
             self.refresh()
-            return self.domains.get(id)
-        finally:
-            self.domains_lock.release()
-
-
-    def domain_lookup_nr(self, id):
-        self.domains_lock.acquire()
-        try:
-            return self.domains.get(id)
+            return self.domains.get(domid)
+        finally:
+            self.domains_lock.release()
+
+
+    def domain_lookup_nr(self, domid):
+        self.domains_lock.acquire()
+        try:
+            return self.domains.get(domid)
         finally:
             self.domains_lock.release()
 
@@ -323,12 +327,9 @@
             self.domains_lock.release()
 
  
-    def domain_unpause(self, id):
-        """Unpause domain execution.
-
-        @param id: domain id
-        """
-        dominfo = self.domain_lookup(id)
+    def domain_unpause(self, domid):
+        """Unpause domain execution."""
+        dominfo = self.domain_lookup(domid)
         eserver.inject('xend.domain.unpause', [dominfo.getName(),
                                                dominfo.getDomid()])
         try:
@@ -336,12 +337,9 @@
         except Exception, ex:
             raise XendError(str(ex))
     
-    def domain_pause(self, id):
-        """Pause domain execution.
-
-        @param id: domain id
-        """
-        dominfo = self.domain_lookup(id)
+    def domain_pause(self, domid):
+        """Pause domain execution."""
+        dominfo = self.domain_lookup(domid)
         eserver.inject('xend.domain.pause', [dominfo.getName(),
                                              dominfo.getDomid()])
         try:
@@ -380,14 +378,10 @@
                 raise XendError(str(ex))
         return val       
 
-    def domain_migrate(self, id, dst, live=False, resource=0):
-        """Start domain migration.
-
-        @param id: domain id
-        """
-        # Need a cancel too?
-        # Don't forget to cancel restart for it.
-        dominfo = self.domain_lookup(id)
+    def domain_migrate(self, domid, dst, live=False, resource=0):
+        """Start domain migration."""
+
+        dominfo = self.domain_lookup(domid)
 
         port = xroot.get_xend_relocation_port()
         sock = relocate.setupRelocation(dst, port)
@@ -395,42 +389,41 @@
         XendCheckpoint.save(sock.fileno(), dominfo, live)
         
 
-    def domain_save(self, id, dst):
+    def domain_save(self, domid, dst):
         """Start saving a domain to file.
 
-        @param id:       domain id
         @param dst:      destination file
         """
 
         try:
-            dominfo = self.domain_lookup(id)
+            dominfo = self.domain_lookup(domid)
 
             fd = os.open(dst, os.O_WRONLY | os.O_CREAT | os.O_TRUNC)
-
-            # For now we don't support 'live checkpoint' 
-            return XendCheckpoint.save(fd, dominfo, False)
-
+            try:
+                # For now we don't support 'live checkpoint' 
+                return XendCheckpoint.save(fd, dominfo, False)
+            finally:
+                os.close(fd)
         except OSError, ex:
             raise XendError("can't write guest state file %s: %s" %
                             (dst, ex[1]))
 
-    def domain_pincpu(self, id, vcpu, cpumap):
+    def domain_pincpu(self, domid, vcpu, cpumap):
         """Set which cpus vcpu can use
 
-        @param id:   domain
-        @param vcpu: vcpu number
-        @param cpumap:  bitmap of usbale cpus
-        """
-        dominfo = self.domain_lookup(id)
+        @param cpumap:  bitmap of usable cpus
+        """
+        dominfo = self.domain_lookup(domid)
         try:
             return xc.domain_pincpu(dominfo.getDomid(), vcpu, cpumap)
         except Exception, ex:
             raise XendError(str(ex))
 
-    def domain_cpu_bvt_set(self, id, mcuadv, warpback, warpvalue, warpl, 
warpu):
+    def domain_cpu_bvt_set(self, domid, mcuadv, warpback, warpvalue, warpl,
+                           warpu):
         """Set BVT (Borrowed Virtual Time) scheduler parameters for a domain.
         """
-        dominfo = self.domain_lookup(id)
+        dominfo = self.domain_lookup(domid)
         try:
             return xc.bvtsched_domain_set(dom=dominfo.getDomid(),
                                           mcuadv=mcuadv,
@@ -440,30 +433,31 @@
         except Exception, ex:
             raise XendError(str(ex))
 
-    def domain_cpu_bvt_get(self, id):
+    def domain_cpu_bvt_get(self, domid):
         """Get BVT (Borrowed Virtual Time) scheduler parameters for a domain.
         """
-        dominfo = self.domain_lookup(id)
+        dominfo = self.domain_lookup(domid)
         try:
             return xc.bvtsched_domain_get(dominfo.getDomid())
         except Exception, ex:
             raise XendError(str(ex))
     
     
-    def domain_cpu_sedf_set(self, id, period, slice, latency, extratime, 
weight):
+    def domain_cpu_sedf_set(self, domid, period, slice_, latency, extratime,
+                            weight):
         """Set Simple EDF scheduler parameters for a domain.
         """
-        dominfo = self.domain_lookup(id)
-        try:
-            return xc.sedf_domain_set(dominfo.getDomid(), period, slice,
+        dominfo = self.domain_lookup(domid)
+        try:
+            return xc.sedf_domain_set(dominfo.getDomid(), period, slice_,
                                       latency, extratime, weight)
         except Exception, ex:
             raise XendError(str(ex))
 
-    def domain_cpu_sedf_get(self, id):
+    def domain_cpu_sedf_get(self, domid):
         """Get Simple EDF scheduler parameters for a domain.
         """
-        dominfo = self.domain_lookup(id)
+        dominfo = self.domain_lookup(domid)
         try:
             return xc.sedf_domain_get(dominfo.getDomid())
         except Exception, ex:
@@ -508,35 +502,30 @@
                              devtype)
 
 
-    def domain_vif_limit_set(self, id, vif, credit, period):
+    def domain_vif_limit_set(self, domid, vif, credit, period):
         """Limit the vif's transmission rate
         """
-        dominfo = self.domain_lookup(id)
+        dominfo = self.domain_lookup(domid)
         dev = dominfo.getDevice('vif', vif)
         if not dev:
             raise XendError("invalid vif")
         return dev.setCreditLimit(credit, period)
         
-    def domain_shadow_control(self, id, op):
-        """Shadow page control.
-
-        @param id: domain
-        @param op:  operation
-        """
-        dominfo = self.domain_lookup(id)
+    def domain_shadow_control(self, domid, op):
+        """Shadow page control."""
+        dominfo = self.domain_lookup(domid)
         try:
             return xc.shadow_control(dominfo.getDomid(), op)
         except Exception, ex:
             raise XendError(str(ex))
 
-    def domain_maxmem_set(self, id, mem):
+    def domain_maxmem_set(self, domid, mem):
         """Set the memory limit for a domain.
 
-        @param id: domain
         @param mem: memory limit (in MiB)
         @return: 0 on success, -1 on error
         """
-        dominfo = self.domain_lookup(id)
+        dominfo = self.domain_lookup(domid)
         maxmem = int(mem) * 1024
         try:
             return xc.domain_setmaxmem(dominfo.getDomid(),

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] Explicitly close files on save and restore. Rename all local variables named id or slice so as not to clash with the builtins., Xen patchbot -unstable <=