rpms/xen/devel xen-network-unmanaged.patch, NONE, 1.1.2.1 xen.spec, 1.194.2.9, 1.194.2.10

Daniel P. Berrange (berrange) fedora-extras-commits at redhat.com
Fri Dec 14 22:31:50 UTC 2007


Author: berrange

Update of /cvs/pkgs/rpms/xen/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv7245

Modified Files:
      Tag: private-berrange-xen-unstable
	xen.spec 
Added Files:
      Tag: private-berrange-xen-unstable
	xen-network-unmanaged.patch 
Log Message:
Added patch to stop XenD messing with external bridges

xen-network-unmanaged.patch:

--- NEW FILE xen-network-unmanaged.patch ---
diff -rup xen-unstable-16606.orig/tools/python/xen/xend/XendNetwork.py xen-unstable-16606.new/tools/python/xen/xend/XendNetwork.py
--- xen-unstable-16606.orig/tools/python/xen/xend/XendNetwork.py	2007-12-13 04:31:03.000000000 -0500
+++ xen-unstable-16606.new/tools/python/xen/xend/XendNetwork.py	2007-12-14 13:51:08.000000000 -0500
@@ -52,7 +52,8 @@ class XendNetwork(XendBase):
 
     def getAttrRO(self):
         attrRO =  ['VIFs',
-                   'PIFs']
+                   'PIFs',
+                   'managed']
         return XendBase.getAttrRO() + attrRO
 
     def getAttrInst(self):
@@ -88,7 +89,8 @@ class XendNetwork(XendBase):
                 'name_description': '',
                 'other_config':     {},
                 'default_gateway':  '',
-                'default_netmask':  ''
+                'default_netmask':  '',
+                'managed':          False,
             }
         network = XendNetwork(record, uuid)
 
@@ -106,7 +108,10 @@ class XendNetwork(XendBase):
 
         # Create network if it doesn't already exist
         if not bridge_exists(network.name_label):
-            Brctl.bridge_create(network.name_label)
+            if network.managed:
+                Brctl.bridge_create(network.name_label)
+            else:
+                log.info("Not recreating missing unmanaged network %s" % network.name_label)
 
         return uuid
 
@@ -143,7 +148,13 @@ class XendNetwork(XendBase):
     create            = classmethod(create)
     get_by_name_label = classmethod(get_by_name_label)
         
-    def __init__(self, record, uuid):       
+    def __init__(self, record, uuid):
+        # This is a read-only attr, so we need to
+        # set it here, as super class won't try to
+        if record.has_key("managed"):
+            self.managed = record["managed"]
+        else:
+            self.managed = True
         XendBase.__init__(self, uuid, record)
         
     #
@@ -177,6 +188,9 @@ class XendNetwork(XendBase):
         self.name_description = new_desc
         XendNode.instance().save_networks()
 
+    def get_managed(self):
+        return self.managed
+
     def get_VIFs(self):
         result = []
         vms = XendDomain.instance().get_all_vms()


Index: xen.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xen/devel/xen.spec,v
retrieving revision 1.194.2.9
retrieving revision 1.194.2.10
diff -u -r1.194.2.9 -r1.194.2.10
--- xen.spec	14 Dec 2007 17:40:49 -0000	1.194.2.9
+++ xen.spec	14 Dec 2007 22:31:12 -0000	1.194.2.10
@@ -14,7 +14,7 @@
 
 # The version that the dev tree will become when released
 %define base_version 3.2.0
-%define base_release 1
+%define base_release 2
 
 # The changeset synced to
 %define changeset 16606
@@ -63,6 +63,7 @@
 Source4: %{name}.logrotate
 Patch1: xen-initscript.patch
 Patch3: xen-compile-fixes.patch
+Patch4: xen-network-unmanaged.patch
 Patch13: xen-dumpdir.patch
 
 Patch36: xen-qemu-bootmenu.patch
@@ -148,6 +149,7 @@
 %setup -q -n %{directory_tag}
 %patch1 -p1 -b .init
 %patch3 -p1 -b .compile
+#patch4 -p1
 %patch13 -p1
 
 %patch36 -p1




More information about the fedora-extras-commits mailing list