All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] [xend] Host.get_resident_VMs RPC
@ 2006-12-11 20:08 Jim Fehlig
  2006-12-13 14:44 ` Ewan Mellor
  0 siblings, 1 reply; 2+ messages in thread
From: Jim Fehlig @ 2006-12-11 20:08 UTC (permalink / raw)
  To: Xen-devel

[-- Attachment #1: Type: text/plain, Size: 675 bytes --]

I've noticed that Host.get_resident_VMs RPC returns duplicate references 
to running VMs.  Is this the intent or a bug :-)?  In XendDomain.py we have

    def get_domain_refs(self):
        result = []
        try:
            self.domains_lock.acquire()
            result = [d.get_uuid() for d in self.domains.values()]
            result += self.managed_domains.keys()
            return result
        finally:
            self.domains_lock.release()

and as you can see a running domain would be included twice in the 
resulting list.  If this is a bug, patch attached.  If intentional, 
please let me know so I can handle it appropriately in client code.

Regards,
Jim

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: libxen-residentVMs.patch --]
[-- Type: text/x-patch; name="libxen-residentVMs.patch", Size: 1005 bytes --]

# HG changeset patch
# User jfehlig@jfehlig2.provo.novell.com
# Date 1165867640 25200
# Node ID 687e576ee99eb68d10324d0013bfd9acc372468c
# Parent  37141c3a3d39956ad5faf2d4e2a91276eaca557b
When enumerating VMs resident on a host (Host.get_resident_VMs RPC), ensure VMs with same UUID only appear once in the list.

Signed-off-by: Jim Fehlig <jfehlig@novell.com>

diff -r 37141c3a3d39 -r 687e576ee99e tools/python/xen/xend/XendDomain.py
--- a/tools/python/xen/xend/XendDomain.py	Mon Dec 11 15:06:53 2006 +0000
+++ b/tools/python/xen/xend/XendDomain.py	Mon Dec 11 13:07:20 2006 -0700
@@ -591,7 +591,9 @@ class XendDomain:
         try:
             self.domains_lock.acquire()
             result = [d.get_uuid() for d in self.domains.values()]
-            result += self.managed_domains.keys()
+            for d in self.managed_domains.keys():
+                if d not in result:
+                    result.append(d)
             return result
         finally:
             self.domains_lock.release()

[-- Attachment #3: Type: text/plain, Size: 138 bytes --]

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

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-12-13 14:44 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-12-11 20:08 [PATCH] [xend] Host.get_resident_VMs RPC Jim Fehlig
2006-12-13 14:44 ` Ewan Mellor

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.