[Libvirt-cim] [PATCH 2 of 3] Add new attribute to hold the name of the net target device

Sharad Mishra snmishra at us.ibm.com
Sun Jan 31 20:19:10 UTC 2010



+1

Sharad Mishra
System x Enablement
Linux Technology Center
IBM


                                                                           
             Kaitlin Rupert                                                
             <kaitlin at linux.vn                                             
             et.ibm.com>                                                To 
             Sent by:                  libvirt-cim at redhat.com              
             libvirt-cim-bounc                                          cc 
             es at redhat.com                                                 
                                                                   Subject 
                                       [Libvirt-cim] [PATCH 2 of 3] Add    
             01/28/2010 03:58          new attribute to hold the name of   
             PM                        the net target       device         
                                                                           
                                                                           
             Please respond to                                             
                 List for                                                  
              discussion and                                               
              development of                                               
                libvirt CIM                                                
             <libvirt-cim at redh                                             
                  at.com>                                                  
                                                                           
                                                                           




# HG changeset patch
# User Kaitlin Rupert <karupert at us.ibm.com>
# Date 1264722331 28800
# Node ID 0273f86ebd7b6e54ec606d0a2a9aa54ce40246f1
# Parent  9532502f5d5e76efa998c4b6c9339cf47f91b914
Add new attribute to hold the name of the net target device

VirtualDevice is used, as this is the same attribute used to hold the
target
device of a disk device.  This patch also adds support for representing the
target device in the device's RASD.

Signed-off-by: Kaitlin Rupert <karupert at us.ibm.com>

diff -r 9532502f5d5e -r 0273f86ebd7b
schema/ResourceAllocationSettingData.mof
--- a/schema/ResourceAllocationSettingData.mof         Thu Jan 28 15:45:31
2010 -0800
+++ b/schema/ResourceAllocationSettingData.mof         Thu Jan 28 15:45:31
2010 -0800
@@ -60,6 +60,8 @@
       [Description ("Bridge name")]
       string NetworkName;

+      [Description ("Target device as seen by the guest")]
+      string VirtualDevice;
 };

 [Description ("KVM virtual network configuration"),
@@ -74,6 +76,8 @@
       [Description ("Bridge name")]
       string NetworkName;

+      [Description ("Target device as seen by the guest")]
+      string VirtualDevice;
 };

 [Description ("LXC virtual network configuration"),
@@ -81,6 +85,8 @@
 ]
 class LXC_NetResourceAllocationSettingData :
LXC_ResourceAllocationSettingData
 {
+      [Description ("Target device as seen by the guest")]
+      string VirtualDevice;
 };

 [Description ("Xen virtual processor"),
diff -r 9532502f5d5e -r 0273f86ebd7b src/Virt_RASD.c
--- a/src/Virt_RASD.c          Thu Jan 28 15:45:31 2010 -0800
+++ b/src/Virt_RASD.c          Thu Jan 28 15:45:31 2010 -0800
@@ -278,6 +278,45 @@
         return s;
 }

+static CMPIStatus set_net_rasd_params(const CMPIBroker *broker,
+                                       const CMPIObjectPath *ref,
+                                       const struct virt_device *dev,
+                                       CMPIInstance *inst)
+{
+        CMPIStatus s = {CMPI_RC_OK, NULL};
+
+        CMSetProperty(inst,
+                      "NetworkType",
+                      (CMPIValue *)dev->dev.net.type,
+                      CMPI_chars);
+
+        CMSetProperty(inst,
+                      "Address",
+                      (CMPIValue *)dev->dev.net.mac,
+                      CMPI_chars);
+
+        if ((dev->dev.net.source != NULL) &&
+            (STREQ(dev->dev.net.type, "bridge")))
+                CMSetProperty(inst,
+                              "NetworkName",
+                              (CMPIValue *)dev->dev.net.source,
+                              CMPI_chars);
+
+        if (dev->dev.net.device != NULL)
+                CMSetProperty(inst,
+                              "VirtualDevice",
+                              (CMPIValue *)dev->dev.net.device,
+                              CMPI_chars);
+
+        if (dev->dev.net.model != NULL)
+                CMSetProperty(inst,
+                              "ResourceSubType",
+                              (CMPIValue *)dev->dev.net.model,
+                              CMPI_chars);
+
+        return s;
+}
+
 static CMPIStatus set_graphics_rasd_params(const struct virt_device *dev,
                                            CMPIInstance *inst,
                                            const char *name,
@@ -429,27 +468,7 @@
         if (dev->type == CIM_RES_TYPE_DISK) {
                 s = set_disk_rasd_params(broker, ref, dev, inst);
         } else if (dev->type == CIM_RES_TYPE_NET) {
-                CMSetProperty(inst,
-                              "NetworkType",
-                              (CMPIValue *)dev->dev.net.type,
-                              CMPI_chars);
-                CMSetProperty(inst,
-                              "Address",
-                              (CMPIValue *)dev->dev.net.mac,
-                              CMPI_chars);
-
-                if ((dev->dev.net.source != NULL)
-                   && (STREQ(dev->dev.net.type, "bridge")))
-                        CMSetProperty(inst,
-                                      "NetworkName",
-                                      (CMPIValue *)dev->dev.net.source,
-                                      CMPI_chars);
-
-                if (dev->dev.net.model != NULL)
-                        CMSetProperty(inst,
-                                      "ResourceSubType",
-                                      (CMPIValue *)dev->dev.net.model,
-                                      CMPI_chars);
+                s = set_net_rasd_params(broker, ref, dev, inst);
         } else if (dev->type == CIM_RES_TYPE_MEM) {
                 const char *units = "KiloBytes";


_______________________________________________
Libvirt-cim mailing list
Libvirt-cim at redhat.com
https://www.redhat.com/mailman/listinfo/libvirt-cim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/libvirt-cim/attachments/20100131/d222e5f8/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: graycol.gif
Type: image/gif
Size: 105 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvirt-cim/attachments/20100131/d222e5f8/attachment.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pic14249.gif
Type: image/gif
Size: 1255 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvirt-cim/attachments/20100131/d222e5f8/attachment-0001.gif>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ecblank.gif
Type: image/gif
Size: 45 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvirt-cim/attachments/20100131/d222e5f8/attachment-0002.gif>


More information about the Libvirt-cim mailing list