[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH 3/5] net: use virDomainNICModelType{From|To}String functions

On 01/14/2013 10:15 PM, John Ferlan wrote:
On 01/13/2013 10:34 AM, Guannan Ren wrote:
      if (def->model) {
          virBufferEscapeString(buf, "<model type='%s'/>\n",
-                              def->model);
-        if (STREQ(def->model, "virtio") &&
+                              virDomainNICModelTypeToString(def->model));
+        if ((def->model == VIR_DOMAIN_NIC_MODEL_VIRTIO) &&
              (def->driver.virtio.name || def->driver.virtio.txmode)) {
              virBufferAddLit(buf, "<driver");
              if (def->driver.virtio.name) {
Since model can be "VIR_DOMAIN_NIC_MODEL_DEFAULT" (zero), is this what
you really want?

      if (def->model)
           virBufferEscapeString(buf, "<model type='%s'/>\n",

if def->model is VIR_DOMAIN_NIC_MODEL_DEFAULT(0), virDomainNICModelTypeToString
      will not be executed.

For input XML VIR_DOMAIN_NIC_MODEL_DEFAULT means no particular model is specified. in hypervisors code, if often to set it to a default value, for qemu , it is "rtl8139". For output XML almost, if def->mode is still VIR_DOMAIN_NIC_MODEL_DEFAULT, it will skip printing the model attribute. But there is slightly different between each of hypervisors.

diff --git a/src/vmx/vmx.c b/src/vmx/vmx.c
index c604bd2..0409b0b 100644
--- a/src/vmx/vmx.c
+++ b/src/vmx/vmx.c
@@ -2597,10 +2597,10 @@ virVMXParseEthernet(virConfPtr conf, int controller, virDomainNetDefPtr *def)
      /* Setup virDomainNetDef */
      if (connectionType == NULL || STRCASEEQ(connectionType, "bridged")) {
          (*def)->type = VIR_DOMAIN_NET_TYPE_BRIDGE;
-        (*def)->model = virtualDev;
+        (*def)->model = virDomainNICModelTypeFromString(virtualDev);
What if virDomainNICModelTypeFromString() < 0

virtualDev is guarantee to be a valid NIC model string in the codes above, so
    there is no possibility for it to return -1.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]